1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Giáo án Tin Học 11Cấu Trúc Lặp (tiết 2)

6 8 0

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

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 6
Dung lượng 143,38 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Hiểu được nhu cầu của cấu trúc lặp trong biểu diễn thuật toán; - Hiểu được cấu trúc lặp với số lần cho trước, cấu trúc lặp kiểm tra điều kiện trước; - Biết cách vận dụng đúng đắn cấu trúc lặp trước vào tình huống cụ thể; - Mô tả được thuật toán của một số bài toán đơn giản có sử dụng lệnh lặp với số lần lặp cho trước; - Viết đúng các lệnh lặp với số lần biết trước; - Viết được thuật toán của bài toán đơn giản sử dụng cấu trúc lặp trên. ...

Trang 1

Giáo án Tin Học 11

Cấu Trúc Lặp (tiết 2)

I MỤC ĐÍCH, YÊU CẦU:

Sau kết thúc bài:

- Hiểu được nhu cầu của cấu trúc lặp trong biểu diễn thuật toán;

- Hiểu được cấu trúc lặp với số lần cho trước, cấu trúc lặp kiểm tra điều kiện trước;

- Biết cách vận dụng đúng đắn cấu trúc lặp trước vào tình huống cụ thể;

- Mô tả được thuật toán của một số bài toán đơn giản có sử dụng lệnh lặp với số lần lặp cho trước;

- Viết đúng các lệnh lặp với số lần biết trước;

- Viết được thuật toán của bài toán đơn giản sử dụng cấu trúc lặp trên

II PHƯƠNG PHÁP, PHƯƠNG TIỆN:

1 Phương pháp:

- Kết hợp kiến thức trongsgk và các kiến thức trong các sách tham khảo và các tư liệu khác (nếu có) Nếu nhà trường có máy chiếu, có thể chuẩn bị các slide để trình chiếu hoặc chạy thử đoạn chương trình để cả lớp cùng theo dõi

-Hình thức giảng dậy: thuyết trình, vấn đáp, phân tích và giải thích (nếu cần)

2 Phương tiện:

- Sách giáo khoa tin học lớp 11;

- Vở ghi lý thuyết và bài tập lớp 11;

- Giáo án

- Sách tham khảo và các trang thiết bị tin học như máy tính, máy chiếu (nếu có)

III Tiến trình lên lớp

1 ổn định lớp: (1 phút)

Yêu cầu lớp trưởng ổn định lớp và báo cáo sĩ số

2 Kiểm tra bài cũ: (3 phút)

Câu hỏi:

Tại sao lại sử dụng cấu trúc lặp ?

Có mấy dạng cấu trúc lặp và nêu trường hợp áp dụng cho mỗi dạng ?

3 Gợi động cơ: (2 phút)

Cấu trúc lặp trước có ý nghĩa rất quan trọng trong lập trình trong ngôn

ngữ lập trình pascal cũng vậy Muốn cho việc viết chương trình thực thi được dễ dàng thì ta phải xây dựng thuật toán Tiết trước chúng ta đã xem xét hai thuật toán của hai dạng lặp với số lần biết trước, tiết này chúng ta dựa trên hai thuật toán đó để xây dựng chương trình sử dụng cú pháp lặp với số lần cho trước

Trang 2

Giáo án Tin Học 11

4 Nội dung bài giảng:

Số

thứ

tự

gian

1 Chương trình xây dựng dựa

trên thuật toán tong_1a:

Program tong_1a;

Uses crt;

Var s: real;

N, a: integer;

Begin

Clrscr;

Write (‘ nhap vao gia tri cua

a’);

Readln(a);

S:=1.0/a; {bước1 }

For N:= 1 to 100 do

S:= S + 1/(a+N);

{ bước 2, 3, 4 }

Write (‘ tong s la:’, s:8:4); {

bước 5 }

Readln

End

Yêu cầu học sinh:

Đọc và tìm hiểu thuật toán trong thời gian giáo viên viết thuật toán lên bảng

Thuyết trình:

Phân tích và giải thích các lệnh trong chương trình:

Chương trình này xây dựng dựa trên thuật toán tong_1a

(dạng lặp tiến của cấu trúc lặp) với số lần biết trước trong đó biến điều khiển là N, N cho biết số lần lặp Khi

1<= N <=100 thì thực hiện lặp, sau lần lặp thứ 100 thì kết thúc lặp

Bước 1 của thuật toán:

S := 1.0/a;

For N:= 1 to 100 do S:= S + 1/(a+N);

Câu lệnh lặp này đã bao gồm cả ba bước 2, 3, 4 của thuật toán Đầu tiên N nhận giá trị là 1, sau đó thực hiện lệnh trong vòng for, cộng vào tổng s một số hạng 1/(a+N)

Sau khi tính toán hoàn tất thì biến đếm được tự động tăng lên giá trị tiếp theo và mỗi lần tăng giá trị biến đếm là một lần thực hiện lệnh trong vòng lặp Còn với s, ban đầu được gán giá trị là 1.0/a Khi vào vòng lặp for thì lần lượt được cộng thêm vào các số hạng

12 phút

Trang 3

Giáo án Tin Học 11

Chương trình này được viết

trong Pascal như sau:

Màn hình kết quả như sau:

dạng 1/(a+N) (N=1, 2, 3 100) và nó sẽ giữ giá trị thay đổi khi ra khỏi vòng for

Write (‘ tong s la:’, s:8:4);

Đây là bước thứ 5 của thuật toán, ta đưa ra màn hình giá trị của s và sau đó kết thúc

chương trình với từ end

Chương trình xây dựng dựa

trên thuật toán tong_1b

