1. Trang chủ
  2. » Giáo án - Bài giảng

bài thực hành 6

4 377 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 4
Dung lượng 61,5 KB

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

Nội dung

Kiến thức - Hiểu hoạt động của câu lệnh lặp với số lần chưa biết trước while…do trong Pascal.. Kỹ Năng - Viết được chương trình có sử dụng vòng lặp while…do.. - Rèn luyện đọc hiểu chương

Trang 1

Tuần : 27

Tiết : 51+52

Ngày soạn: 07/03/2011 Ngày dạy : 08/03/2011

Bài TH 6: SỬ DỤNG LỆNH LẶP WHILE DO

I Mục tiêu

1 Kiến thức

- Hiểu hoạt động của câu lệnh lặp với số lần chưa biết trước while…do trong Pascal

2 Kỹ Năng

- Viết được chương trình có sử dụng vòng lặp while…do

- Rèn luyện đọc hiểu chương trình có sử dụng vòng lặp while…do

3 Thái độ

- Có ý thức, kỹ luật, nghiêm túc, trình bày một vấn đề chặt chẽ, rõ ràng.

II Chuẩn bị

- GV: Soạn giáo án , SGK, máy chiếu, phòng máy…

- HS: Vở ghi, SGK, đọc trước nội dung bài học thực hành, tìm hiểu một số bài toán và chỉ ra thuật toán

III Phương pháp

- Vấn đáp, thuyết trình, trực quan

- Đặt vấn đề, giải quyết vấn đề

IV Hoạt động dạy và học

1 Ổn định lớp tổ chức lớp

- kiểm tra sĩ số lớp

- Ổn định trật tự

2 Kiểm tra bài cũ

- Nêu cấu trúc câu lệnh, ý nghĩa của vòng lặp while do?

3 Bài mới

? điều kiện ở đây là ?

HS : trả lời

? vòng lặp thực hiện khi nào ?

HS : khi hết n số thì thôi

? tính trung bình của n số thực như thế

nào ?

HS : nêu cách tính

? nêu thuật giải ?

HS : trả lời

Bài 1:Viết chương trình sử dụng lệnh lặp

While…do để tính trung bình n số thực x1, x2,

x3, , x n Các số n và x1, x2, x3, , x n được nhập vào từ bàn phím

a.Thuật toán Bước 1 - Nhập N là số lượng số thực sẽ được

nhập từ bàn phím:

- Gán biến đếm bằng 0 Dem 0

- Gán tổng Sum 0.

Trang 2

? công việc đầu tiên phải thực hiện ?

HS : - nhập n số thực

- nhập số thứ nhất, rồi tính tổng

các số vừa nhập

- tương tự lặp lại nhập cho đến

khi được n số

thoát khỏi vòng lặp và tính trung bình

bằng cách lấy tổng chia n

? trong bài cần dùng bao nhiêu biến ?

? xác định kiểu dữ liệu mỗi biến

HS : trả lời

? Dịch chương trình và sửa lỗi, nếu có

Chạy chương trình với các bộ dữ liệu

được gõ từ bàn phím và kiểm tra kết

quả nhận được

? thảo luận đối chiếu giữa thuật toán

và các câu lệnh mô tả thuật toán trong

chương trình

hoạt động chính của chương trình với

n=3

1 Trước khi bắt đầu vòng lặp

while do: dem=0, TB=0, n = 3;

2 Bắt đầu vòng lặp while do

3 Kết thúc vòng lặp while do: TB =

45/3 = 15

Viết lại chương trình bằng cách sử

dụng câu lệnh for…do thay cho câu

lệnh while…do

GV : phân biệt cho học sinh trong

vòng for không cần có phép toán

dem:=dem+1; khác với vòng lặp while

….do

sử dụng while do và for do là khác

nhau While do thích hợp hơn với

trường hợp lặp với số lần chưa biết

trước, for do thích hợp hơn với

trường hợp lặp với số lần biết trước

Ví dụ, không thể sử dụng lệnh for do

để thay thế lệnh while do trong

chương trình Chao_hoi được (chưa

Bước 2 Trong khi Dem < N thì

Nhập giá trị số thực x từ bàn phím Cộng thêm x vào tổng Sum: Sum Sum + x

Tăng biến đêm thêm 1 đơn vị: Dem Dem + 1 Bước 3 Tính TB dãy số vừa nhập TB Sum/N Bước 4 Đưa TB ra màn hình, rồi kết thúc.

a) Gõ chương trình sau đây và lưu chương trình

