Ngôn ngữ lập trình Pascal Năm học: 2008-2009
Tiết : 39 -40
BÀI 7 : CẤU TRÚC LẶP
I.Mục đích yêu cầ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
II. Chuẩn bò bài dạy :
GV:máy chiếu, chương trình minh hoa minh họa
HS: Xem trước và chuẩn bò các ví dụ.
III.Tổ chức hoạt động dạy và học :
1 . Kiểm tra bài cũ :
2.Tổ chức hoạt động dạy và học :
Hoạt động của thầy và trò Ghi bảng
Hoạt động 1 : Các công việc phải thực hiện
nhiều lần
Gv: Trong cuộc sống hằng ngày, nhiều hoạt
động được thực hiện lặp đi lặp lại nhiều
lần.Em cho ví dụ ?
HS: . . ..( cho ví dụ )
GV: Nhận xét , phân tích
Gv: Khi viết chương trình máy tính cũng
vậy, trong nhiều trường hợp ta cũng cần
phải viết lặp lại nhiều câu lệnh thực hiện
một phép tính nhất đònh.
Hoạt động 2 : Câu lệnh lặp - một lệnh thay
cho nhiều lệnh
Giả sử ta cần vẽ ba hình vuông có cạnh 1
Hoạt động chính khi giải bài toán này là
thực hiện phép cộng. Thuật toán trong ví dụ
3, bài 5 đã mô tả việc thực hiện lặp lại phép
cộng 100 lần.
Hoạt động 3: 3. Ví dụ về câu lệnh lặp
GV: Khi gặp câu lệnh lặp trên, câu lệnh
được thực hiện bắt đầu với giá trò biến đếm
bằng giá trò đầu. Sau đó giá trò biến đếm
tăng dần một đơn vò từ giá trò đầu đến giá
trò cuối và câu lệnh được thực hiện mỗi lần
tăng biến đếm cho đến khi biến đếm vượt
quá giá trò cuối thì kết thúc. Như vậy biến
đếm phải được khai báo là kiểu nguyên và
giá trò cuối phải không nhỏ hơn giá trò đầu.
HS: Suy nghó thuật tóan
GV: Cùng học sinnh viết chương trình
Gv: Trong ví dụ 4, các câu lệnh đơn giản
writeln('O') và delay(300) được đặt trong
Hình 33
Thuật toán sau đây sẽ mô tả các bước để vẽ
hình vuông:
Hình 34
Bước 1. k ← 0 (k là số đoạn thẳng đã vẽ
được).
Bước 2. Vẽ đoạn thẳng 2 cm đơn vò độ dài và
quay thước 90
o
sang phải.
Bước 3. k ← k +1. Nếu k < 4 thì trở lại bước 2;
ngược lại, kết thúc thuật toán.
khi nói câu lệnh, ta có thể hiểu đó là câu
lệnh đơn hoặc câu lệnh ghép.
Trong thực tế, để có mười kết quả, cho dù
là giống nhau hay khác nhau, chúng ta phải
thực hiện hoạt động mười lần (cùng một
hoạt động giống nhau hay các hoạt động
khác nhau). Máy tính thực hiện công việc
xử lí thông tin thay cho con người và cũng
phải thực hiện ngần ấy hoạt động. Do vậy
câu lệnh lặp giúp giảm nhẹ công sức viết
chương trình máy tính.
Dòch và chạy chương trình này, ta sẽ thấy
kết quả như ở hình 35 dưới đây:
Hình 35
Lưu ý. Vì với N lớn, tổng của của N số tự
nhiên đầu tiên có thể rất lớn nên trong
chương trình trên ta sử dụng một kiểu dữ
liệu mới của Pascal, kiểu longint (được khai
báo cho biến S). Đây là cũng kiểu số
nguyên, nhưng có thể lưu các số nguyên
trong phạm vi từ −2
31
đến 2
31
− 1, lớn hơn
nhiều so với kiểu Integer (chỉ từ −2
15
đến 2
15
S:=0;
for i := 1 to N do S:=S+i;
writeln('Tong cua ',N,' so tu nhien dau
tien S = ',S);
end.
Ví dụ 6. Ta kí hiệu N! là tích N số tự nhiên
đầu tiên.
N! = 1.2.3. ... N
program Tinh_Giai_thua;
var N,i: Integer;
P: longint;
begin
write('N = '); readln(N);
P:=1;
for i:=1 to N do P:=P*i;
writeln(N,'! = ',P);
end.
3. Củng cố – Luyện tập :
GV: Nguyễn Thanh Thái Trang 53 Trường THCS Gò Đen
Ngôn ngữ lập trình Pascal Năm học: 2008-2009
- Nhắc lại cấu trúc For . . .Do
- HS đọc ghi nhớ SGK
4. Hướng dẫn học ở nhà :
- Học theo nội dung .
- Về nhà làm bài tập trang 60-61.
= = = o0o = = =
Tiết : 41-42
BÀI TẬP
I.Mục đích yêu cầu:
1. Kiến thức 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
GV: Nguyễn Thanh Thái Trang 54 Trường THCS Gò Đen
Tuần : . .. . .
Ngày soạn : . . ./ . . . / . . . . .
Ngày dạy : . . ../. . . ./. . .. . .
Ngôn ngữ lập trình Pascal Năm học: 2008-2009
-GV: GV: Đưa ra đề bài toán, yêu cầu học sinh
nghiên cứu theo nhóm.
-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.
- GV: Nhận xét.
Hoạt động 2 : Bài tập dạng thực hành
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.
HS: 1em đứng tại vò trí trả lời, 1 em khác nhận
xét.
GV: Nhận xét kết quả câu trả lời của 2 bạn.
GV: Đưa bài tập
HS: Suy luận kết quả theo lí thuyết
GV: Ghi kết quả suy luận của học sinh lên
bảng
HS: gõ chương trình vào máy và chạy thử
HS: So sánh kết quả nhận được với kết quả đã
suy lận
1 HS giải thích kết quả thu được
GV Đưa ra bài tập 6.
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
GV: Giúp các em hoàn thành thuật toán.
Bước 2: A<- 2\i(i+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.
Dạng 3 : Bài tập vận dụng
Bài tập 1: Nhập vào n số nguyên từ bàn
phím, tìm số lớn nhất trong dãy số vừa
GV: Nguyễn Thanh Thái Trang 55 Trường THCS Gò Đen
Ngôn ngữ lập trình Pascal Năm học: 2008-2009
Gv: hướng dẫn học sinh cách làm và viết
chương trình lên bảng và yêu cầu học sinh đọc
hiểu.
HS: đọc lại chương trình giáo viên đã viết trên
bảng và tìm hiểu từng câu lệnh
GV: yêu cầu một học sinh đứng tại vò trí diễn
tả tuần tự ý nghóa của chương trình thông qua
diễn tả công việc của từng lệnh trong chương
trình.
GV: diễn tả lại một lần để học sinh hiểu sâu
hơn về chương trình
Giáo viên đưa ra nội dung bài tập,
HS phân tích bài toán tìm hướng giải quyết.
GV: Đưa ra công thức tính day thừa:
day thừa = 1*2*3*4*5*….*n
HS: dựa vào bài tập 1 viết chương trình cho bài
toán. (viết theo nhóm).
Đại diện của nhóm đứng lên bảng trình bày
kết quả. Các nhóm khác nhận xét, rút kinh
nghiệm.
For i:= 1 to n do
Kq:=kq*i;
Writeln(‘ket qua la’,kq); readln
End.
3. Củng cố – Luyện tập :
Nhấn mạnh ý nghóa và công dụng, cách sử dụng vòng lặp for … do
4. Hướng dẫn học ở nhà :
- Học sinh về nhà làm bài tập:
1. tính tổng của n số tự nhiên đầu tiên
2. Viết chương trình tìm xem có bao nhiêu số dương trong n số nhập vào từ bàn phím.
= = = o0o = = =
GV: Nguyễn Thanh Thái Trang 56 Trường THCS Gò Đen
Ngôn ngữ lập trình Pascal Năm học: 2008-2009
Tiết : 43-44. Bài thực hành 5
SỬ DỤNG LỆNH LẶP FOR . .. DO …
I.Mục đích yêu cầu:
1. Kiến thức Vận dụng kiến thức của vòng lặp for… do, câu lệnh ghép để viết chương
trình.
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;
Rèn luyện kỹ năng đọc hiểu chương trình có sử dụng vòng lặp for ….. do.
3. Thái độ: Thái độ học tập nghiêm túc, tích cực làm các bài tập thực hành.
II. Chuẩn bò bài dạy :
GV:. - Giáo án, SGK, phòng máy, phần mềm pascal
HS: - SGK, vở ghi, bút
III.Tổ chức hoạt động dạy và học :
1 . Kiểm tra bài cũ :
Chúng ta đã nghiên cứu lý thuyết về vòng lặp for … do. để biết vòng lặp chạy như thế nào thì
hôm nay chúng ta cùng nhau đi vào tiết thực hành. Giáo viên ghi tên bài học lên bảng.
Ngày soạn : . . ./ . . . / . . . . .
Ngôn ngữ lập trình Pascal Năm học: 2008-2009
GV: Đưa ra nội dung của bài toán.
HS: Nghiên cứu bài toán, tìm input và output.
GV: Đưa nội dung chương trình lên màn hình,
yêu cầu học sinh đọc hiểu chương trình.
HS: đọc, phân tích câu lệnh tìm hiểu hoạt động
của chương trình.
GV: yêu cầu một học sinh đứng tại vò trí trình
bày hoạt động của chương trình, các nhóm
khác cùng tham gia phân tích.
HS: tham gia hoạt động của giáo viên
GV: yêu cầu học sinh lập bảng hoạt động của
chương trình theo mẫu:
Giả sử N=2:
Bước i i<=10 Writeln(n,’.’,i,’=’,n*i)
1 1 đúng 2.1=2
HS: các nhóm lập bảng và đại diện nhóm báo
cáo kết quả.
GV: nhận xét.
GV: cho chương trình chạy trên máy, yêu cầu
học sinh quan sát kết quả.
Giáo viên cho chạy kết quả của bài thực hành
Bang_cuu_chuong Yêu cầu học sinh quan sát
kết quả và nhận xét khoảng cách giữa các
hàng, cột.
HS: quan sát và đưa ra nhận xét.
? Có cách nào để khoảng cách giữa các hàng
và các cột tăng lên?
GV: Giới thiệu câu lệnh gotoxy và where.
Var i, n: integer;
Begin
Clrscr;
Writeln(‘Nhap vao so n’); readln(n);
Writeln(‘Bang nha’,n);
Writeln;
For i:=1 to 10 do
Writeln(n,’x’,i:2,’=’,n*i:3);
Readln;
End.
Bài 2 sgk (T63)
a) Giới thiệu lệnh gotoxy(), wherex
- Gotoxy(a,b)
Trong đó: a là chỉ số cột, b là chỉ số hàng
- ý nghóa của câu lệnh là đưa con trỏ về
cột a hàng b.
- Wherex: cho biết số thứ tự của cột,
wherey cho biết số thứ tự của hàng.
* Lưu ý: Phải khai báo thư viện crt trước
khi sử dụng hai lệnh trên
GV: Nguyễn Thanh Thái Trang 58 Trường THCS Gò Đen
Ngôn ngữ lập trình Pascal Năm học: 2008-2009
HS: quan sát và nhận xét.
Hoạt động 2: Sử dụng lệnh For lồng trong for
GV: giới thiệu cấu trúc lệnh for lồng, hướng
dẫn học sinh cách sử dụng lệnh.
HS: ghi chép cấu trúc và lónh hội
GV: đưa nội dung chương trình bài thực hành 3
lên màn hình, yêu cầu học sinh đọc chương
trình, tìm hiểu hoạt động của chương trình.
Begin
Clrscr;
For i:=1 to 9 do
Begin
For j:=0 to 9 do
Writeln(10*i+j:4);
Writeln;
End;
Readln;
End.
3. Củng cố – Luyện tập :
Nhận xét rút kinh nghiệm giờ thực hành.
4. Hướng dẫn học ở nhà :
học sinh về nhà sử dụng lệnh gotoxy để chỉnh sửa lại bài thực hành số 3 cho kết quả in ra
màn hình
= = = o0o = = =
GV: Nguyễn Thanh Thái Trang 59 Trường THCS Gò Đen
Ngôn ngữ lập trình Pascal Năm học: 2008-2009
Tiết : 45-46. Phần mềm học tập
häc vÏ h×nh víi phÇn mỊm geogebra
I.Mục đích yêu cầu:
- Häc sinh biÕt ®ỵc ý nghÜa cđa h×nh häc geogebra. Lµm quen víi phÇn mỊm nµy nh khëi ®éng, c¸c
thanh c«ng cơ, c¸c nót lƯnh .. .
- N¾m ®ỵc c¸ch vÏ mét h×nh nµo ®ã khi sư dơng phÇn mỊm geogebra nµy.
- Høng thó vµ yªu thÝch m«n häc.
II. Chuẩn bò bài dạy :
- Gi¸o viªn: Gi¸o ¸n, SGK. SGV, phßng m¸y.
- HS: ®äc tµi liƯu tríc
III.Tổ chức hoạt động dạy và học :
1 . Kiểm tra bài cũ :
GV: Nguyễn Thanh Thái Trang 60 Trường THCS Gò Đen
Tuần : . .. . .
Ngày soạn : . . ./ . . . / . . . . .
Ngày dạy : . . ../. . . ./. . .. . .
Ngôn ngữ lập trình Pascal Năm học: 2008-2009
Giới thiệu màn hình chính
Hs: thực hiện
GV: cho biết các thành phần trong màm hình chính.
HS: Bảng chọn Thanh công cụ
Công cụ di chuyển
có thể chọn nhiều đối tượng bằng cách nào?
Hs : Nhấn phím CTRL khi chọn
GV: Khi đang sử dụng công cụ khác chuyển về
công cụ di chuyển bằng cách nào ?
Hs : nhấn phím ESC
GV: Nháy chuột giới thiệu các công cụ liên
quan đến đối tượng điểm?
HS: Quan sát
Gv: Giới thiệu các nút lệnh và thực hiện
HS: Quan sát và thực hiện lại .
b) Giới thiệu màn hình GeoGebra tiếng
Việt
Màn hình làm việc chính của phần mềm
bao gồm bảng chọn, thanh công cụ và khu
vực thể hiện các đối tượng.
Bảng chọn là hệ thống các lệnh chính của
phần mềm Geogebra.
Thanh công cụ của phần mềm chứa các
công cụ làm việc chính.
c) Giới thiệu các công cụ làm việc chính
hiện của phần mềm.
HS: Giới thiệu thao tác và vẽ các đường
thẳng, tia, đọan thẳng
HS: Quan sát và ghi bài ngắn ngọn
GV: Hai đường thẳng thường co các quan hệ
nào ?
HS: .. . .
Gv: Giới thiệu các nút lệnh để vẽ các quan
hệ?
Hs: Quan sát
GV: Giới thiệu các thao tác thực hiện
đường thẳng
Các công cụ , , dùng để tạo
đường, đoạn, tia đi qua hai điểm cho trước.
Thao tác : chọn công cụ, sau đó nháy
chuột chọn lần lượt hai điểm trên màn
hình.
Công cụ sẽ tạo ra một đoạn thẳng đi
qua một điểm cho trước và với độ dài có
thể nhập trực tiếp từ bàn phím.
Thao tác: chọn công cụ, chọn một điểm
cho trước, sau đó nhập một giá trò số vào
cửa sổ có dạng:
Nháy nút áp dụng sau khi đã nhập xong
độ dài đoạn thẳng.
Chú ý: Trong cửa sổ trên có thể nhập một
chuỗi kí tự là tên cho một giá trò số.
• Các công cụ tạo mối quan hệ hình
học
- Công cụ dùng để tạo đường thẳng
- Luyện tập các thao tác vẽ hình.
= = = o0 = = =
Tiết : 47-48. Phần mềm học tập
HỌC VẼ HÌNH VỚI PHẦN MỀM GEOGEBRA ( tt )
I.Mục đích yêu cầu:
- Häc sinh biÕt ®ỵc ý nghÜa cđa h×nh häc geogebra. Lµm quen víi phÇn mỊm nµy nh khëi
®éng, c¸c thanh c«ng cơ, c¸c nót lƯnh .. .
- N¾m ®ỵc c¸ch vÏ mét h×nh nµo ®ã khi sư dơng phÇn mỊm geogebra nµy.
- Høng thó vµ yªu thÝch m«n häc.
II. Chuẩn bò bài dạy :
- Gi¸o viªn: Gi¸o ¸n, SGK. SGV, phßng m¸y.
- HS: ®äc tµi liƯu tríc
III.Tổ chức hoạt động dạy và học :
1 . Kiểm tra bài cũ :
Hs 1 : Hãy kể các thao tác vẽ các đối tượng liên quan đến điểm?
HS 2 : Hãy kể các thao tác vẽ các đối tượng liên quan đến các quan hệ hình học?
2.Tổ chức hoạt động dạy và học :
Hoạt động của thầy và trò Ghi bảng
GV: Nguyễn Thanh Thái Trang 63 Trường THCS Gò Đen
Tuần : . .. . .
Ngày soạn : . . ./ . . . / . . . . .
Ngày dạy : . . ../. . . ./. . .. . .
Ngôn ngữ lập trình Pascal Năm học: 2008-2009
C¸c c«ng cơ liªn quan ®Õn h×nh trßn
- HS quan s¸t cïng th¶o ln nhãm vµ nhËn biÕt ý
nghÜa c¸c c«ng cơ vÏ
• Các công cụ liên quan đến hình tròn
- Công cụ tạo ra hình tròn bằng
cách xác đònh tâm và một điểm trên hình
tròn. Thao tác: chọn công cụ, chọn tâm