1. Trang chủ
  2. » Giáo án - Bài giảng

giáo án bồi dưỡng học sinh giỏi môn tin học

28 7,5K 24

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 28
Dung lượng 395 KB

Nội dung

đây là tài liệu rất hưu ích cho các thầy cô đây là tài liệu rất hưu ích cho các thầy cô đây là tài liệu rất hưu ích cho các thầy cô đây là tài liệu rất hưu ích cho các thầy cô đây là tài liệu rất hưu ích cho các thầy cô đây là tài liệu rất hưu ích cho các thầy cô đây là tài liệu rất hưu ích cho các thầy cô

Trang 1

– Hiểu cách biểu diễn thuật toán bằng sơ đồ khối và bằng liệt kê các bước.

– Hiểu một số thuật toán thông dụng

Giáo viên – Giáo án + bảng vẽ các sơ đồ khối

Học sinh: - Nghiên cứu các bài đã học ở lớp 10 (Bài 4)

III TIẾN TRÌNH BÀI DẠY:

1 Ổn định tổ chức: Kiểm tra sĩ số.

2 Giảng bài mới:

Hoạt động 1: Nhắc lại khái niệm về bài toán và cách xác định bài toán

I Khái niệm bài toán:

 Trong tin học, bài toán là một

việc mà ta muốn máy tính thực

hiện

 Các yếu tố xác định một bài

toán:

+ Input (thông tin đưa vào

máy): dữ liệu vào