Program tong_1b;

Uses crt;

Var s: real;

N, a: integer;

Begin

Clrscr;

Write( ‘ dua vao gia tri a’);

Readln(a);

S:= 1.0/a; { bước 1}

For N:= 100 downto 1 do

{bước 2 và bước 3}

Yêu cầu:

Giới thiệu chương trình của thuật toán tong_1b bằng cách gợi ý so sánh với chương trình của thuật toán tong_1a

Với học sinh:

Yêu cầu lên viết chương

trình của thuật toán tong_1b và giải thích một số câu lệnh theo

ý hiểu

Thuyết trình:

Chương trình này chỉ khác chương trình trên ở trình tự

8

Trang 4

Giáo án Tin Học 11

S:= S + 1/(a + N);

{bước 4}

Write(‘ tong la:’, s: 8:4);

{bước 5}

Readln

End

thực hiện vòng lặp Ở trên thì biến điều khiển được tự động tăng, còn ở dưới thì biến điều khiển được tự động giảm từ

100 xuống 1 và cũng tương tự như trên thì mỗi lần biến điều khiển giảm thì là một lần câu lệnh trong vòng for được thực hiện và nó kết thúc khi biến đếm I nhận giá trị bằng 1

2 Ví dụ khác:

Viết chương trình thực

hiện nhập từ bàn phím hai số

nguyên dương M và N (M <

N), tính và đưa ra màn hình

tổng các số chia hết cho 3

hoặc 5 trong phạm vi từ M

đến N

Chương trình :

Program vi_du_2;

Uses crt;

Var M, N, I: integer;

T: longint;

Begin

Clrscr;

Writeln (‘nhap vao so M nho

hon so N’);

{ Bước 1}

Write (‘M = ‘);

Readln (M);

Write (‘N = ‘);

Readln (N);

T := 0; {Bước 2}

For I := M to N do

{Bước 3, Bước 4}

If (I mod 3 = 0) or

(I mod 5 = 0) then

T := T + I; {Bước 5}

Writeln (‘ket qua:‘, T) {Bước

6}

Readln

End

Yêu cầu học sinh:

Viết thuật toán cho ví dụ này

Thuật toán như sau:

Bước 1: nhập M và N (M < N)

Bước 2: T 0 ;

I M-1;

Bước 3: I I+1;

Bước 4: nếu I > N thì chuyển đến bước 6;

Bước 5: nếu I mod 3= 0 hoặc

I mod 5= 0 thì T= T + I; quay lại bước 3;

Bước 6: đưa ra màn hình T, rồi kết thúc

Thuyết trình:

Ở ví dụ này số lần lặp cũng là biết trước.Giá trị đầu tiên mà biến đếm (biến điều khiển) nhận là M, sau đó tự động tăng cho đến khi nhận giá trị N thì kết thúc

Bước 1 của thuật toán:

T := 0;

Gán giá trị ban đầu của T là

0 For I := 1 to 100 do S:= S + I;

Câu lệnh lặp này đã bao gồm cả ba bước 3, 4,5 của thuật toán Đầu tiên I nhận giá trị là M, sau đó thực hiện lệnh trong vòng for, cộng vào tổng

10

Trang 5

Giáo án Tin Học 11

s giá trị I thoả mãn điều kiện chia hết cho 3 hoặc chia hết cho 5 Sau khi tính toán hoàn tất thì biến đếm được tự động tăng lên giá trị tiếp theo và mỗi lần tăng giá trị biến đếm

là một lần thực hiện lệnh trong vòng lặp Còn với s, ban đầu được gán giá trị là 0 Khi vào vòng lặp for thì lần lượt được cộng thêm vào các số hạng dạng I ( thoả điều kiện) (I= M, , N) và nó sẽ giữ giá trị thay đổi khi ra khỏi vòng for

Write (‘ tong s la:’, T);

Đây là bước thứ 6 của thuật toán, ta đưa ra màn hình giá trị của s và sau đó kết thúc

chương trình với từ end

Có một điểm khác giữa chương trình này với hai chương trình trên là kiểm tra điều kiện của I thoả chia hết cho 3 hoặc chia hết cho 5 thì mới tính tổng của T

IV Củng cố bài học (4 phút)

Giáo viên củng cố kiến thức của bài học:

- Nhấn mạnh ý nghĩa của cấu trúc lặp với số lần lặp biết trước

- Nhắc lại hai chương trình được xây dựng trong tiết học So sánh sự giống và khác nhau giữa hai thuật toán để học sinh dễ dàng nắm được bài Nhận thấy sự khác nhau căn bản nhất giữa hai chương trình tính tổng là ở chương trình thứ nhất biến đếm sẽ được tăng giá trị từ 1 đến 100, còn ở chương trình thứ hai thì biến đếm sẽ giảm từ

100 xuống 1 Tuy có sự khác nhau về biến nhưng số lần lặp đều là

100 cho nên cho ra chung một kết quả s Như vậy hai chương trình này bản chất là như nhau chỉ khác cách thức tính s

V Bài tập về nhà (3 phút)

- Xem lại các ví dụ trên lớp

- Các bài tập trong sách bài tập

Làm bài tập sau:

Trang 6

Giáo án Tin Học 11

Viết chương trình giải bài toán 100 trâu 100 cỏ, 1 trâu đứng ăn 5

bó, trâu nằm ăn 3 bó Hỏi mỗi loại có mấy con ?

VI Nhận xét của giáo viên về tiết học (2 phút)

- Ý thức học tập của lớp

- Hiệu quả học tập

- Rút kinh nghiệm sau tiết học

Ngày đăng: 02/05/2021, 19:43

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w