Hớng dẫn về nhà (2 phút)

Một phần của tài liệu Giao an tin 8 (Trang 80 - 84)

- Ghi nhớ cú pháp và ý nghĩa của câu lệnh lặp for ... to ... do...,

- Đọc và tìm hiểu chơng trình trong Đọc thêm 1 – Tính gần đúng số Pi. Chuẩn bị bài 8 – Lặp với số lần cha biết trớc.

Ngày soạn : 20/02/11 Ngày dạy :

Tiết PPCt 49: Bài tập

A. Mục tiêu :

•Biết nhu cầu cần cú cấu trỳc lặp trong ngụn ngữ lập trỡnh.

•Biết ngụn ngữ lập trỡnh dựng cấu trỳc lặp để chỉ dẫn mỏy tớnh thực hiện lặp đi lặp lại cụng việc nào đú một số lần.

•Hiểu hoạt động của cõu lệnh với số lần biết trước for...do trong Pascal. •Viết đỳng được lệnh for...do trong một số tỡnh huống đơn giản.

•Hiểu lệnh ghộp trong Pascal •Thỏi độ nghiờm tỳc cõ̉n thận.

B. Chuẩn bị :

1. Giáo viên : - SGK, SGV, tài liệu, Giáo án - Đồ dùng dạy học... - Đồ dùng dạy học...

2. Học sinh : - Đọc trớc bài - SGK, Đồ dùng học tập... - SGK, Đồ dùng học tập...

C. Tiến trình tiết dạy : I. ổn định tổ chức lớp :

- Kiển tra sĩ số : - ổn định trật tự :

II. Kiểm tra bài cũ :

III. Dạy bài mới :

Bài tập:

1. Chơng trình Pascal sau đây thực hiện hoạt động nào?

var i: integer; begin

for i:=1 to 1000 do; end.

2. Hãy mơ tả thuật tốn để tính tổng sau đây (n là số tự nhiên đợc nhập vào từ bàn phím):

A = ) 1 ( 1 ... 5 . 3 1 4 . 2 1 3 . 1 1 + + + + n n

3. Các câu lệnh Pascal cĩ hợp lệ khơng, vì sao?

a) for i:=100 to 1 do writeln(’A’); b) for i:=1.5 to 10.5 do writeln(’A’); c) for i=1 to 10 do writeln(’A’);

d) for i:=1 to 10 do; writeln(’A’);

e) var x: real; for x:=1 to 10 do writeln(’A’);

4. Một số ngơn ngữ lập trình, ví dụ Pascal, khơng cĩ sẵn hàm tính lũy thừa. Hãy mơ tảthuật tốn và sử dụng câu lệnh lặp với số lần xác định trớc để viết chơng trình Pascal thuật tốn và sử dụng câu lệnh lặp với số lần xác định trớc để viết chơng trình Pascal tính lũy thừa bậc n của số nguyên X.

5. Viết chơng trình Pascal nhập n số nguyên từ bàn phím và ghi ra màn hình số lớn nhấttrong các số đĩ. Số n cũng đợc nhập vào từ bàn phím. (Xem mơ tả thuật tốn trong Ví trong các số đĩ. Số n cũng đợc nhập vào từ bàn phím. (Xem mơ tả thuật tốn trong Ví dụ 6, Bài 5.)

6. Viết chơng trình Pascal nhập n số nguyên từ bàn phím và ghi ra màn hình số các sốdơng trong các số đĩ. Số n cũng đợc nhập vào từ bàn phím. (Xem Bài tập 5a, Bài 5.) dơng trong các số đĩ. Số n cũng đợc nhập vào từ bàn phím. (Xem Bài tập 5a, Bài 5.)

Giải:

1. Tuy cĩ vịng lặp 1000 lần, nhng chơng trình Pascal nĩi trên khơng thực hiện bất kì mộthoạt động nào. Tuy nhiên đây vẫn là câu lệnh hợp lệ. hoạt động nào. Tuy nhiên đây vẫn là câu lệnh hợp lệ.

2. Thuật tốn tính tổngA = A = ) 1 ( 1 ... 5 . 3 1 4 . 2 1 3 . 1 1 + + + + n n

Bớc 1. Gán A ← 0, i ← 1. Bớc 2. A ← i i( 1+2).

Bớc 3. i ← i + 1.

Bớc 4. Nếu i ≤ n, quay lại bớc 2.

Bớc 5. Ghi kết quả A và kết thúc thuật tốn.

3. Trừ d), tất cả các câu lệnh đều khơng hợp lệ: a) Giá trị đầu phải nhỏ hơn giá trị cuối; b)Các giá trị đầu và giá trị cuối phải là số nguyên; c) Thiếu dấu hai chấm khi gán giá trị Các giá trị đầu và giá trị cuối phải là số nguyên; c) Thiếu dấu hai chấm khi gán giá trị