+ Output (thông tin muốn lấy

 GV nhận xét bài làm của họcsinh

 HS thảo luận, trả lời yêu cầucủa giáo viên

 HS xác định và thực hiện các yêu cầu

Hoạt động 2: Nhắc lại khái niệm thuật toán và cách diễn tả thuật toán II.Thuật toán và cách diễn tả

thuật toán

1 Khái niệm thuật toán

Thuật toán để giải một bài toán

là một dãy hữu hạn các thao tác

được sắp xếp theo một trình tự

xác định sao cho sau khi thực

hiện dãy thao tác ấy, từ Input

của bài toán, ta nhận được

GV Yêu cầu học sinh trình lại

về cách liệt kê và sơ đồ khối

 Học sinh suy nghĩ và trả lời

 Có hai cách: cách liệt kê vàcách sơ đồ khối

Hs Suy nghĩ và trả lời

1

Trang 2

Hoạt động 3: Nhắc lại một số thuật toán thông dụng đã học và xây dựng một số thuật toán mới

3 Một số ví dụ áp dụng

Hãy xây dựng thuật toán giải bài

toán sau bằng cách liệt kê hoặc sơ

B3: Nếu D> 0 thì thông báo

phương trình có hai nghiệm phân

biệt x1, x2 rồi kết thúc

B4: Nếu D<0 thì thông báo

phương trình có nghiệm kép

x1=x2=-b/2a rồi kết thúc

B5 Nếu D<0 thì thông báo

phương trình vô nghiệm rồi kết

thúc

Ví dụ 2 Tìm giá trị lớn nhất

Max của dãy số

 Thuật toán: (Liệt kê)

B5: i  i+1, quay lại B3

- Tìm giá trị nhỏ nhất Min của

dãy số

Ví dụ 3 Cho N và dãy số a1, a2,

…, aN Cho biết có bao nhiêu số

hạng trong dãy có giá trị bằng 0

 Thuật toán: (Liệt kê)

 GV yêu cầu học sinh xây dựnglại thuật toán bằng hai cách giảibài toán

 GV đánh giá, nhận xét

 GV: Yêu cầu học sinh mở rộng

áp dụng với bài toán giải phươngtrình bậc nhất tổng quát

 GV yêu cầu học sinh nêu ýtưởng và xây dựng lại thuật toánbằng hai cách giải bài toán

GV Nhận xét và giải đáp cách liệt kê

 GV mô phỏng các bước thực hiện thuật toán trên với

 Học sinh xây dựng cách liệt kê

i>N Max  a1, i  2

i  i + 1

Đưa ra Max rồi kết thúc Đ

S

Đ

a i > Max Max  a i

S

 Học sinh lắng nghe, ghi bài

 Học sinh lắng nghe và đưa ranhận xét

- Thuật toán sẽ so sánh ai vớichính nó (nghĩa là có thêm mộtbước so sánh sẽ thừa ra)

- Thay biến Max bằng biến Min

và B4 Nếu ai < Min thì Min ai

 Học sinh xây dựng một tronghai cách: cách liệt kê và cách sơ

đồ khối

Trang 3

- Với bài toán kiểm tra trong dãy

số có bao nhiêu số âm, bao nhiêu

số dương thì thuật toán có thay đổi như thế nào

- Hãy dựa trên thuật toán và mở rộng với các bài toán: tính tổng các số âm, tổng các số dương

- GV gợi ý và yêu cầu học sinh xây dựng ý tưởng, thuật toán

- HS suy nghi và trả lời

- B5: Nếu ai = 0 thì Dem  Dem+ 1

Có thể được thay đổi lại như sau:

 Học sinh suy nghĩ và trả lời

 Có hai cách: cách liệt kê vàcách sơ đồ khối3 tính chất cơbản

4 Củng cố kiến thức:

- Khái niệm bài toán, thuật toán

- Cách diễn tả thuật toán: liệt kê, sơ đò khối

5 Bài tập về nhà

Hãy xây dựng thuật toán giải bài toán sau bằng cách liệt kê hoặc sơ đồ khối.

Bài 1 Tìm UCLN của hai số nguyên dương M và N

Bài 2 Kiểm tra số nguyên X có trong dãy số hay không? Nếu có thi thông báo chỉ số?

Bài 3 Kiểm tra tính nguyên tố của một số nguyên dương?

Gợi ý: Xem lại thuật toán SGK tin học 10

Bài 4 Kiểm tra số nguyễn N có phải là số hoàn hảo hay không?

Gợi ý: só hoàn hảo là số mà có tổng các ước bằng chính nó

VD: số 6 có các ước lần lượt là: 1, 2, 3 và 1+2+3=6

3

Trang 4

– Hiểu cách biểu diễn thuật toán bằng sơ đồ khối và bằng liệt kê các bước.

– Nắm vứng một số thuật toán thông dụng

Giáo viên – Giáo án + tài liệu tham khảo cho học sinh

Học sinh: - Nghiên cứu các bài đã học ở tiết trước và chuẩn bị chu đáo các bài tập về nhà

III TIẾN TRÌNH BÀI DẠY:

1 Ổn định tổ chức: Kiểm tra sĩ số.

2 Kiểm tra bài cũ: Kiểm tra vở bài tập và yêu cầu học sinh viết lại thuật toán giải bài toán

kiểm tra tính nguyên tố của một số nguyên dương

3 Giảng bài mới:

Hoạt động 1: Tìm hiểu thuật toán sắp xếp bằng tráo đổi (Bubble Sort)

 Thuật toán sắp xếp bằng tráo

đổi (Exchange Sort)

 Ý tưởng: Với mỗi cặp số hạng

đứng liền kề trong dãy, nếu số

trước lớn hơn số sau thì ta đổi

chỗ chúng cho nhau Việc đó

được lặp lại, cho đến khi không

có sự đổi chỗ nào xảy ra nữa

- B7: Nếu ai > ai+1 thì tráo đổi ai

và ai+1 cho nhau;

- B8: Quay lại bước 5.

Cho một dãy số nguyên A:

6, 1, 5, 3, 7, 8, 10, 7, 12,

4 Hãy sắp xếp dãy A trở thànhdãy không giảm

 GV hướng dẫn HS tìm thuậttoán giải bài toán

- Tiến hành vẽ sơ đồ khối và lấy

S

Đ S Đ S

Trang 5

Hoạt động 2: Tìm hiểu một số thuật toán sắp xếp

II Khái niệm:

1) Sắp xếp là một quá trình tổ chức lại một dãy

các dữ liệu theo một trật tự nhất định

2) Mục đích của việc sắp xếp là nhằm giúp cho

việc tìm kiếm dữ liệu một cách dễ dàng và nhanh

Toàn bộ cơ sở dữ liệu cần sắp xếp phải được đưa

vào bộ nhớ chính của máy tính Do đó nó thường

được sử dụng khi khối lượng dữ liệu không vượt

quá dung lượng bộ nhớ chính

a) Phương pháp đếm (Counting sort)

* Giải thích:

Nội dung của phương pháp này là đếm các phần

tử có khoá nhỏ hơn hay bằng khoá của các phần tử

