Tải bản đầy đủ (.pdf) (4 trang)

Giáo án Tin học 11 - Bài 10: Cấu trúc lặp

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (177.2 KB, 4 trang )

<span class='text_page_counter'>(1)</span>GV: NGUYỄN THỊ LẮM Ngày soạn: 22 / 11 /2014 Ngày dạy:27 /11 /2014 Lớp: 11CB2 Tuần: 15 Tiết CT: 15. GIÁO ÁN TIN HỌC 11. CHƯƠNG III: CẤU TRÚC RẼ NHÁNH VÀ LẶP Bài 10: CẤU TRÚC LẶP I.Mục đích yêu cầ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 định trước và 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 vào tình huống cụ thể. 2. Kĩ năng - Mô tả được thuật toán của một số bài toán sử dụng lệnh lặp. - Viết đúng các lệnh lặp với số lần định trước, kiểm tra điều kiện. - Viết thuật toán của một số bài toán đơn giản. 3. Thái độ II.Phương tiện, phương pháp 1. Phương tiện -Máy tính, máy chiếu, phông chiếu, bảng phấn. - Đính kèm Slide bài giảng bằng Power Point. 2. Phương pháp: nêu – giải quyết vấn đề. III. Nội dung: 1. Ổn định lớp(1’) 2. Kiểm tra bài cũ 3. Giới thiệu bài mới 4. Nội dung bài mới TG 8’. 3’ 4’. Hoạt động của GV - Em hãy viết chương trình đưa ra màn hình các số từ 1 đến 10 như sau: 1 2 3 4 5 6 7 8 9 10. - Bây giờ muốn đưa ra 100 hay 1000 chữ số theo thứ tự như trên thì sao? - Nếu chúng ta viết 100 hay 1000 câu lệnh write() như trên thì mất rất nhiều thời gian và dễ sai sót, các câu lệnh thực hiện tương tự. Hoạt động của HS Write (‘1’); Write (‘ 2’); …………. Write (‘ 10’); Hoặc i:=i+1; write(i); write(i+1); write(i+2); …………. write(i+9);. Nội dung. 1. Lặp Trong lập trình có những thao tác phải lặp lại nhiều - Viết lệnh in ra 100, 1000 lần, khi đó ta gọi là cấu trúc lần lặp. Cấu trúc lặp có 2 loại: Lặp với số lần biết trước. Lặp với số lần chưa biết trước. Các NNLT đều có các câu. 1 Lop11.com.

<span class='text_page_counter'>(2)</span> GV: NGUYỄN THỊ LẮM nhau được viết lại rất nhiều lần. 1’ - Vậy có cách nào khác để giải các bài toán có nội dung tương tự - Sử dụng cấu trúc lặp như vậy không? Giới thiệu bài: Cấu trúc lặp 10’ - Xét bài toán: Tính tổng S với a là số nguyên và a >2 Bài toán 1: 1 1 1 1 S    ...  a a 1 a  2 a  100 Bài toán 2: 1 1 1 1 S    ...  a a 1 a  2 aN 1  0.001 cho đến khi aN - Sau mỗi lần thực hiện giá trị tổng S tăng thêm bao nhiêu? Với bài toán 1: - Việc tăng giá trị cho tổng S được lặp đi lặp lại bao nhiêu lần? số lần lặp biết trước Với bài toán 2: - Việc tăng giá trị cho tổng S được lặp đi lặp lại cho đến khi nào? số lần lặp chưa biết trước  Xét bài toán 1: So sánh 2 thuật toán tong_1a và tong_1b.  Thuật toán có lặp không?  Lặp bao nhiêu lần?  Cái gì thay đổi trong 2 thuật toán này? S1= 1/a S2=S1+1/(a+1) S3= S2 +1/(a+2) ………………. S100= S99 +1/(a+99) S101= S100 +1/(a+100) Nhận xét: Bắt đầu từ S2 việc tính S được lặp đi lặp lại theo quy luật Ssau= Strước + 1/(a+N) với N chạy từ 1 đến 100 Xây dựng thuật toán:. GIÁO ÁN TIN HỌC 11 lệnh để mô tả cấu trúc lặp.. Với bài toán 1: 1/(a+i) với i = 1,2,..N -. 100 lần. - Với bài toán 2: 1  0.001 aN. Nhận xét:  có lặp.  Lặp 100 lần.  So sánh: B1: tong1a gán N=0, tong1b gán N=101. B2: tong1a gán N=N+1, tong1b gán N=N-1. B3: điều kiện trở về B5 của tong1a là N>100, tong1b là N<1. B4, B5: giống nhau.. Áp dụng câu lệnh lặp dạng tiến để. 2 Lop11.com. 2. Lặp với số lần biết trước và câu lệnh for - do Xét bài toán: VD1:Tính tổng S với a là số nguyên và a >2 1 1 1 1 S    ...  a a 1 a  2 a  100 Thuật toán tong1a B1: S:=1/a; N:=0; B2: N: =N+1; B3: nếu N > 100 thì chuyển sang B5; B4: S:=S+1/(a+N) rồi quay lại B2; B5: đưa ra S rồi kết thúc. Thuật toán tong1b B1: S:=1/a;N:=101; B2: N:=N-1; B3: nếu N < 1 thì chuyển sang B5; B4: S:=S+1/(a+N) rồi quay lại B2; B5: đưa ra S rồi 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>; VD: S:=1/a; For N:=1 to 100 do S:= S+1/(a+N);  Dạng lặp lùi: For <biến đếm> := <giá trị cuối> downto <giá trị đầu> do<câu lệnh>; VD: S:=1/a; For N:=100 downto 1 do.