với tên Tinh_TB:

Program Tinh_Trung_binh;

uses crt;

Var

n, dem: Integer;

x, TB: real;

begin clrscr;

dem:=0 ; TB:=0 ; write('Nhap so cac so can tinh n = '); readln(n);

while dem<n do begin

dem:=dem+1;

write('Nhap so thu ',dem,'= ');

readln(x);

TB:=TB+x;

end;

TB:=TB/n;

writeln('Trung binh cua ',n,' so la= ',TB:10:3); writeln('Nhan Enter de thoat ');

readln end

write('Nhap so cac so can tinh n = ');

readln(n);

tong :=0;

for dem :=1 to n do begin

writeln(‘ nhap so thu’,dem,’=’) ; readln(x)

tong :=tong+x end ;

TB := tong/n ; writeln('Trung binh cua ',n,' so la = ',TB:10:3);

Trang 3

biết trước số bạn trong nhóm).

GV: có thể giới thiệu thêm về vòng lặp

Repeat… until

Bài 2 Tìm hiểu chương trình nhận biết

một số tự nhiên N được nhập vào từ

bàn phím có phải là số nguyên tố hay

không

? nêu cách giải

Ý tưởng: Kiểm tra lần lượt N có chia

hết cho các số tự nhiên 2 ≤ i ≤ N hay

không Kiểm tra tính chia hết bằng

phép chia lấy phần dư (mod)

? xác định Input và Output của bài

toán:

HS: Input: Số tự nhiên N

Output: Trả lời N là số nguyên tố

hoặc N không là số nguyên tố

GV: Để kiểm tra N có phải số nguyên

tố hay không ta sẽ đi kiểm tra xem N

có chia hết các số từ 2 đến N − 1 hay

không Nếu N không chia hết cho số

nào trong khoảng từ 2 đến N − 1 thì N

là số nguyên tố, ngược lại N chia hết

cho bất kì một số nào trong khoảng từ

2 đến N − 1 thì N không phải là số

nguyên tố

Sử dụng phép chia lấy phần dư

mod để kiểm tra tính chia hết

Bước 1: Nhập số tự nhiên N từ bàn

phím

Bước 2: Nếu N≤ 0 thông báo N không

phải là số tự nhiên, rồi chuyển đến

bước 4

Bước 3: Nếu N > 0:

3.1 i←2;

3.2 Trong khi N mod i <> 0,

ii+1;

3.3 Nếu i = N thì thông báo N

là số nguyên tố, rồi chuyển đến bước

4, không thì thông báo N không phải

là số nguyên tố;

Bước 4: Kết thúc.

Bài 2 :

Bước 1: Nhập số tự nhiên N từ bàn phím Bước 2: Nếu N≤ 0 thông báo N không phải là số

tự nhiên, rồi chuyển đến bước 4

Bước 3: Nếu N > 0:

3.1 i←2;

3.2 Trong khi N mod i <> 0, ii+1;

3.3 Nếu i = N thì thông báo N là số nguyên tố, rồi chuyển đến bước 4, không thì thông báo N không phải là số nguyên tố;

Bước 4: Kết thúc.

lập trình

Uses Crt;

Var n,i:integer;

Begin Clrscr;

write('Nhap vao mot so nguyen: ');readln(n);

If n<=1 then writeln('N khong la so nguyen to') else

begin i:=2;

while (n mod i<>0) do i:=i+1;

if i=n then writeln(n,' la so nguyen to!') else writeln(n,' khong phai la so nguyento!'); end;

readln end

Program Bai2 Uses Crt;

Var n: Integer;

S : Real;

Begin Clrscr;

S:= 0; n:= 1;

While 1/n>0.001 do begin

If n mod 2 <>0 then S:= S+ 1/n;

n:= n+1;

end;

Writeln('so N can tim la: ',N:5);

Readln;

End

Trang 4

?đọc chương trình trong SGK, đối

chiếu việc sử dụng câu lệnh để mô tả

thuật toán trên đây

? có nhất thiết phải kiểm tra các ước

lần lượt từ 1 đến n không ?

HS : trả lời

GV : gợi ý HS để tìm ra chỉ cần kiểm

tra đến Trunc(n/2)

Bài2 - BTVN

? xác định Input và Output của bài

toán:

? Nêu cách giải

4.Củng cố

- Nêu cấu trúc tổng quát của câu lệnh lặp while do

5.Hướng dẫn về nhà

- Ôn tập lại kiến thức đã học

Ngày đăng: 07/05/2015, 11:00

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w