A[i] Nếu có j phần tử có khoá nhỏ hơn khoá của

phần tử A[i] thì phần tử A[i] sẽ có vị trí theo thứ

tự (j+1) trong dãy đã có thứ tự

Trong giải thuật, ta dùng mảng Count[i] ( i = 1,

2, n ) với Count[i] cho biết số phần tử có khoá

nhỏ hơn khoá của phần tử A[i] Như vậy

Count[i+1] là vị trí của phần tử A[i] trong dãy đã

có thứ tự

b) Phương pháp chèn (Insertion Sort)

* Giải thích: Nội dung của phương pháp này là

giả sử ta có dãy A[1] A[i-1] đã có thứ tự, có phải

xác định vị trí thích hợp của phần tử A[i] trong

dãy A[1] A[i - 1] bằng phương pháp tìm kiếm

tuần tự từ A[i - 1] trở về A[1] để tìm ra vị trí thích

hợp của A[i] Ta chèn A[i] vào vị trí này và kết

quả là đãy A[1] A[i] có thứ tự Ta áp dụng cách

làm này với i = 2, 3, , n

c) Phương pháp chọn (Selection Sort)

* Giải thích:Nội dung của phương pháp này là ở

bước thứ i (i = 1, 2, 3, ,n-1 ) ta lựa chọn phần tử

nhỏ nhất trong dãy A[i] A[n] rồi đổi chổ phần tử

này với phần tử A[i] Cuối cùng ta sẽ có dãy

A[1] A[n] có thứ tự

d) Phương pháp đổi chỗ:

Có rất nhiều phương pháp sắp xếp dựa trên việc

Nhóm sắp xếp trong bao gồm các phương pháp :

* Ví dụ:

Ta phải sắp xếp dãy số:

39 50 7 37 89 13 1 62 i=2 39 50 7 37 89 13 1 62 i=3 39 50 7 37 89 13 1 62 i=4 7 39 50 37 89 13 1 62 i=5 7 37 39 50 89 13 1 62 i=6 7 37 39 50 89 13 1 62 i=7 7 13 37 39 50 89 1 62 i=8 1 7 13 37 39 50 89 62

1 7 13 37 39 50 89 62

* Ví dụ:

Ta phải sắp xếp dãy số :

39 50 7 37 89 13 1 62 i=1 39 50 7 37 89 13 1 62 i=2 1 50 7 37 89 13 39 62 i=3 1 7 50 37 89 13 39 62 i=4 1 7 13 37 89 50 39 62 i=5 1 7 13 37 89 50 39 62 i=6 1 7 13 37 50 50 39 62 i=7 1 7 13 37 39 50 89 62

1 7 13 37 39 50 89 62

5

Trang 6

đổi chỗ giữa 2 phần tử của dãy Sau đây chúng ta

* Giải thích: Nội dung của phương pháp này là

duyệt các dãy A[1], ., A[n] Nếu A[i].Key >

A[i+1].Key (i = 1, 2, 3, , n-1)#0 thì ta đổi chỗ

A[i].Key với phần tử A[i+1].Key Lập lại quá

trình duyệt dãy này cho đến khi không còn việc

đổi chổ của hai phần tử

Chú ý rằng bất cứ lúc nào phần tử nhỏ nhất cũng

gặp trước tiên Nó như những bột khí nhẹ sẽ nổi

lên trên khi đun nước Sau đó ở thứ hai phần tử

nhỏ thứ 2 sẽ được đặ vào đúng một vị trí Vì vậy

sắp xếp nổi bột thao tác như một kiểu sắp xếp

chọn, mặc dù nó không làm nhiều việc hơn để đưa

từng phần tử vào đúng vị trí

+ Shake Sort:

* Giải thích:

Phương pháp này là một cải tiến của phương

pháp Bubble Sort theo hướng "Không những phần

tử nhẹ nổi lên trên mà cả phần tử nặng cũng xuống

dưới" giống như khi ta rung"rung" một cái nồi và

thuật toán sắp xếp phải được điều khiển cả hai quá

trình "nổi lên" và "chìm xuống" này một cách tự

giác Muốn vậy ta phải ghi nhớ lần đổi chổ cuối

cùng khi duyệt dãy từ trên lên và khi duyệt từ trên