đầu; d) Thừa dấu chấm phảy thứ nhất, nếu nh ta muốn lặp lại câu lệnh

writeln(’A’)mời lần, ngợc lại câu lệnh là hợp lệ; e) Biến x đã đợc khai báo nh là

biến cĩ dữ liệu kiểu số thực và vì thế khơng thể dùng để xác định giá trị đầu và giá trị cuối trong câu lệnh lặp.

4. Thuật tốn:

Bớc 1. Nhập các số n và x.

Bớc 2. A ← 1, i ← 0 (A là biến lu lũy thừa bậc n của x). Bớc 3. i←i + 1, A ← A.x.

Bớc 4. Nếu i < n, quay lại bớc 3.

Bớc 5. Thơng báo kết quả A là lũy thừa bậc n của x và kết thúc thuật tốn.

Chơng trình Pascal cĩ thể nh sau:

var n,i,x: integer; a: longint; begin

write('Nhap x='); readln(x); write('Nhap n='); readln(n); A:=1;

for i:=1 to n do A:=A*X;

writeln(x,' mu ',n,' bang ',A); end.

5. Thuật tốn:

Bớc 1. Nhập số n.

Bớc 2. A← −32768 (gán số nhỏ nhất cĩ thể trong các số kiểu nguyên cho A), i←1. Bớc 3. Nhập số thứ i và gán giá trị đĩ vào biến A.

Bớc 4. Nếu Max < A, Max ← A. Bớc 5. i←i + 1.

Bớc 6. Nếu i ≤ n, quay lại bớc 3.

Bớc 7. Thơng báo kết quả Max là số lớn nhất và kết thúc thuật tốn.

Chơng trình Pascal cĩ thể nh sau:

uses crt;

var n,i,Max,A: integer; begin

clrscr;

write('Nhap N='); readln(n); Max:=-32768;

for i:=1 to n do

begin write('Nhap so thu ',i,':'); readln(A); if Max<A then Max:=A end;

writeln('So lon nhat: ',Max); end.

Lu ý. Trong chơng trình trên chúng ta chỉ sử dụng hai biến A và Max để giải bài tốn. Một cách tự nhiên, để nhập n số chúng ta cần tới n biến. Tuy nhiên, ở đây việc xử lí các giá trị trong dãy số cĩ thể thực hiện bằng cách chỉ cần so sánh các giá trị đã đợc nhập vào, do đĩ chúng ta chỉ cần một biến để lu lần lợt các giá trị nhập vào là đủ. Một cách giải quyết khác là sử dụng biến mảng (xem Bài tập 6, Bài 9).

uses crt;

var n,i,SoDuong,A: integer; begin clrscr; write('Nhap N='); readln(n); if n>0 then begin SoDuong:=0; for i:=1 to n do

begin write('Nhap so thu ',i,':'); readln(A); if A>0 then SoDuong:=SoDuong+1 end;

writeln('So cac so duong = ',SoDuong) end

else writeln('n phai > 0!'); end.

Ngày soạn : 20/02/11 Ngày dạy :

Tiết PPCT 50: Bài 8: LẶP VỚI SỐ LẦN CHƯA BIẾT TRƯỚC

I.Mục tiờu: 1.Kiến thức

- Biết nhu cầu cần cú cấu trỳc lặp với số lần chưa biết trước trong ngụn ngữ lập trỡnh; - Biết ngụn ngữ lập trỡnh dựng cấu trỳc lặp với số lần chưa biết trước để chỉ dẫn mỏy

tớnh thực hiện lặp đi lặp lại cụng việc đến khi một điều kiện nào đú được thoả mĩn;

2. Kĩ năng

Một phần của tài liệu Giao an tin 8 (Trang 80 - 84)

Tải bản đầy đủ (DOC)

(96 trang)
w