Bài 10: Cấu trúc lặp(While - do)
Chia sẻ bởi Dương Công Hoạch |
Ngày 25/04/2019 |
70
Chia sẻ tài liệu: Bài 10: Cấu trúc lặp(While - do) thuộc Tin học 11
Nội dung tài liệu:
Ngày soạn: 22
Ngày giảng: 24
Tiết theo PPCT: 15
§10. CẤU TRÚC LẶP (Tiết 3)
I - Mục tiêu bài học
1. Kiến thức
- Biết được ý nghĩa của cấu trúc lặp có số lần lặp chưa xác định.
- Biết được cấu trúc chung của lệnh lặp While trong ngôn ngữ Pascal.
- Biết được sự thực hiện của máy khi gặp lệnh lặp While.
2. Kĩ năng
- Phân biệt được sự giống và khác nhau giữa cấu trúc lặp For và While.
- Sử dụng đúng lệnh lặp While trong lập trình.
- Bước đầu biết lựa chọn đúng dạng lệnh lặp để lập trình giải quyết được một số bài toán đơn giản.
II – Phương pháp, phương tiện dạy học
Phương pháp: Thuyết trình, giảng giải, đàm thoại...
Phương tiện: sgk, máy chiếu...
III - Tiến trình bài học
1. Ổn định tổ chức lớp
- Lớp:
- Sĩ số:
- Lí do vắng:
2. Kiểm tra bài cũ
3. Nội dung bài mới
Hoạt động của giáo viên và học sinh
Nội dung
? Sự khác nhau của bài toán này với bài toán đã viết ở tiết trước?
? Lặp bao nhiêu lần?
? Bài toán dừng lặp khi nào?
? Trong thuật toán trên có những bước nào lặp đi lặp lại nhiều lần?
- Bước 2 đến bước 4
Như vậy, việc lặp lại số lần chưa biết trước sẽ được kết thúc khi điều kiện cho trước được thoả mãn
Câu lệnh sau từ khoá Do sẽ được thực hiện khi biểu thức điều kiện còn nhận giá trị True. Biểu thức điều kiện được tính trước khi thực hiện câu lệnh, nhưng nếu ngay từ đầu biểu thức điều kiện đã nhận giá trị False thì câu lệnh không được thực hiện.
? Ý nghĩa của câu lệnh While – do?
? Vậy trường hợp btđk luôn nhận giá trị True thì câu lệnh được thực hiện mãi gọi là gi?
- Lặp vô hạn
? bài toán sử dụng những biến nào? Kiểu dữ liệu?
? Xác định Input? Output của bài toán?
Input: 2 số nguyên M, N
Output: ƯCLN
? Bài toán dừng lặp khi nào?
- Khi M = N
? Điều kiện để tiếp tục lặp là gì?
- Điều kiện: m<>n
? Các lệnh cần lặp lại là gì?
- Lệnh cần lặp:M:=M - N; hoặc N:= N-M;
? Những biến được sử dụng trong bài toán? Kiểu dữ liệu?
3. Lặp với số lần chưa biết trước và câu lệnh While – do
Viết chương trình tính tổng:
S= + + + ... ++ ... cho đến khi <0,0001 thì dừng
Thuật toán Tong_2:
B1: S:=; N:=0;
B2:Nếu <0,0001 thì chuyển đến B5 ;
B3:N:=N+1;
B4:S:=S+;
B5:Đưa S ra màn hình rồi kết thúc
Để mô tả cấu trúc lặp như vậy,Pascal dùng câu lệnh while-do có dạng:
While <điều kiện> do;
Trong đó:- Điều kiện là biểu thức logic;
- Câu lệnh là 1 câu lệnh đơn hoặc lệnh ghép
* Ý nghĩa của câu lệnh While – do:
Câu lệnh sau từ khoá Do còn được thực hiện khi btđk còn đúng, sau đó quay lại kiểm tra điều kiện.
Ví dụ 1:
Chương trình tính Tong_2:
Program Bai_toan;
Uses Crt;
Var a,N:Integer;
S:Real;
BEGIN
Clrscr;
Write(‘Nhap gia tri cua a = ‘);
Readln(a);
S:=1/a;N:=1;
WHILE 1/(a+N)>=0.0001 DO
BEGIN
N:=N+1;
S:=S+1/(a+N);
END;
Writeln(‘Gia tri cua tong S = ‘, S:8:3);
Readln;
END.
Ví dụ 2:
Nhập vào 2 số nguyên dương M, N. Tìm ƯCLN của 2 số đó.
Thuật toán:
B1: Nhập M,
Ngày giảng: 24
Tiết theo PPCT: 15
§10. CẤU TRÚC LẶP (Tiết 3)
I - Mục tiêu bài học
1. Kiến thức
- Biết được ý nghĩa của cấu trúc lặp có số lần lặp chưa xác định.
- Biết được cấu trúc chung của lệnh lặp While trong ngôn ngữ Pascal.
- Biết được sự thực hiện của máy khi gặp lệnh lặp While.
2. Kĩ năng
- Phân biệt được sự giống và khác nhau giữa cấu trúc lặp For và While.
- Sử dụng đúng lệnh lặp While trong lập trình.
- Bước đầu biết lựa chọn đúng dạng lệnh lặp để lập trình giải quyết được một số bài toán đơn giản.
II – Phương pháp, phương tiện dạy học
Phương pháp: Thuyết trình, giảng giải, đàm thoại...
Phương tiện: sgk, máy chiếu...
III - Tiến trình bài học
1. Ổn định tổ chức lớp
- Lớp:
- Sĩ số:
- Lí do vắng:
2. Kiểm tra bài cũ
3. Nội dung bài mới
Hoạt động của giáo viên và học sinh
Nội dung
? Sự khác nhau của bài toán này với bài toán đã viết ở tiết trước?
? Lặp bao nhiêu lần?
? Bài toán dừng lặp khi nào?
? Trong thuật toán trên có những bước nào lặp đi lặp lại nhiều lần?
- Bước 2 đến bước 4
Như vậy, việc lặp lại số lần chưa biết trước sẽ được kết thúc khi điều kiện cho trước được thoả mãn
Câu lệnh sau từ khoá Do sẽ được thực hiện khi biểu thức điều kiện còn nhận giá trị True. Biểu thức điều kiện được tính trước khi thực hiện câu lệnh, nhưng nếu ngay từ đầu biểu thức điều kiện đã nhận giá trị False thì câu lệnh không được thực hiện.
? Ý nghĩa của câu lệnh While – do?
? Vậy trường hợp btđk luôn nhận giá trị True thì câu lệnh được thực hiện mãi gọi là gi?
- Lặp vô hạn
? bài toán sử dụng những biến nào? Kiểu dữ liệu?
? Xác định Input? Output của bài toán?
Input: 2 số nguyên M, N
Output: ƯCLN
? Bài toán dừng lặp khi nào?
- Khi M = N
? Điều kiện để tiếp tục lặp là gì?
- Điều kiện: m<>n
? Các lệnh cần lặp lại là gì?
- Lệnh cần lặp:M:=M - N; hoặc N:= N-M;
? Những biến được sử dụng trong bài toán? Kiểu dữ liệu?
3. Lặp với số lần chưa biết trước và câu lệnh While – do
Viết chương trình tính tổng:
S= + + + ... ++ ... cho đến khi <0,0001 thì dừng
Thuật toán Tong_2:
B1: S:=; N:=0;
B2:Nếu <0,0001 thì chuyển đến B5 ;
B3:N:=N+1;
B4:S:=S+;
B5:Đưa S ra màn hình rồi kết thúc
Để mô tả cấu trúc lặp như vậy,Pascal dùng câu lệnh while-do có dạng:
While <điều kiện> do
Trong đó:- Điều kiện là biểu thức logic;
- Câu lệnh là 1 câu lệnh đơn hoặc lệnh ghép
* Ý nghĩa của câu lệnh While – do:
Câu lệnh sau từ khoá Do còn được thực hiện khi btđk còn đúng, sau đó quay lại kiểm tra điều kiện.
Ví dụ 1:
Chương trình tính Tong_2:
Program Bai_toan;
Uses Crt;
Var a,N:Integer;
S:Real;
BEGIN
Clrscr;
Write(‘Nhap gia tri cua a = ‘);
Readln(a);
S:=1/a;N:=1;
WHILE 1/(a+N)>=0.0001 DO
BEGIN
N:=N+1;
S:=S+1/(a+N);
END;
Writeln(‘Gia tri cua tong S = ‘, S:8:3);
Readln;
END.
Ví dụ 2:
Nhập vào 2 số nguyên dương M, N. Tìm ƯCLN của 2 số đó.
Thuật toán:
B1: Nhập M,
* Một số tài liệu cũ có thể bị lỗi font khi hiển thị do dùng bộ mã không phải Unikey ...
Người chia sẻ: Dương Công Hoạch
Dung lượng: |
Lượt tài: 1
Loại file:
Nguồn : Chưa rõ
(Tài liệu chưa được thẩm định)