xuoóng để quyết định chu trình kế tiếp sẽ duyệt từ

đâu đến đâu

+ Shell Sort:

* Giải thích: Các phương pháp sắp xếp dã trình

bày ở trên nói chung đều di chuyển mỗi phần tử đi

một vị trí trong mỗi bước Phương pháp Shell Sort

dựa trên ý tưởng chính là hoán các phần tử ở xa

nhau Để làm được việc đó ta cần phải sắp các tập

tin để nó có tính chất là việc lấy mọi phần tử thứ h

(bắt đầu từ vị trí bất kì nào) cũng đều cho ra tập

tin đã sắp Một tập tin như vậy được gọi là sắp

theo độ dài bước h Một cách nói khác, một tập tin

dược sắp theo độ dài bước h là tập tin được sắp

độc lập với nhau, đan xen vào nhau Bằng cách

sắp xếp theo độ dài bước h ứng với vài giá trị h

khá lớn, chúng ta có thể di chuyển các phần tử ở

những khoảng cách xa nhau trong mảng và vì vậy

dễ dàng hơn để sắp xếp độ dài bước h các giá tri

nhỏ hơn Dùng thủ tục cho bất kì một dãy các giá

trị của h tận cùng là 1 sẽ cho ra một tập tin đã sắp

xong: Dó chính là Shell Sort

+ Quick Sort:

* Ví dụ:

Ta phải sắp xếp dãy số:

39 50 7 37 89 13 1 62 Bước 0 1 2 3 4 5 6 7

39 50 7 39 89 13 1 62

39 13 1 37 89 50 7 62 Bước 2: 2-Sort

39 13 1 37 89 50 7 62

1 13 7 37 39 50 89 62 Bước 3: 1-Sort

1 13 7 37 39 50 89 62

1 7 13 37 39 50 89 62

Trang 7

* Giải thích: Nội dung của phương pháp này là

chọn phần tử x ở giữa của dãy làm chuẩn để so

sánh Ta phân hoạch dãy này thành 3 dãy con liên

Sau đó áp dụng giải thuật phân hoạch này cho

dãy con thứ nhất nhất và dãy con thứ ba, nếu các

dãy con có nhiều hơn một phần tử (Đệ qui)

Cụ thể là xét một doạn của dãy từ thành phần L

đến thành phần thứ R

- Lấy giá trị của thành phần thứ (L+R) Div 2 gán

vào biến X

- Cho i ban đầu là L

- Cho j ban đầu là R

- Lập lại

* Chừng nào còn A[i] < X thì tăng i

* Chừng nào còn A[j] > X thì giảm j

* i<=j thì

+ Hoán vị A[i] và A[j]

+ Tăng i

+ Giảm j

Cho đến khi i>j

+ Sắp xếp đoạn từ A[L] đến A[j]

+ Sắp xếp đoạn từ A[i] đến A[R]

* Ví dụ:

Sắp xếp dãy số:

39 50 7 37 89 13 1 62

X = 37 Sau 2 lần đổi chổ ta được dãy:

thông báo không có số hạng nào

của dãy A có giá trị bằng k

- B5: Nếu aGiưa > k thì đặt Cuoi =

Giưa - 1, rồi chuyển đến bước 7;

- B6: Dau  Giưa +1;

- B7: Nếu Dau > cuoi thì thông

báo dãy A không có số hạng nào

có giá trị bằng k, kết thúc;

 Nhấn mạnh dãy A là một dãytăng

Hỏi: Hãy so sánh bài toán tìm

kiếm tuần tự với bài toán tìmkiếm nhị phân

 GV hướng dẫn HS tìm thuậttoán giải bài toán

 Ý tưởng: Sử dụng tính chất dãy

A là dãy tăng, ta tìm cách thuhẹp nhanh phạm vị tìm kiếm saumỗi lần so sánh khoá với sốhạng được chọn, ta chọn số hạng

aGiữa ở " giữa dãy" để so sánh với

k, trong đó Giưa = N 21

  Khiđó:

- Nếu aGiưa = k thì Giưa là chỉ sốcần tìm

- Nếu aGiưa> k thì do dãy A là

- Tìm hiểu bài toán

- Học sinh xác định bài toán

Đ Dãy A ở đây là dãy tăng

HS Lắng nghe, suy nghĩ và xâydựng thuật toán