<span class='text_page_counter'>(3)</span> GV: NGUYỄN THỊ LẮM GIÁO ÁN TIN HỌC 11 7’ viết chương trình cho bài toán -Dạng tiến: S:= S+1/(a+N); trên. Program tong_1a; Trong đó: Var N : byte; - Biến đếm là biến kiểu số nguyên hoặc ký tự S : real; Begin VD: For i:=1 to 10 do writeln(i); Writeln(‘Nhap so a: ’); Readln(a); For i:=’a’ to ‘z’ do writeln(i); S:=1/a; For N:= 1 to 100 do - Giá trị đầu, giá trị cuối là các biểu thức cùng kiểu với  Đây thực chất là 2 thuật toán S:= S+1/(a+N); có cách tính ngược nhau. Một Writeln(‘Tong S la : ‘,S:8:3); biến đếm, giá trị đầu phải nhỏ hơn giá trị cuối. cách tính tổng tiến lên, còn cách Readln End. - Giá trị biến đếm được điều khác là lùi dần. chỉnh tự động, vì vậy câu  Giá trị của biến N và biến S thay - Hs ghi bài lệnh sau do không thay đổi đổi. giá trị biến đếm được. * Viết chương trình tính tổng S của bài toán trên. Program tong_1a; Var N : byte; S : real; Begin Writeln(‘Nhap so a: ’); Readln(a); S:=1/a; For N:= 1 to 100 do S:= S+1/(a+N); Writeln(‘Tong S la : ‘,S:8:3); Readln End. Ví dụ 2: Lập chương trình tính tổng sau: Ví dụ 2: Lập chương trình tính tổng sau: 1 1 1 S  1   . 10’ 1 1 1 1. S  1. 2. . 3. . 4.  ... . - Hướng dẫn HS xây dựng thuật toán. -Yêu cầu HS viết chương trình tính tổng dựa vào thuật toán để viết dạng tiến và dạng lùi.. N. 2. 3. 4. Bước 1: Nhập N Bước 2: S  1, i2 Bước 1: Nhập N Bước 3: Nếu i>N thì đến Bước 2: S  1, i2 bước 5 Bước 3: Nếu i>N thì đến Bước 4: S S+1/i ; i i+1 bước 5 rồi quay lại bước 3. Bước 4: S S+1/i ; i i+1 Bước 5: Đưa ra S rồi kết thúc rồi quay lại bước 3. Program tinh_tong; Bước 5: Đưa ra S rồi kết thúc Var i, N: byte; S: real; Begin Writeln(‘Nhap N: ’); readln(N); S:=1; 3. Lop11.com.

<span class='text_page_counter'>(4)</span> GV: NGUYỄN THỊ LẮM. GIÁO ÁN TIN HỌC 11 For i:=2 to N do S:=S+1/i; Writeln(‘’Tong la: ’, S:8:2); Readln End.. -Nhận xét và chốt lại vấn đề. Cho HS ghi bài.. IV. Củng cố và dặn dò (1’) - Nhắc lại cấu trúc for… do - Cách vận dụng các cấu trúc lặp for… do để giải bài toán. V. Rút kinh nghiệm .................................................................................................................................................................. ....................................................................................................................................................... 4 Lop11.com.

<span class='text_page_counter'>(5)</span>

×