1. Trang chủ
  2. » Lịch sử

cấu trúc lặp tin học 11 nguyễn thị tố châu thư viện giáo dục tỉnh quảng trị

5 18 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 5
Dung lượng 115,29 KB

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

Nội dung

- Biết diễn đạt đúng các câu lệnh, soạn được chương trình giải các bài toán đơn giản áp dụng các loại cấu trúc điều khiển.. Thái độ:3[r]

Trang 1

Ngày soạn 14/11/2008

§10 CẤU TRÚC LẶP

(TIẾT 1)

A MỤC TIÊU:

1 Kiến thức:

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

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

- Bước đầu hình thành kĩ năng lập trình có cấu trúc lặp

2 Kỹ năng:

- Biết vận dụng đúng đắn từng loại cấu trúc lặp 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

- Biết diễn đạt đúng các câu lệnh, soạn được chương trình giải các bài toán đơn giản áp dụng các loại cấu trúc điều khiển

3 Thái độ:

- Xác định thái độ nghiêm túc trong học tập khi tiếp xúc với nhiều qui định nghiêm ngặt trong lập trình,

- Tiếp tục rèn luyện các phẩm chất cần thiết người lập trình

- Ham muốn giải các bài tập bằng lập trình

B PHƯƠNG PHÁP: Nêu tình huống có vấn đề, câu hỏi gợi mở

C CHUẨN BỊ CỦA GIÁO VIÊN, HỌC SINH:

1 Chuẩn bị của giáo viên: giáo án, phấn, bút, sổ điểm, SGK, dụng cụ trực quan, chương trình minh họa

2 Chuẩn bị của học sinh: SGK, vở, bút, các thuật toán giáo viên yêu cầu bài tập về nhà

D TIẾN TRÌNH LÊN LỚP:

I Ổn định:

II Kiểm tra bài cũ:

GV: gọi 2 học sinh lên bảng làm bài tập về nhà:

+ Hãy xây dựng thuật toán tính tổng và đưa kết quả ra màn hình S=1+2+3+…+N, biết

N được nhập vào từ bàn phím

+ Hãy xây dựng thuật toán tính tổng S, biết

S= 1+2+3+…+N dừng khi S>100

III Bài mới:

1 Đặt vấn đề: Cho chương trình sau:

Nhận xét kết quả thực hiện chương trình

Tiết

12

Trang 2

Trong những câu lệnh chúng ta đã được học có lệnh nào thể hiện một công việc nào

đó được thực hiện nhiều lệnh không? Vậy muốn thực hiện công việc nào đó nhiều lần chúng

ta phải làm thế nào?

2 Triển khai bài:

Hoạt động 1: Tìm hi u v l pểu về lặp ề lặp ặp

Đề bài toán 1 và bài toán 2 yêu cầu học

sinh về nhà làm bài tập

Kiểm tra học sinh nêu thuật toán của 2

bài toán

Gọi 2 tổ lên bảng dán thuật toán của tổ

mình

HS: quan sát bạn thực hiện trên bảng và

suy nghĩ thuật toán

GV: gọi học sinh dưới lớp nhận xét

thuật toán của các bạn

HS: nhận xét bài của bạn trên bảng.

GV: sửa thuật toán của 2 bài toán đã đưa

ra

GV: tổng hợp ý kiến và đưa ra thuật

toán

GV: thuật hiện 2 thuật toán trên bằng

chương trình mô phỏng Crocodile và

yêu cầu học sinh nhận xét điểm giống và

khác nhau giữa 2 thuật toán

GV: hãy suy nghĩ và nếu thuật toán của

bài toán 2

+ Giống nhau:

Công việc tính tổng lặp đi lặp lại nhiều

lần;

+ Khác nhau:

- Thuật toán 1 dừng tính tổng khi i>N,

lặp với số lần lặp biết trước (N lần);

- Thuật toán 2 dừng tính tổng khi S>100;

lặp với số lần chưa biết trước (S>100)

1 Lặp:

a Bài toán 1: Tính tổng và đưa kết quả ra màn

hình S=1+2+3+…+N, biết N được nhập vào từ bàn phím

* Thuật toán tong1a;

Bước 1: Nhập N Bước 2: S ← 0; i ←1;

Bước 3: Nếu i >N chuyển đến B6 Bước 4: S ← S+i;

Bước 5: i ← i +1; quay lại Bước 2 Bước 6: Đưa ra S ; Kết thúc

* Thuật toán tong1b;

Bước 1: Nhập N Bước 2: S ← 0; i ←N;

Bước 3: Nếu i <1 chuyển đến B6 Bước 4: S ← S+i;

Bước 5: i ← i -1; quay lại Bước 2 Bước 6: Đưa ra S ; Kết thúc

b Bài toán 2: Tính tổng S, biết

S= 1+2+3+…+N dừng khi S>100

*Thuật toán tong_2:

Bước 1: S ←0; N ←0;

Bước 2: Nếu S >100 chuyển đến B5 Bước 3: N ←N+1;

Bước 4: S ← S+N; quay lại Bước 2 Bước 5: Đưa ra S ; Kết thúc

Kết luận:

Trong lập trình, cũng có những thao tác, những câu lệnh lặp đi lặp lại nhiều lần tạo thành một cấu trúc lặp

* Có 2 loại cấu trúc lặp:

- Lặp với số lần biết trước;

Trang 3

- Lặp với số lần chưa biết trước.

Hoạt động 2: Lặp với số lần biết trước và câu lệnh for – do

Từ thuật toán tong_1a gợi ý để học sinh có thể

nêu lên thuật toán Tong_1b

GV: nhận xét thuật toán của học sinh đưa ra.

HS: chú ý lắng nghe.

GV: thực hiện minh họa thuật toán theo tong1a

và tong1b trên chương trình mô phỏng

GV: gọi HS nhận xét kết quả sau khi thực hiện

2 thuật toán đó

Nói chung một số thuật toán có những thao tác

thực hiện lặp đi lặp lại một số lần liên tiếp

=> Lặp với số lần biết trước

GV: thực hiện 1 lệnh đúng cú pháp trên Pascal

và yêu cầu học sinh nhận xét

For i:=1 to 10 do Writeln(i);

For i:=10 downto 1 do Writeln(i);

HS: quan sát câu lệnh thực hiện và nhận xét 2

câu lệnh trên

GV: Giải thích cú pháp từng câu lệnh

GV:

- Muốn in giá trị từ 1 đến 100 thì làm thế nào?

- Sử dụng hai cú pháp hãy viết lại đoạn in các

số

- Thấy khác khi in giá trị đó ra như thế nào?

HS:

For i:=1 to 100 do write(i:4);

For i:=100 downto 1 do write(i:4);

GV: Chạy đoạn lệnh trên trong chương trình

Pascal yêu cầu học sinh nhận xét:

For i:=1 to 10 do

Begin Write(i); i:= i+1; End;

X:=5; y:=15;

2 Lặp với số lần biết trước và câu lệnh for - do:

* Thuật toán tong1a;

Bước 1: Nhập N Bước 2: S ! 0; i !1;

Bước 3: Nếu i >N chuyển đến B6 Bước 4: S ! S+i;

Bước 5: i ! i +1; quay lại Bước 2 Bước 6: Đưa ra S ; Kết thúc

* Thuật toán tong1b;

Bước 1: Nhập N Bước 2: S ! 0; i !N;

Bước 3: Nếu i <1 chuyển đến B6 Bước 4: S ! S+i;

Bước 5: i ! i -1; quay lại Bước 2 Bước 6: Đưa ra S ; Kết thúc

* Dạng lặp tiến:

For <biến đếm>:=<Giá trị đầu> to <Giá trị cuối> do <câu lệnh>;

* Dạng lặp lùi:

For <biến đếm>:=<Giá trị cuối>

downto <Giá trị đầu> do <câu lệnh>;