- Xây dựng sơ đồ khối

- Lấy ví dụ để mô phỏng nhằm nắm vững hơn kiếnthức

7

Trang 8

- B8: Quay lại bước 3. dãy đã sắp xếp nên việc tìm

kiếm tiếp theo chỉ xét trên dãy

a1, a2, …, aGiưa-1

- Nếu aGiưa < k thì thực hiện tìmkiếm trên dãy aGiưa+1, aGiưa+2, …,

an Quá trình trên sẽ được lặp lạimột số lần cho đến khi hoặc đãtìm thấy khoá k trong dãy Ahoặc phạm vi tìm kiếm bằngrỗng

- GV: Nhấn mạnh thuật toán nàychi áp dụng với những bài toán

đã được sắp xếp tăng hoặc giảm

4 Củng cố kiến thức:

- Thuật toán sắp xếp, tìm kiếm

- Cách diễn tả thuật toán: liệt kê, sơ đồ khối

5 Bài tập về nhà

Hãy xây dựng thuật toán giải bài toán sau bằng cách liệt kê hoặc sơ đồ khối.

Bài 1 Sắp xếp dãy số nguyên a1, a2, …, aN thành một dãy giảm (sử dụng cac phương phám đã học)Bài 2 Dãy A gồm N số nguyên khác nhau a1, a2, …, aN và một số nguyên k Kiểm tra xem trong dãy

có giá trị nào bằng k hay không?

Bài 3 Dãy A gồm N số nguyên a1, a2, …, aN Kiểm tra xem trong dãy A có bao nhiêu số nguyên tố?

Trang 9

–Khái niệm về ngôn ngữ lập trình & chương trình máy tính

–Các bước xây dựng chương trình

–Tìm hiểu một số khái niệm cơ bản về ngôn ngữ lập trình Pascal.

–Áp dụng kiễn thức để giải một số bài toán đơn giản.

Giáo viên – Giáo án + tài liệu tham khảo cho học sinh

Học sinh: –Nghiên cứu các bài đã học ở tiết trước và chuẩn bị chu đáo các bài tập về nhà

III TIẾN TRÌNH BÀI DẠY:

1 Ổn định tổ chức: Kiểm tra sĩ số.

2 Kiểm tra bài cũ: Kiểm tra vở bài tập và yêu cầu học sinh viết lại thuật toán giải bài toán

kiểm tra tính nguyên tố của một số nguyên dương

3 Giảng bài mới:

Hoạt động 1: Tìm hiêu khái niệm lập trình và ngôn ngữ lập trình

I Ngôn ngữ lập trình

1 Lập trình là gì ?

Lập trình là các thao tác đưa ý nghĩ của

con người theo một trình tự có hệ thống vào máy

tính, yêu cầu máy tính thực hiện

2 Ngôn ngữ lập trình

Là các phần mềm mà nhờ đó các kỹ thuật

viên mô phỏng lại các thao tác trên ngôn ngữ đó

thông qua các qui tắc qui ước mà ngôn ngữ đề ra

Ngôn ngữ lập trình có chức năng chuyển toàn bộ

chương trình sang mã máy để máy tính có thể thực

hiện và đưa ra kết quả

3 Các bước xây dựng chương trình

Bước 1 Xác định vấn đề - bài toán

Bước 2 Lựa chọn phương pháp giải

Bước 3 Xây dựng thuật toán hoặc thuật giải

Bước 4 Cài đặt chương trình

Bước 5 Hiệu chỉnh chương trình

Bước 6 Thực hiện chương trình

GV Trình bày các khái niệm: lập trình và ngôn ngữ lập trình

HS Nhớ lại các khái niệm đã học

GV Lấy một sô ngông ngữ lập trình phổ biến hiệnnay mà em biết

HS: Ngôn ngữ : C, C++, Pascal, Java,

HS Nhắc lại các bước giải bài toán trên máy tính

GV Trình bày đầy đủ các bước xây dựng chương trình để học sinh định hướng khi viết chương trình

HS Lắng nghe, ghi chép

Hoạt động 2: Tìm hiểu ngôn ngữ lập trình Pascal

9

Trang 10

II Các khái niệm cơ bản

2 Từ khoá (Key word)

Từ khoá là các từ dành riêng cho Turbo Pascal,

mỗi từ có một chức năng nhất định Khi sử dụng

