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

bai tap cau lenh lap

5 9K 5

Đ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 69,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 biết trước for…do trong Pascal.. - Củng cố kiến thức vòng lặp với số lần biết trước và câu lệnh ghép.. - Sử dụng được câu lệnh ghép

Trang 1

-Tuần : 21

Tiết : 39+40

Ngày soạn: 09/01/2011 Ngày dạy : 10/01/2011

BÀI TẬP

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 biết trước for…do trong Pascal

- Hiểu lệnh ghép trong Pascal

- Củng cố kiến thức vòng lặp với số lần biết trước và câu lệnh ghép

2 Kỹ Năng

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

- Sử dụng được câu lệnh ghép viết một số bài toán đơn giản

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

3 Thái độ

- Có ý thức, kỹ luật, nghiêm túc, tích cực làm các dạng bài tập ứng dụ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, 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 lặp đơn, câu lệnh lặp ghép, có biết ý nghĩa của câu lệnh lặp

3 Bài mới

- Trong bài học trước em đã được học về câu lệnh lặp, bài học hôm nay chúng

ta làm các bài tập có sử dụng câu lệnh lặp

Trang 2

HĐ 1: Bài tập dạng

lí thuyết.

GV: Đưa ra đề bài

toán, yêu cầu học

sinh nghiên cứu theo

nhóm

GV: Nhận xét kết

quả cuối cùng

GV: Đưa bài tập 2

lên bảng, yêu cầu

một học sinh đứng

tại chỗ trả lời

GV: Kết luận kết quả

của bài 2

GV: Đưa ra đề bài

toán, yêu cầu học

sinh nghiên cứu theo

nhóm

GV: Nhận xét.

HĐ 2: Bài tập dạng

thực hành.

GV: Đưa bài tập.

GV: Ghi kết quả suy

luận của học sinh lên

bảng

Bài 1: SGK/T60 HS: Hoạt động

theo nhóm tìm câu trả lời

HS: Đại diện của

hai nhóm trình bày kết quả của nhóm

Bài 2: SGK/T60 HS: Một học

sinh đứng tại chỗ trả lời bài tập 2

một học sinh khác đứng tại chỗ nhận xét

Bài 3: SGK/T60 HS: Hoạt động

theo nhóm tìm câu trả lời

HS: Đại diện của

hai nhóm trình bày kết quả của nhóm

Bài 4: SGK/T61 HS: Suy luận kết

quả theo lí thuyết

HS: gõ chương

trình vào máy và chạy thử

HS: So sánh kết

Bài 1: SGK (T60)

Ví dụ: Các ngày trong tuần các em đều

lặp đi lặp lại hoạt động buổi sáng đến trường và buổi trưa trở về nhà

Các em học bài thì phải đọc đi đọc lại nhiều lần cho đến khi thuộc bài

Bài 2: SGK (T60)

Câu lệnh lặp có tác dụng chỉ dẫn cho máy tính thực hiện lặp lại một câu lệnh hay một nhóm câu lệnh với một số lần nhất định

Câu lệnh lặp làm giảm nhẹ công sức của người viết chương trình

Bài 3 : SGK (T60)

Điều kiện cần kiểm tra trong câu lệnh lặp for … do là giá trị của biến đếm phải nằm trong đoạn [giá trị đầu, giá trị cuối ], nếu thoả mãn điều kiện đó thì câu lệnh sẽ được thực hiện, nếu không thoả mãn câu lệnh sẽ bị bỏ qua

Bài 4: SGK (T61)

Giá trị của j sau mỗi lần lặp sẽ được tăng thêm 2 đơn vị 2, 4, 6, 8, 10, 12

Gõ chương trình vào máy chạy thử:

Program bai_tap_4;

Uses crt;

Var i,j:integer;

Trang 3

-GV: Đưa ra đề bài

toán và yêu cầu một

học sình đứng tại vị

trí để trả lời bài tập

GV: Nhận xét kết

quả câu trả lời của 2

bạn

GV: Đưa ra bài tập.

GV: Giúp các em

hoàn thành thuật

toán

Bài 5: SGK/T61 HS: Một em

đứng tại vị trí trả lời, 1 em khác nhận xét

Bài 6: SGK/T61 HS: Làm việc

theo nhóm, sau 5 phút đại diện của

2 nhóm sẽ lên báo báo kết quả

Các nhóm khác nhận xét

End

Bài 5: SGK (T61)

Tất cả các câu lệnh đều không hợp lệ vì:

a) Giá trị đầu lớn hơn giá trị cuối

b) Giá trị đầu và giá trị cuối có kiểu là số thực không cùng kiểu với biến đếm c) Sai cấu trúc câu lệnh

d) Sai cấu trúc câu lệnh

e) Biến đếm có kiểu là kiểu số thực nên không hợp lệ

Bài 6: SGK (T 61)

Mô tả thuật toán

Bước 1: nhập 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 về bước 2 Bước 5: Ghi kết quả A ra màn hình và

kết thúc thuật toán

4 Củng cố

- Giáo viên hệ thống lại toàn bộ nội dung bài học

- Giáo viên nhận xét tiết học, rút kinh nghiệm tiết học

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

- Học bài theo sách giáo khoa và vở ghi, ôn lại các kiến thức chính đã học và luyện viết, làm đi làm lại nhiều lần

- Học kĩ lí thuyết, viết chương trình tính tông 100 số tự nhiên, N số tự nhiên đầu tiên

- về nhà viết chương trình pascal bài 6 SGK (T61)

- Đọc bài mới tuần sau học

Trang 4

-Bài 1 Thuật toán:

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

Bước 2 A 1, i 0 (A là biến lưu luỹ thừa bậc n của x)

Bước 3 ii + 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à luỹ thừa bậc n của x và kết thúc thuật toá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.

Bài 2 Thuật toán:

Bước 1 Nhập số n

Bước 2 A←−32768 (gán SNN 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 toán.

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

Uses crt;

Var n,i,Max,A: integer;

Begin

Trang 5

-Begin

Write('Nhap so thu ',i,':'); Readln(A);

if Max<A then Max:=A

End;

Writeln('So lon nhat: ',Max);

End.

Lưu ý: Trong chương trình trên chúng ta chỉ sử dụng hai biến AMax để giải

bài toá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 để lưu 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)

Bài 3 Lời giải bài này tương tự như lời giải của bài 9 ở trên (xem thuật toán trong lời

giải bài tập 5a, bài 5) Chương trình Pascal có thể như sau:

Uses crt;

Var n,i,SoDuong,A: integer;

Begin

Clrscr;

Write('Nhap N='); Readln(n);

If n>0 then

Begin

For i:=1 to n do

Write('Nhap so thu ',i,':'); Readln(A);

If A>0 then SoDuong:=SoDuong+1 End;

Writeln('So cac so duong = ',SoDuong)

Else writeln('n phai > 0!');

End.

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

TỪ KHÓA LIÊN QUAN

w