Trong đó:

- Biến đếm là biến đơn, thường có kiểu

số nguyên

- Giá trị đầu và giá trị cuối: là các biểu

thức cùng kiểu với biến đếm và giá trị đầu phải nhỏ hơn hoặc bằng giá trị cuối.

Cách thực hiện For- do:

- Ở dạng lặp tiến, câu lệnh sau do được

thực hiện tuần tự, với biến đếm lần lượt

nhận các giá trị liên tiếp tăng từ giá trị đầu đến giá trị cuối.

- Ở dạng lặp lùi, câu lệnh sau do được

thực hiện tuần tự, với biến đếm lần lượt

nhận các giá trị liên tiếp giảm từ giá trị

Trang 4

For x:=x+1 to y do

Begin Write(x:4); x:=2; end;

HS: suy nghĩ trả lời

GV: tập hợp ý kiến và giải thích cho hs.

- Trong vòng lặp không nên có câu lệnh gán giá

trị làm thay đổi biến điều khiển Trong TP thì

cho phép nhưng trong FP thì sẽ thông báo lỗi

biên dịch

- Các giá trị đầu và giá trị cuối có thể là những

biểu thức Giá trị được tính trước khi vào vòng

lặp và làm nhiệm vụ giá trị đầu và giá trị cuối

Do đó, trong vòng lặp nếu có biến nào nằm

trong 2 biểu thức này bị thay đổi thì giá trị đầu

và giá trị cuối vẫn không thay đổi

GV: áp dụng cú pháp đã học và thuật toán 1a

em nào có thể lên viết câu lệnh lặp tính tổng đó

HS: suy nghĩ, áp dụng cú pháp để trả lời câu

hỏi

GV: Chạy chương trình trên Pascal.

HS: chú ý quan sát kết quả khi chạy chương

trình

GV: Mở chương trình Violet để trắc nghiệm 1

số câu hỏi

đầu đến giá trị cuối.

Chú ý:

- Giá trị đầu và giá trị cuối có thể là những biểu thức

- Trong vòng lặp không nên có câu lệnh làm thay đổi giá trị biến điều khiển

Chương trình thuật toán 1:

Program tong1;

Var S,i,N:byte;

Begin Write('Nhap gia tri N: '); Readln(N); S:=0;

For i:=1 to N do S:=S+i;

Writeln(‘Tong la: ‘,S);

Readln;

End

IV Củng cố:

Câu 1: Kết quả của S sau khi thực hiện đoạn lệnh sau:

S:=0; For i:=1 to 3 do; S:=S+i;

a 0 b 1 c 3 d 6

Câu 2: Đoạn lệnh sau cho kết quả S bằng bao nhiêu:

S:=0; For i:=3 downto 1 do S:=S+1;

a 0 b 1 c 3 d 6

Câu 3: Hãy chọn đúng/ sai cho các phát biểu sau đây:

a Giá trị đầu, giá trị cuối là các biểu thức cùng kiểu.

Trang 5

b X là biến kiểu thực; Ta có câu lệnh lặp For X:=1 to 100 do S:=s+x;

c S, i là kiểu nguyên; Câu lệnh For i:=1 to 1 do S:=S+1;

Câu lệnh S:=S+1; sẽ được lặp 2 lần

d Sau DO muốn thực hiện nhiều lệnh phải sử dụng câu lệnh ghép.

I

V Dặn dò, hướng dẫn học sinh học tập ở nhà

- Xem lại cách viết một chương trình TP đơn giản

1 Làm bài tập 3,5a, 6 trong SGK (trang 51)

2 P = 1- 2 + 3 - 4 +…+(-1)n+1n

3 P=1*2*3*4*…*n

- Chuẩn bị bài mới: Bài 10 Cấu trúc lặp (tt)

Duyệt của Tổ trưởng CM/ Hiệu trưởng :

Ngày đăng: 06/03/2021, 07:50

TỪ KHÓA LIÊN QUAN

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