phải dùng đúng với cú pháp

3 Tên

Tên là một dãy kí tự được tạo thành từ các chữ

cái, chữ số và dấu gạch nối Tên thường dùng để

đặt tên cho các đại lượng trong chương trình như

tên biến, hằng, tên kiểu dữ liệu mới vv

Kí tự đầu tiên của tên không được là chữ số.Tên

có độ dài tuỳ ý nhưng chỉ có 63 kí tự đầu tiên là có

ý nghĩa, tên không được trùng với tên của từ khoá

* Tên chuẩn: là tên do Turbo Pascal định nghĩa

trước dùng chỉ các hàm, hằng, biến, thủ tục thư

viện của turbo Pascal

* Tên do người lập trình đặt: Đặt tuỳ ý nhưng phải

tuân thủ theo nguyên tắc của Pascal như tên biến,

tên chương trình, tên kiểu dữ liệu mới

4 Dòng chú thích

- Đặt trong cập ngoặc :{}

5 Dấu chấm phẩy

Dấu chấm phẩy “ ; ” thường nằm sau các

câu lệnh nhằm ngăn cách giữa các câu lệnh với

nhau, không nên hiểu dấu “ ; ” dùng để kết thúc

một câu lệnh

6 Các kiểu dữ liệu

a Kiểu logic (Boolean)

- Các phép toán: AND, OR, XOR, NOT

- Miền giá trị: TRUE (đúng), FALSE (sai)

GV Turbo Pascal được xây dựng với bộ kí tự sau

HS Lắng nghe, ghi bài

GV Hãy nêu một số từ khóa mà em biết Một số từ khoá:

Trang 11

- Một giá trị kiểu Char chiếm 1 byte và biểu diễn

được một ký tự thông qua bảng mã ASCII

ví dụ: mã (hay số thứ tự) của A là 65 Có tất cả

256 ký tự đánh số từ 0255 Vậy có 256 giá trị kiểu Char Word 0 đến 65535

Hoạt động3: Tìm hiểu cấu trúc chương trình, khai báo, biểu thức, câu lệnh vào ra dữ liệu của ngữ

lập trình Pascal III cấu trúc chương trình, khai báo, biểu thức,

câu lệnh vào ra dữ liệu của ngữ lập trình Pascal

2 Khai báo tên chương trình

Cú pháp:

PROGRAM Tên_chương_trinh;

3 Khai báo thư viện

Cú pháp: USES tên thư viện;

4 Khai báo hằng

Cú pháp:

CONST tên hằng=giá trị hằng;

5 Khai báo biến

GV Giới thiệu cấu trúc chương trình

HS Lắng nghe, ghi bài

GV Phần khai báo có thể có oặc không, phần thânnhất định phải có

Trang 12

+ Hàm SQR(x): tính bình phương của x: x2 Kiểu

dữ liệu của kết qủa cùng kiểu với đối số

+ Hàm SQRT(x): tính , (x 0) 0)

+ Hàm EXP(x) : tính ex

+ Hàm LN(x): tính lnx, (x > 0)

+ Các hàm SIN(x), COS(x), và ARCTAN(x):

tính sinx, cosx và arctgx

+ Hàm INT(x) : cho số thực bằng phần nguyên

- Ý nghĩa : tính toán biểu thức bên phải, rồi lưu kết

qủa tính được vào tên biến ở vế trái

7 Nhập và xuất dữ liệu

a Nhập dữ liệu

- Read(biến1, biến2, , biếnk);

- Readln(biến1, biến2, , biếnk);

b Xuất dữ liệu

- Write(Danh sách kết quả ra);

- Writeln(Danh sách kết quả ra);

Danh sách kết quả ra: Hằng, biến, biểu thức

Sqr(4.0) = 16.0 Sqr(7 div 3) = 4

Ví dụ : Int(12.55) = 12.0 Int(1+10/3)=4.0

Ví dụ : Trunc(12.55) = 12 Trunc(-2.98) = -2

Ví dụ : Round(12.45) = 12 Round(-2.98) = -3

Ví dụ: X:=X+1; { Tăng X lên một đơn vị}

Ví dụ, để nhập dữ liệu cho hai biến thực x, y và

Ví dụ khi thực hiện lệnh sau :

Writeln(‘ngon ngu pascal’);

kết qủa trên màn hình sẽ hiện hai dòng :

ngon ngu pascal

Hoạt động 4: Tìm hiểu một số ví dụ đơn giản trong ngữ lập trình Pascal

IV Một sô ví dụ

Bài tập 1: Viết chương trình nhập vào độ dài hai cạnh

của tam giác và góc giữa hai cạnh đó, sau đó tính và in

ra màn hình diện tích của tam giác

Program Tinh_dien_tich_tam_giac;

Var a,b,goc,dientich: Real;

Begin

Write('Nhap vao do dai canh thu nhat: '); Readln(a);

Write('Nhap vao do dai canh thu hai: '); Readln(b);

Write('Nhap vao goc giua hai canh: '); Readln(goc);

2

Trang 13

Program Tinh_can_bac_n_cua_x;

Var x,S: Real;

n: Word;

Begin

Write('Nhap vao n= '); Readln(n);

Write('Nhap vao x= '); Readln(x);

S:=EXP(1/n*LN(x));

Writeln('S = ',S:0:2);

Readln;

End

Bài tập 3 Viết chương trình nhập vào 2 số a, b

Sau đó hoán đổi giá trị của 2 số đó:

a/ Cho phép dùng biến trung gian

Program Swap;

Var a,b,tam: Integer;

Begin

Write('Nhap vao a= '); Readln(a);

Write('Nhap vao b= '); Readln(b);

tam:=a; {tam lấy giá trị của a}

a:=b; {a lấy giá trị của b}

b:=tam; {b lấy lại giá trị của tam}

a+b}

b:=a-b; {b lấy giá trị của a}

a:=a-b; {a lấy lại giá trị của b}

Writeln('a = ',a,’ b = ‘,b);

Readln;

End

4 Củng cố kiến thức:

- Các thành phần của ngôn ngữ lập trình Pascal

- Chương trình đơn giản trong Pascal

Trang 14

– Giới thiệu câu lệnh có cấu trúc: rẽ nhánh và lặp

– Ứng dụng các câu lệnh để giải một số bài toán

Giáo viên – Giáo án + tài liệu tham khảo cho học sinh

Học sinh: –Nghiên cứu các bài đã học ở tiết trước và chuẩn bị chu đáo các bài tập về nhà

III TIẾN TRÌNH BÀI DẠY:

1 Ổn định tổ chức: Kiểm tra sĩ số.

2 Kiểm tra bài cũ: Kiểm tra vở bài tập và yêu cầu học sinh viết lại thuật toán giải bài toán

kiểm tra tính nguyên tố của một số nguyên dương

3 Giảng bài mới:

Hoạt động 1: Tìm hiêu cấu trúc rẽ nhánh

II Câu lệnh điều kiện IF THEN

1 Câu lệnh điều kiện có hai dạng như sau:

Câu lệnh điều kiện thiếu:

IF <Điều kiện logic> THEN

<Công việc>;

Câu lệnh điều kiện đủ:

IF <Điều kiện logic> THEN

<Công việc1>

ELSE <Công việc 2>;

2 Hoạt động:

- Dạng thiếu: Khi gặp lệnh này chương trình sẽ đi

kiểm tra điều kiện logic, nếu điều kiện logic là

đúng sẽ đi thực hiện <công việc >, nếu sai sẽ bỏ

qua <công việc > và kết thúc

- Dạng đủ : Khi gặp lệnh này chương trình sẽ đi

kiểm tra điều kiện logic, nếu điều kiện logic là

đúng sẽ đi thực hiện <công việc 1> và bỏ qua

<công việc 2>, nếu sai sẽ đi thực hiện <công việc

2> và bỏ qua <công việc 1> Trong đó <công

việc1>, <công việc 2> có thể là một câu lệnh

ghép

Sơ đồ thuật toán cho câu lệnh điều kiện If then

-Câu lệnh 1

IF

Điều kiện

ĐS

Câu lệnh 2

Câu lệnh

IF

S

Ngày đăng: 18/09/2014, 17:49

HÌNH ẢNH LIÊN QUAN

Sơ đồ hoạt động của câu lệnh For - do - giáo án bồi dưỡng học sinh giỏi môn tin học
Sơ đồ ho ạt động của câu lệnh For - do (Trang 16)

TỪ KHÓA LIÊN QUAN

w