Tải bản đầy đủ (.doc) (81 trang)

ngày soạn ngày soạn 02012010 ngày dạy 8a 05012010 8b 05012010 tiết 37 bài 7 câu lệnh lặp 1 mục tiêu a kiến thức 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

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 (1.46 MB, 81 trang )

<span class='text_page_counter'>(1)</span><div class='page_container' data-page=1>

Ngày soạn: 02/01/2010 Ngày dạy: 8A: 05/01/2010
8B: 05/01/2010

<i>Tiết 37:</i>



<b> Bài 7: CÂU LỆNH LẶP</b>


<b>1. Mục tiêu:</b>


<i>a. Kiến thức:</i>


- 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.


<i>b. Kỹ năng:</i>


- Hiểu hoạt động của câu lệnh với số lần biết trước <b>for...do </b>trong Pascal.
<i>c. Thái độ:</i>


- u thích mơn học, nghiêm túc trong giờ học.
<b>2. Chuẩn bị của giáo viên và học sinh:</b>


<i>a. Chuẩn bị của giáo viên: </i>


- Giáo án, phòng máy, máy chiếu, phần mềm Pascal.
<i>b. Chuẩn bị của học sinh:</i>


- Kiến thức cũ, sách, vở.
<b>3. Tiến trình bài dạy</b>


<i>a. Kiểm tra bài cũ: Không KT</i>


<i>b. Dạy nội dung bài mới:40’</i>


<b>HOẠT ĐỘNG CỦA THẦY VÀ TRÒ</b> <b>NỘI DUNG KIẾN THỨC</b>


GV: Nêu một số công việc thường ngày


<b>1. Các công việc phải thực hiện nhiều</b>
<b>lần: 15’</b>


</div>
<span class='text_page_counter'>(2)</span><div class='page_container' data-page=2>

trong cuộc sống


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.


Có những hoạt động mà chúng ta
thường thực hiện lặp lại với một số lần
nhất định và biết trước, chẳng hạn đánh
răng mỗi ngày hai lần, mỗi ngày tắm
một lần,... Chúng ta cịn lặp lại những
cơng việc với số lần không thể xác định
trước: học cho đến khi thuộc bài, nhặt
từng cọng rau cho đến khi xong,...


GV: Giới thiệu câu lệnh lặp trong
Pascal


HS: Ghi chép


<i>Khi viết chương trình máy tính cũng vậy.</i>


<i>Để chỉ dẫn cho máy tính thực hiện đúng</i>
<i>cơng việc, trong nhiều trường hợp ta cũng</i>
<i>cần phải viết lặp lại nhiều câu lệnh thực</i>
<i>hiện một phép tính nhất định.</i>


<b>2. Câu lệnh lặp - một lệnh thay cho</b>
<b>nhiều lệnh: 25’</b>


<i><b>Ví dụ 1. Giả sử ta cần vẽ ba hình vng</b></i>
có cạnh 1 đơn vị như hình 33. Mỗi hình
vng là ảnh dịch chuyển của hình bên
trái nó một khoảng cách 2 đơn vị. Do đó,
ta chỉ cần lặp lại thao tác vẽ hình vng
ba lần. Việc vẽ hình có thể thực hiện được
bằng thuật tốn sau đây:


<i>Bước 1. Vẽ hình vuông (vẽ liên tiếp bốn</i>
cạnh và trở về đỉnh ban đầu).


</div>
<span class='text_page_counter'>(3)</span><div class='page_container' data-page=3>

GV: Cho ví dụ về vẽ hình vng và giải
thích ví dụ cho học sinh


GV: Cho ví dụ về tính tổng 100 số tự
nhiên giải thích ví dụ cho học sinh


<i> Hình 33</i>


Riêng với bài tốn vẽ một hình vng (h.
34), thao tác chính là vẽ bốn cạnh bằng
nhau, hay lặp lại bốn lần thao tác vẽ một


đoạn thẳng. Sau mỗi lần vẽ đoạn thẳng,
thước kẻ được quay một góc 90o<sub> sang phải</sub>
tại vị trí của bút vẽ. Thuật tốn sau đây sẽ
mơ tả các bước để vẽ hình vng:


<i>Hình 34</i>


<i>Bước 1. k </i> 0 (k là số đoạn thẳng đã vẽ
được).


<i>Bước 2. Vẽ đoạn thẳng 1 đơn vị độ dài và</i>
quay thước 90o<sub> sang phải.</sub>


<i>Bước 3. k </i> <i>k +1. Nếu k ≤ 4 thì trở lại</i>
bước 2; ngược lại, kết thúc thuật toán.
Lưu ý rằng, biến k được sử dụng như là
biến đếm để ghi lại số cạnh đã vẽ được.
<i><b>Ví dụ 2. Giả sử cần tính tổng của 100 số</b></i>
tự nhiên đầu tiên, tức là tính:


<i>S = 1 + 2 + 3 + ... + 100.</i>


</div>
<span class='text_page_counter'>(4)</span><div class='page_container' data-page=4>

phép cộng 100 lần.
HS: Ghi vở


Cách mơ tả các hoạt động lặp trong thuật
tốn như trong ví dụ trên được gọi là cấu
<i>trúc lặp.</i>


Mọi ngơn ngữ lập trình đều có "cách" để


chỉ thị cho máy tính thực hiện cấu trúc lặp
với một câu lệnh. Đó là các câu lệnh lặp.
<i>c. Củng cố, luyện tập: 4’</i>


- Nhắc lại các hoạt động lặp trong cuộc sống
<i>d. Hướng dẫn học sinh tự học ở nhà: 1’</i>


- Về nhà xem lại phần còn lại.
- Học bài cũ.


Ngày soạn: 05/01/2010 Ngày dạy: 8A: 08/01/2010


</div>
<span class='text_page_counter'>(5)</span><div class='page_container' data-page=5>

<b> Bài 7: CÂU LỆNH LẶP (T2)</b>


<b>1. Mục tiêu:</b>


<i>a. Kiến thức:</i>


- 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.


<i>b. Kỹ năng</i>


- 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


<i>c. Thái độ</i>


- Tập trung cao độ, nghiêm túc trong giờ học.


<b>2. Chuẩn bị của giáo viên và học sinh:</b>


<i>a. Chuẩn bị của giáo viên: </i>


- Giáo án, phòng máy, máy chiếu, phần mềm Pascal.
<i>b. Chuẩn bị của học sinh:</i>


- Kiến thức cũ, sách, vở.
<b>3. Tiến trình bài dạy:</b>


<i>a. Kiểm tra bài cũ: Đan xen trong tiết học</i>
<i>b. Dạy nội dung bài mới: 37’</i>


HOẠT ĐỘNG CỦA GV VÀ HS NỘI DUNG


GV: Giới thiệu câu lệnh lặp trong
Pascal


HS: Chú ý quan sát


GV: Nêu cú pháp của câu lệnh lặp


<b>3. Ví dụ về câu lệnh lặp: 15’</b>


</div>
<span class='text_page_counter'>(6)</span><div class='page_container' data-page=6>

HS: chú ý và ghi vở


GV: Nêu một ví dụ về câu lệnh lặp


GV Nêu Ví dụ Để in một chữ "O" trên
màn hình, ta có thể sử dụng lệnh:



<i><b>Câu lệnh lặp đơn giản nhất trong </b></i>
<i><b>Pascal có dạng:</b></i>


<b>for </b><biến đếm> <b><sub>:=</sub></b> <giá trị
<i>đầu></i><b><sub> to</sub></b> <giá trị cuối> <b><sub>do </sub></b>
<câu lệnh><b><sub>;</sub></b>


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
<i>đếm bằng giá trị đầu. Sau đó giá trị </i>
<i>biến đếm tăng dần một đơn vị từ giá trị </i>
<i>đầu đến giá trị cuối và câu lệnh được </i>
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ị
<i>cuối phải khơng nhỏ hơn giá trị đầu.</i>
<i><b>Ví dụ 3. Chương trình sau sẽ in ra màn </b></i>
hình thứ tự lần lặp:


<b>program Lap;</b>
<b>var i: Integer;</b>
<b>begin </b>


<b>for i := 1 to 10 do</b>
writeln('Day la lan
lap thu ',i);


<b>end. </b>



</div>
<span class='text_page_counter'>(7)</span><div class='page_container' data-page=7>

HS: Đọc kỹ ví dụ


GV: Trình bày bằng các câu lệnh Pascal


hình, ta có thể sử dụng lệnh:
writeln('O');


HS: Quan sát các câu lệnh trong chương
trình.


Nếu muốn viết chương trình mơ phỏng
một quả trứng rơi từ trên cao xuống, ta
có thể lặp lại lệnh trên nhiều lần (ví dụ,
20 lần) như trong chương trình sau:


<b>Uses crt;</b>


<b>Var i: integer;</b>
<b>begin</b>


Clrscr;


<b>for i:=1 to 20 do </b>
<b>begin writeln('O'); </b>
delay(100) end;


<b>end.</b>


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:


</div>
<span class='text_page_counter'>(8)</span><div class='page_container' data-page=8>

GV: Cho ví dụ về tính tổng và tích câu
lệnh lặp


VD: Ví dụ 5. Chương trình sau đây sẽ
tính tổng của N số tự nhiên đầu tiên, với
<i>N là số tự nhiên được nhập vào từ bàn</i>
phím


HS: Quan sát ví dụ.


<i>Hình 35</i>


<b>4. Tính tổng và tích bằng câu lệnh lặp</b>
<b>: 22’</b>


<i><b>Ví dụ 5. Chương trình sau đây sẽ tính </b></i>
tổng của N số tự nhiên đầu tiên, với N
là số tự nhiên được nhập vào từ bàn
phím (xem ví dụ 2).


<b>program Tinh_tong;</b>
<b>var N,i: Integer;</b>
S: longint;
<b>begin</b>


write('Nhap so N = ');
readln(N);



S:=0;


for i := 1 to N do
S:=S+i;


writeln('Tong cua
',N,' so tu nhien dau
tien S = ',S);


</div>
<span class='text_page_counter'>(9)</span><div class='page_container' data-page=9>

<i><b>Ví dụ 6. Ta kí hiệu N! là tích N số tự </b></i>
nhiên đầu tiên.


HS: Quan sát và tìm cách giải quyết
bài


GV: Hướng dẫn một số lệnh trong
Pascal sẽ được sử dụng trong bài.


HS: Viết chương trình


GV: Nhận xét


<i><b>Ví dụ 6. Ta kí hiệu N! là tích N số tự </b></i>
nhiên đầu tiên.


<i>N! = 1.2.3. ... N</i>


Dưới đây là chương trình tính N! với N
là số tự nhiên được nhập vào từ bàn
phím. Chương trình sử dụng một câu


lệnh lặp <b>for…do</b>:


<b>program Tinh_Giai_thua;</b>
<b>var N,i: Integer;</b>


P: longint;
<b>begin</b>


write('N = ');
readln(N);


P:=1;


for i:=1 to N do
P:=P*i;


writeln(N,'! = ',P);
<b>end. </b>


</div>
<span class='text_page_counter'>(10)</span><div class='page_container' data-page=10>

trị của nó đủ lớn.


<i>c. Củng cố, luyện tập: 7’</i>


- Nhắc lại một số ví dụ về câu lệnh lặp
- Viết lại dạng tổng quát của cấu trúc lặp?
<i>d. Hướng dẫn học sinh tự học ở nhà: 1’</i>


- Về nhà xem lại phần còn lại của bài, tiết sau làm các bài tập về câu lệnh lặp


Ngày soạn: 08/01/2010 Ngày dạy: 8A: 12/01/2010



8B: 12/01/2010

<i>Tiết 39:</i>



<b>BÀI TẬP </b>


<b>1. Mục tiêu</b>


<i>a. Kiến thức:</i>


- 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.


<i>b. Kỹ năng</i>


- Hiểu hoạt động của câu lệnh với số lần biết trước <b>for...do </b>trong Pascal.
<i>c. Thái độ</i>


- u thích mơn học, nghiêm túc trong giờ học.
<b>2. Chuẩn bị của giáo viên và học sinh:</b>


<i>a. Chuẩn bị của giáo viên: </i>


</div>
<span class='text_page_counter'>(11)</span><div class='page_container' data-page=11>

- Kiến thức cũ, sách, vở.
<b>3. Tiến trình bài dạy:</b>


<i>a. Kiểm tra bài cũ: Đan xen trong tiết học</i>
<i>b. Dạy nội dung bài mới: 40’</i>


HOẠT ĐỘNG CỦA GV VÀ HS NỘI DUNG



GV: Cho bài tập 1


? Hãy viết thuật toán để thực hiện bài toán
trên?


HS: Viết thuật toán để giải quyết bài tốn
trên.


GV: Nêu một ví dụ về câu lệnh lặp


<i><b>Bài tập 1: 15’</b></i>


<i>a) Có thể mơ tả các bước của thuật </i>
<i>tốn để vẽ hình ... a) như sau:</i>


<i>Bước 1. Xác định điểm bắt đầu vẽ là X. </i>
<i>Bước 2. Đặt i = 0 và đặt hướng = lên </i>
<i>trên.</i>


<i>Bước 3. Vẽ nửa đường tròn theo hướng </i>
<i>đã đặt. </i>


<i>Bước 4. i = i + 1. </i>


<i>Bước 5. Nếu i > 4, chuyển bước 6; </i>
<i>ngược lại, đặt hướng = hướng + 1 và </i>
<i>quay lại bước 3.</i>


<i>Bước 6. Kết thúc thuật toán. </i>



</div>
<span class='text_page_counter'>(12)</span><div class='page_container' data-page=12>

GV: Yêu cầu học sinh viết các thuật tốn để
thực hiện giải bài tốn tính tổng dãy số


GV: Kiểm tra và nhận xét


GV: Yêu cầu học sinh viết các thuật toán để
thực hiện giải bài tốn tính tổng dãy số


hướng trong thuật tốn.


<i>b) Thuật tốn tương tự như trên. Thao </i>
tác chính cần lặp lại là vẽ hình vng.
Tại mỗi bước, giữ ngun tâm hình
vng và thay đổi hướng vẽ một góc
30o<sub>.</sub>


<i><b>Bài tập 2: 13’</b></i>


<i>Thuật tốn tính tổng </i>


<i>A = </i> ... <sub>(</sub> 1 <sub>1</sub><sub>)</sub>
5


.
3


1
4
.
2



1
3
.
1


1








<i>n</i>
<i>n</i>
<i>Bước 1. Gán A </i><i> 0, i </i><i> 1. </i>
<i>Bước 2. A </i> <i><sub>i i</sub></i><sub>(</sub> 1<sub></sub><sub>2)</sub><i>.</i>


<i>Bước 3. i </i><i> i + 1. </i>


<i>Bước 4. Nếu i </i><i> n, quay lại bước </i>
<i>2. </i>


<i>Bước 5. Ghi kết quả A và kết thúc </i>
<i>thuật toán.</i>


<i><b>Bài tập 3:12’</b></i>


<i>Trừ d), tất cả các câu lệnh đều không</i>


<i>hợp lệ: </i>


<i>a) Giá trị đầu phải nhỏ hơn giá trị cuối;</i>
<i>b) Các giá trị đầu và giá trị cuối phải là</i>
<i>số nguyên; </i>


</div>
<span class='text_page_counter'>(13)</span><div class='page_container' data-page=13>

GV: Kiểm tra và nhận xét


<i>d) Thừa dấu chấm phẩy thứ nhất, nếu </i>
<i>như ta muốn lặp lại câu lệnh </i>


<i>writeln('A') mười lần, ngược lại câu </i>
<i>lệnh là hợp lệ; </i>


<i>e) Biến x đã được khai báo như là biến </i>
<i>có dữ liệu kiểu số thực và vì thế không </i>
<i>thể dùng để xác định giá trị đầu và giá </i>
<i>trị cuối trong câu lệnh lặp.</i>


<i>c. Củng cố, luyện tập: 4’</i>


? Nhắc lại các thuật toán trong các bài tập trên?
<i>d. Hướng dẫn học sinh tự học ở nhà: 1’</i>


- Về nhà xem các bài tập còn lại, tiết sau làm tiếp các bài tập


Ngày soạn: 11/01/2010 Ngày dạy: 8A: 15/01/2010


8B: 16/01/2010

<i>Tiết 40:</i>




<b>BÀI TẬP (Tiếp)</b>


<b>1. Mục tiêu</b>


</div>
<span class='text_page_counter'>(14)</span><div class='page_container' data-page=14>

- Biết nhu cầu cần có cấu trúc lặp trong ngơn ngữ lập trình.
<i>b. Kỹ năng:</i>


- 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


<i>c. Thái độ:</i>


- Nghiêm túc trong giờ học, u thích mơn học.
<b>2. Chuẩn bị của giáo viên và học sinh:</b>


<i>a. Chuẩn bị của giáo viên: </i>


- Giáo án, phòng máy, máy chiếu, phần mềm Pascal.
<i>b. Chuẩn bị của học sinh:</i>


- Kiến thức cũ, sách, vở.
<b>3. Tiến trình bài dạy:</b>


<i>a. Kiểm tra bài cũ: Đan xen trong tiết học</i>
<i>b. Dạy nội dung bài mới: 39’</i>


HOẠT ĐỘNG CỦA GV VÀ HS NỘI DUNG


GV: Cho bài tập yêu cầu học sinh viết
thuật toán và các lệnh để giải quyết bài


toán như sau:


HS: Viết thuật toán để giải quyết bài
toán trên.


<b>Bài tập 1: Thuật toán: 15’</b>


<i>Bước 1. Nhập các số n và x. </i>


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


</div>
<span class='text_page_counter'>(15)</span><div class='page_container' data-page=15>

GV: Nêu một ví dụ về câu lệnh lặp


GV: Cho bài tốn "Nhập n số tự nhiên
và tìm số lớn nhất trong các số vừa nhập
" yêu cầu học sinh viết thuật toán và các
lệnh để giải quyết bài toán.


HS: Viết thuật tốn, chương trình.


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


<i>Bước 5. Thông báo kết quả A là </i>
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:
<b>var n,i,x: integer; a: </b>


longint;


<b>begin</b>


write('Nhap x=');
readln(x);


write('Nhap n=');
readln(n);


A:=1;


<b>for i:=1 to n do </b>
A:=A*X;


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


<b>Bài tập 2) Thuật toán: 12’</b>


<i>Bước 1. Nhập số n. </i>


</div>
<span class='text_page_counter'>(16)</span><div class='page_container' data-page=16>

GV: Kiểm tra và nhận xét


nguyên cho A), i 1.


<i>Bước 3. Nhập số thứ i và gán giá </i>
trị đó vào biến A.


<i>Bước 4. Nếu Max < A, Max </i> A.


<i>Bước 5. i </i><i>i + 1.</i>


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


<i>Bước 7. Thông báo kết quả Max là</i>
số lớn nhất và kết thúc thuật tốn.
Chương trình Pascal có thể như sau:


<b>uses crt;</b>


<b>var n,i,Max,A: integer;</b>
<b>begin</b>


clrscr;


write('Nhap N=');
readln(n);


Max:=-32768;
<b>for i:=1 to n do</b>


begin write('Nhap so
thu ',i,':');


readln(A);


if Max<A then
Max:=A end;



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


</div>
<span class='text_page_counter'>(17)</span><div class='page_container' data-page=17>

GV: Cho bài toán yêu cầu học sinh viết
thuật toán và các lệnh để giải quyết bài
toán.


GV: Kiểm tra và nhận xét


<b>Bài tập 3) 12’</b>


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:


<b>uses crt;</b>


<b>var n,i,SoDuong,A: </b>
integer;


<b>begin</b>
clrscr;


write('Nhap N=');
readln(n);


<b>if n>0 then</b>
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


</div>
<span class='text_page_counter'>(18)</span><div class='page_container' data-page=18>

<b>end.</b>


<i>c. Củng cố, luyện tập: 5’</i>


? Nhắc lại các thuật toán trong các bài tập trên và một số lệnh sử dụng trong
chương trình?


<i>d. Hường dẫn học sinh tự học ở nhà: 1’</i>


- Về nhà xem lại các bài tập tiết sau chúng ta thực hành Bài thực hành 5


Ngày soạn: 16/01/2010 Ngày dạy: 8A: 19/01/2010


8B: 19/01/2010
<i><b>TiÕt 41</b></i>



<i><b>Bµi thùc hµnh 5:</b></i>

<b> </b>

<b>Sư dơng lệnh lặp for ...do (t1)</b>



<b>1. Mục tiêu: </b>


<i>a. KiÕn thøc: </i>


Vận dụng kiến thức của vòng lặp for… do, cõu lnh ghộp vit chng trỡnh.


<i>b. Kỹ năng: </i>


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.


<i>c.Thái độ: </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.
<b>2. Chuẩn bị:</b>


<i>a. Giáo viên:</i><b> </b>Giáo án, máy tính, sgk.


<i>b. Học sinh: </i>Kiến thức cũ, sgk
<b>3. Tiến trình bài dạy:</b>


<i>a. Kieồm tra bài cũ:</i><b> 6p</b>
Kiểm tra bài tập đã cho về nhà.
<i> Giới thiệu bài mới: </i>



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.
<i><b> 3. Dạy bài mới : 35p </b></i>


<b>HĐ của Thầy</b> <b>HĐ của Trò</b> <b>Ghi Bảng</b>


<b>Hot ng 1 20p</b>


- Vit chơng trình cho các bài tập đã
cho về nhà


- GV: yêu cầu mỗi dÃy gõ một bài vào
máy.


- GV: hỗ trợ học sinh trong quá trình


- HS: gõ chơng
trình, chạy thử


Bài 1: Tính tổng của n số tự nhiên
đầu tiên


Program tinh_tong;
Uses crt;


Var i, n: integer; tong: longin;
Begin


</div>
<span class='text_page_counter'>(19)</span><div class='page_container' data-page=19>

thùc hµnh.



- Sau khi kết quả chạy chơng trình đã
đúng, gv yêu cầu học sinh chữa bài của
mình đã làm ở nhà cho đúng theo
ch-ơng trình đã chạy.


<b>Hoạt đơng 2 - 15p</b>


Bảng cửu chơng.


- GV: a ra ni dung của bài tốn.
- 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.


- 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.


- 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ả.


chơng trình, và
báo cáo kết quả.


- HS: Nghiờn cu
bi tốn, tìm
input và output.
- HS: đọc, phân
tích câu lệnh



Writeln(‘Nhap vao so n’);
readln(n);


For i:=1 to n do
Tong: = Tong+i;


Writeln(‘Tong cđa’, n,’so tu nhien
dautien la’,tong);


Readln;
End.


<b>Bài 2. </b> 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


Program tinh_so_cac_so_duong;
Uses crt;


Var i,A, dem, n: integer;
Begin


Clrscr;
Dem:=0;


Writeln(‘Nhap vao so n’);
readln(n);


For i:=1 to n do


begin


writeln(‘nhap vao so thu’,i);
readln(A);


if A>0 then dem:=dem+1;
end;


Writeln(‘So cac so duong
la’,dem);


Readln;
End.


<b>Bài 3</b>: Viết chơng trình in ra màn
hình bảng nhân của một số từ 1
đến 9, và dừng màn hình để có
thể quan sát kết quả.


Program Bang_cuu_chuong;
Uses crt;


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> c. Củng cố, luyện tập 3p</b>


NhËn xÐt, rót kinh nghiƯm tiÕt thùc hµnh<b> </b>
<i>d. Hướng dẫn học sinh tự học ở nhà: 1p </i>


</div>
<span class='text_page_counter'>(20)</span><div class='page_container' data-page=20>

Ngày soạn: 18/01/2010 Ngày dạy: 8A: 22/01/2010
8B: 23/01/2010
<i><b>TiÕt 42</b></i>


<i><b>Bµi thùc hµnh 5:</b></i>

<b> </b>

<b>Sư dơng lƯnh lặp for ...do (t1)</b>



<b>1. Mục tiêu:</b>


<b>a</b><i>. Kiến thức:</i>


Vn dng kin thức của vòng lặp for… do, câu lệnh ghép để viết chơng trình, tìm
hiểu câu lệnh gotoxy(), where<>, lệnh for lng trong for


<i>b. Kỹ năng: </i>



Vit c chng 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.


<i>c.Thái độ: </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.


<b>2. chuÈn bÞ:</b>


<i>a. Giáo viên:</i><b> </b>Giáo án, máy tính, sgk.


<i>b. Học sinh: </i>Kiến thức cũ, sgk


<b>3. TIẾN TRÌNH BÀI DẠY:</b>


<i>a. Kiểm tra bài cũ:</i><b> </b>
<i><b> b. Dạy bài mới : </b></i><b>40p</b>


<b>HĐ của Thầy</b> <b>HĐ của Trò</b> <b>Ghi Bảng</b>


<b>Hot ng 1 – 20p</b>


- Làm đẹp màn hình kết quả
bằng lệnh gotoxy, where.
- 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.


<b>?</b> 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.


- yêu cầu học sinh mở chơng
trình Bang_cuu_chơng và sửa
lại chơng trình theo bài trên
màn hình của giáo viên.


- GV: yêu cầu học sinh quan
sát kết quả và so sánh với kết
quả của chơng trinh khi cha
dïng lÖnh gotoxy(5, where)


- HS: quan sát và đa ra nhận
xét.


<b>- </b>HS: gõ chơng trình vào
máy, sửa lỗi chính tả, chạy
chơng trình, quan sát kết
quả.


- HS: quan sát vµ nhËn xÐt.



Bµi 2 sgk (T63)


<b> Giíi thiƯu lƯnh gotoxy(),</b>
<b>where</b>


- 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.
- Where: cho biÕt sè thø tù
cña cét, wherey cho biết số
thứ tự của hàng.


<i><b>* Lu ý</b></i>: Phải khai báo th viƯn
<b>crt</b> tríc khi sư dơng hai lƯnh
trªn


a) ChØnh sưa chơng trình nh
sau:


Program Bang_cuu_chuong;
Uses crt;


Var i, n: integer;
Begin


Clrscr;



</div>
<span class='text_page_counter'>(21)</span><div class='page_container' data-page=21>

<b>Hoạt động 2 – 20p</b>


- 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.


- 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.


- GV: cho chạy chơng trình.


- HS: ghi chÐp cÊu tróc vµ
lÜnh héi


- HS: hoạt động theo nhóm,
tìm hiểu hoạt động của
ch-ơng trinh, đại diện của nhóm
báo cáo kết qu tho lun.


- HS : quan sát kết quả trên
màn hình.


readln(n);



Writeln(Bang nha,n);
Writeln;


For i:=1 to 10 do
begin


gotoxy(5, wherey);


Writeln(n,x,i:2,=,n*i:3);
Readln;


End.


<b>Bài 3 SGK (T64).</b>


<b>C©u lƯnh for lång trong</b>
<b>for</b>


<b>- For</b> <i><biến đếm1:= giá</i>
<i>trị đầu></i> <b>to</b> <i><giá</i> <i>trị</i>
<i>cuối></i><b>do</b>


<b>For</b><i><biến đếm 2:=giá</i>
<i>trị đầu> </i><b>to</b><i><giá</i> <i>trị cuố></i>
<b>do</b>


<i>< c©u lƯnh>;</i>
Program Tao_bang;
Uses crt;



Var i,j: byte;
Begin


Clrscr;


For i:=1 to 9 do
Begin


For j:=0 to 9 do
Writeln(10*i+j:4);
Writeln;


End;
Readln;
End.


<b> c. Củng cố, luyện tập </b><i><b>3p</b></i>


NhËn xÐt rót kinh nghiƯm giê thùc hµnh.


<i><b> </b>d. Hướng dẫn học sinh tự học ở nhà: <b>2p</b></i>


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 đẹp.


<i><b> </b></i>


Ngày soạn: 22/01/2010 Ngày dạy: 8A: 26/01/2010



8B: 26/01/2010
<b>Tiết 43</b>: <b>học vẽ hình với phần mÒm geogebra</b>


</div>
<span class='text_page_counter'>(22)</span><div class='page_container' data-page=22>

a) <i>Kiến thức: </i>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 .. .


b) <i>Kỹ năng: </i>Nắm đợc cách vẽ một hình nào đó khi sử dụng phần mm geogebra
ny.


c) <i>Thỏi : </i>Hứng thú và yêu thích môn học.


<b>2/ Chuẩn bị: </b>


<i>a) Giỏo viờn: </i>- Sách giáo khoa, giáo án, tài liệu tin học có liên quan.


<i>b) HS:</i> - Đọc tài liệu ở nhà trớc khi


<b>3/ Tiến trình lên lớp:</b>
<i>a)</i> <i>Kiểm tra.</i> <b>5</b>


- Làm bài tập 3 trang 64?


...
...


<i>b)</i> <i>Bµi míi: 40</i>’


<b>Hoạt động của GV và HS</b> <b>Nội dung</b>


Hoạt động 1: Giới thiệu phần mềm geogebra. (10’)


Cho học sinh đọc thơng tin SGK


? Em biÕt g× vỊ phần mềm geogebra.
Nếu biết hÃy nêu một vài ví dơ.


? Phần mềm geogebra có đặc điểm gì?
Giáo viên giới thiệu lại cho học sinh nghe


<b>1. Em đã biết gì về GeoGebra?</b>


- Phần mềm GeoGebra dùng để vẽ
các hình hình học đơn giản nh điểm,
đoạn thẳng, đờng thẳng ở lớp 7 em
đã đợc học qua. - - - Đặc điểm quan
trọng nhất của phần mềm Geogebra
là khả năng tạo ra sự gắn kết giữa các
đối tợng hình học, đợc gọi là quan hệ
nh thuộc, vng góc, song song. Đặc
điểm này giúp cho phần mềm có thể
vẽ đợc các hình rất chính xác và có
khả năng tơng tác nh chuyển động
nhng vẫn giữ đợc mối quan hệ giữa
các đối tợng.


Hoạt động2: Làm quen với phần mềm Geogebra. (30’)
Giáo viên cho học sinh quan sát SGK và


giíi thiƯu c¸c bíc.


Để khởi động ta làm nh th no?



Ngoài cách này còn có cách nào nữa
không?


Màm hình của phần mềm GeoGebra tiếng
Việt có những phần nào?


<b>2. Lm quen vi phn mm</b>
<b>GeoGebra ting Việt</b>
<i><b>a) Khởi động </b></i>


Nháy chuột tại biểu tợng để
khởi động chơng trình.


<i><b>b) Giíi thiƯu mµn hình GeoGebra </b></i>
<i><b>tiếng Việt</b></i>


</div>
<span class='text_page_counter'>(23)</span><div class='page_container' data-page=23>

Em hiểu Bảng chọn là gì?


Giáo viên chú ý cho HS.


Thanh cụng c là gì ? Hãy nêu một lệnh bất
kỳ trong thanh ú. (cú th cho HS lờn bng
v)


Giáo viên giới thiệu các công cụ làm việc
chính cho học sinh.


Để chọn một công cụ hÃy nháy chuột lên
biểu tợng của công cụ này.



Mỗi nút trên thanh công cụ sẽ có nhiều
công cụ cùng nhóm. Nháy chuột vào nút
nhỏ hình tam giác phía dới các biểu tợng sẽ
làm xuất hiện các công cụ khác nữa.


<i>Cỏc cụng c liờn quan n i tng im</i>


<i>Bảng chọn</i> là hệ thống các lệnh
chính của phần mềm Geogebra. Với
phần mềm Geogebra tiÕng ViÖt em
sÏ thÊy c¸c lƯnh b»ng tiÕng ViƯt.


<b>Chú ý</b> rằng các lệnh trên bảng chọn
không dùng để vẽ các đối tợng-hình.
Các lệnh tác động trực tiếp với đối
t-ợng hình học đợc thực hiện thông
qua các công cụ trên thanh công cụ
của phần mềm.


 <i>Thanh công cụ</i> của phần mềm
chứa các công cụ làm việc chính.
Đây chính là các công cụ dùng để vẽ,
điều chỉnh và làm vic vi cỏc i
t-ng.


- Khi nháy chuột lên một nút lệnh ta
sẽ thấy xuất hiện các công cụ kh¸c
cïng nhãm.



- Mỗi cơng cụ đều có một biểu tợng
riêng tơng ứng. Biểu tợng cho biết
công dng ca cụng c ú.


<i><b>c) Giới thiệu các công cơ lµm viƯc </b></i>
<i><b>chÝnh </b></i>


 <i>Cơng cụ di chuyển</i> có ý
nghĩa đặc biệt là không dùng để vẽ
hoặc khởi tạo hình mà dùng để di
chuyển hình. Với cơng cụ này, kéo
thả chuột lên đối tợng (điểm, đoạn,
đờng, ...) để di chuyển hình này.
Cơng cụ này cũng dùng để chọn các
đối tợng khi thực hiện các lệnh điều
khiển thuộc tính của các đối tợng
này.


Có thể chọn nhiều đối tợng bằng
cách nhấn giữ phím <b>Ctrl</b> trong khi


chän.


<i><b>Chú ý:</b></i> Khi đang sử dụng một công
cụ khác, nhấn phím <b>ESC</b> để chuyển về


c«ng cơ di chun.


 <i>Các công cụ liên quan đến đối</i>
<i>tợng điểm</i>



Công cụ dùng để tạo một điểm
mới. Điểm đợc tạo có thể là điểm tự
do trên mặt phẳng hoặc là điểm
thuộc một đối tợng khác (ví dụ đờng
thẳng, đoạn thẳng).


</div>
<span class='text_page_counter'>(24)</span><div class='page_container' data-page=24>

<i>t-Các công cụ liên quan đến on, ng</i>
<i>thng</i>


<i>Các công cụ tạo mối quan hƯ h×nh häc</i>


ợng để tạo điểm thuộc đối tợng này.
Cơng cụ dùng để tạo ra điểm là
giao của hai đối tợng đã có trên mặt
phẳng.


<i>Cách tạo:</i> chọn công cụ và lần lợt
nháy chuột chọn hai đối tợng đã có
trên mặt phẳng.


Cơng cụ dùng để tạo trung điểm
của (đoạn thẳng nối) hai điểm cho
tr-ớc: chọn công cụ rồi nháy chuột tại
hai điểm này để tạo trung điểm.


 <i>Các công cụ liên quan đến</i>
<i>đoạn, đờng thẳng</i>


Các công cụ , , dùng


để tạo đờng, đoạn, tia đi qua hai
điểm cho trớc. Thao tác nh sau: 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.


<i>Thao tác:</i> 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 <b>áp dụng </b>sau khi đã nhập


xong độ dài đoạn thẳng.


<i><b>Chó ý:</b></i> 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ố.


<i>Các công cơ t¹o mèi quan hƯ</i>
<i>h×nh häc</i>


- Cơng cụ dùng để tạo đờng
thẳng đi qua một điểm và vng góc
với một đờng hoặc đoạn thẳng cho
tr-ớc.



</div>
<span class='text_page_counter'>(25)</span><div class='page_container' data-page=25>

<i>Các cơng cụ liên quan đến hình trịn</i>


chän ®iĨm.


- Cơng cụ sẽ tạo ra một đờng
thẳng song song với một đờng (đoạn)
cho trớc và đi qua một điểm cho trớc.


<i>Thao tác:</i> chọn công cụ, sau đó lần
l-ợt chọn điểm, đờng (đoạn, tia) hoặc
ngợc lại chọn đờng (đoạn, tia) và
chọn điểm.


- Công cụ dùng để vẽ đờng
trung trực của một đoạn thẳng hoặc
hai điểm cho trớc.


<i>Thao tác:</i> chọn cơng cụ, sau đó chọn
một đoạn thẳng hoặc chọn hai điểm
cho trớc trên mặt phẳng.


- Công cụ dùng để tạo đờng
phân giác của một góc cho trớc. Góc
này xác định bởi ba điểm trên mặt
phẳng.


<i>Thao tác:</i> chọn công cụ và sau đó lần
lợt chọn ba điểm trên mặt phẳng.
Điểm chọn thứ hai chính là đỉnh của
góc này.



 <i>Các cơng cụ liên quan đến hình</i>
<i>trịn</i>


- 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 hình trịn và điểm thứ hai
nằm trên hình trịn.


- Cơng cụ dùng để tạo ra hình
trịn bằng cách xác định tâm và bán
kính. Thao tác: chọn cơng cụ, chọn
tâm hình trịn, sau đó nhập giá trị bán
kính trong hộp thoại sau:


</div>
<span class='text_page_counter'>(26)</span><div class='page_container' data-page=26>

- Cơng cụ dùng để tạo một nửa
hình tròn đi qua hai điểm đối xứng
tâm.


<i>- Thao tác: </i>chọn cơng cụ, chọn lần
l-ợt hai điểm. Nửa hình trịn đợc tạo sẽ
là phần hình trịn theo chiều ngợc
kim đồng hồ từ điểm thứ nhất đến
điểm thứ hai.


- Cơng cụ sẽ tạo ra một cung
trịn là một phần của hình trịn nếu
xác định trớc tâm hình trịn và hai
điểm trên cung trịn này.



<i>- Thao tác:</i> Chọn cơng cụ, chọn tâm
hình trịn và lần lợt chọn hai điểm.
Cung tròn sẽ xuất phát từ điểm thứ
nhất đến điểm thứ hai theo chiều
ng-ợc chiều kim đồng hồ.


- Công cụ sẽ xác định một cung
tròn đi qua ba điểm cho trớc. Thao
tác: chọn cơng cụ sau đó lần lợt chọn
ba điểm trên mặt phẳng.


 <i>Các công cụ biến đổi hình học</i>


- Cơng cụ dùng để tạo ra một
đối tợng đối xứng với một đối tợng
cho trớc qua một trục là đờng hoặc
đoạn thẳng.


<i>- Thao tác:</i> Chọn công cụ, chọn đối
tợng cần biến đổi (có thể chọn nhiều
đối tợng bằng cách kéo thả chuột tạo
thành một khung chữ nhật chứa các
đối tợng muốn chọn), sau đó nháy
chuột lên đờng hoặc đoạn thẳng làm
trục đối xứng.


- Công cụ dùng để tạo ra một
đối tợng đối xứng với một đối tợng
cho trớc qua một điểm cho trớc


(điểm này gọi là tâm đối xứng).


</div>
<span class='text_page_counter'>(27)</span><div class='page_container' data-page=27>

chuột lên điểm là tâm đối xứng.


<i><b>d) C¸c thao t¸c víi tƯp</b></i>


Mỗi trang hình vẽ sẽ đợc lu lại trong
một tệp có phần mở rộng là <b>ggb</b>. lu


hình hÃy nhấn tổ hợp phím <b>Ctrl+S</b>


hoặc thực hiện lệnh <b>Hồ sơ </b><b> Lu lại</b> từ


bảng chọn. Nếu là lần đầu tiên lu tệp,
phần mềm sẽ yêu cầu nhập tên tệp.
Gõ tên tệp tại vị trí <b>File name</b> và nháy


chuột vào nút <b>Save</b>.


m mt tệp đã có, nhấn tổ hợp
phím <b>Ctrl+O</b> hoặc thực hiện lệnh <b>Hồ sơ </b>


<b> Më</b>. Chän tƯp cÇn më hoặc gõ tên


ti ụ <b>File name</b>, sau ú nhỏy chut vo


nút <b>Open</b>.


e) Thoát khỏi phần mềm



Nháy chuột chọn <b>Hồ sơ</b> <b>Đóng</b> hoặc


nhấn tổ hợp phím <b>Alt+F4</b>.


<i>c) Cng c, luyn tp:3</i>


- Giáo viên hệ thống lại toµn bé néi dung bµi häc.


<i>-d) Hướng dẫn HS tự học ở nhà: 2’</i>


- 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.


- Đọc bài mới để giờ sau học.


Ngày soạn: 25/01/2010 Ngày dạy: 8A: 29/01/2010


8B: 30/01/2010
<b>TiÕt 44</b>: <b>häc vÏ h×nh với phần mềm geogebra (tiếp)</b>


<b>1/ Mục tiêu:</b>


a) <i>Kin thc: </i>Hc sinh nắm đợc các đối tợng của phần mềm hình học
Geogebra. Hiểu rõ đợc các đối tợng đó và danh sách các đối tợng đó
trên màn hình.


b) <i>Kỹ năng: </i>Vận dụng đợc vào vẽ các hình trong thực t.


c) <i>Thỏi : </i>Yêu thích môn học. Có ý thức bảo vệ máy tính khi sử dụng



<b>2/ Chuẩn bị: </b>


<i>a) Chun b ca GV:-</i> Sách giáo khoa, giáo án, tài liƯu tin häc cã liªn quan.


<i>b) Chuẩn bị của HS</i>- Đọc tài liệu ở nhà trớc khi


<b>3/ Tiến trình lªn líp:</b>
<i>a) KiĨm tra. 5</i>’


- Phần mềm Geogebra dùng để làm gì?


...
...


<i><b>b) Bµi míi: 40</b></i>’


</div>
<span class='text_page_counter'>(28)</span><div class='page_container' data-page=28>

Hoạt động1: Khái niệm đối tợng. (15’)
? Em hiểu thế nào là đối tợng hình


học? <i><b>a) Khái niệm đối tợng hình học</b></i><sub>Một hình hình học sẽ bao gồm nhiều đối </sub>
t-ợng cơ bản. Các đối tt-ợng hình học cơ bản
bao gồm: điểm, đoạn thẳng, đờng thẳng, tia,
hình trịn, cung trịn.


Hoạt động 2: Đối tợng tự do và đối tợng phụ thuộc (25’)
Giáo viên nêu các đối tợng phụ thuộc


vµ cho biÕt ý nghÜa cña nã.



Hiện ẩn danh sách các đối tợng trên
màn hình.


Thay đổi các thuộc tính.


<i><b>b) Đối tợng tự do và đối tợng phụ thuộc</b></i>


Em đã đợc làm quen vi khỏi nim <i>quan h</i>


gia cỏc i tng.


Sau đây lµ mét vµi vÝ dơ:


 <i>Điểm thuộc đờng thẳng</i>


Cho trớc một đờng thẳng, sau đó xác định
một điểm "thuộc" đờng thẳng này. Chúng ta
có quan hệ "thuộc". Trong trờng hợp này
đối tợng điểm có quan hệ thuộc đối tng
-ng thng.


<i>Đờng thẳng đi qua hai điểm</i>


Cho trc hai điểm. Vẽ một đờng thẳng đi
qua hai điểm này. Chúng ta có quan hệ "đi
qua". Trong trờng hợp này đờng thẳng có
quan hệ và phụ thuộc vào hai điểm cho trớc.


 <i>Giao của hai đối tợng hình học</i>



Cho trớc một hình trịn và một đờng thẳng.
Dùng công cụ để xác định giao của
đ-ờng thẳng và đđ-ờng trịn. Chúng ta sẽ có
quan hệ "giao nhau". Giao điểm, nếu có,
thuộc hai đối tợng ban đầu là đờng tròn và
đờng thẳng.


Một đối tợng khơng phụ thuộc vào bất
kì một đối tợng nào khác đợc gọi là
đối tợng tự do. Các đối tợng còn lại gọi
là đối tợng phụ thuộc. Nh vậy mọi đối
tợng hình học trong phần mềm


Geogebra đều có thể chia thành hai
loại là tự do hay phụ thuộc.


<i><b>c) Danh sách các đối tợng trên màn hình</b></i>


Phần mềm Geogebra cho phép hiển thị danh
sách tất cả các đối tợng hình học hiện đang
có trên trang hình.


Dùng lệnh <b>Hiển thị </b><b> Hiển thị danh sách i tng</b>


hiện/ẩn khung thông tin này trên màn h×nh.


<i><b>d) Thay đổi thuộc tính của đối tợng</b></i>


Các đối tợng hình đều có các tính chất nh
tên (nhãn) đối tợng, cách thể hiện kiểu


đ-ờng, màu sắc, ....


</div>
<span class='text_page_counter'>(29)</span><div class='page_container' data-page=29>

thay đổi tính chất của đối tợng.


 <i>ẩn đối tợng: </i>Để ẩn một đối tợng, thực
hiện các thao tác sau:


<b>1.</b>Nháy nút phải chuột lên đối tợng;


<b>2.</b>Huỷ chọn <b>Hiển thị đối tợng</b> trong bảng


chän:


 <i>ẩn/hiện tên (nhãn) của đối tợng: </i>Để
làm ẩn hay hiện tên của đối tợng, thực hiện
các thao tác sau:


<b>1.</b>Nháy nút phải chuột lên đối tợng
trên màn hình;


<b>2.</b>Hủ chọn <b>Hiển thị tên</b> trong b¶ng


chän.


 <i>Thay đổi tên của đối tợng: </i>Muốn thay
đổi tên của một đối tợng, thực hiện các thao
tác sau:


<b>1.</b>Nháy nút phải chuột lên đối tợng
trên mn hỡnh;



<b>2.</b>Chọn lệnh <b>Đổi tên</b> trong bảng chọn:


Sau ú nhp tên mới trong hộp thoại:


<b>3.</b>Nháy nút <b>áp dụng</b> để thay đổi, nháy


nút <b>Huỷ bỏ</b> nếu không muốn đổi tên.


 <i>Đặt/huỷ vết chuyển động của đối tợng:</i>


Chức năng đặt vết khi đối tợng chuyển động
có ý nghĩa đặc biệt trong các phần mềm
"Toán học động". Chức năng này đợc sử
dụng trong các bài toán dự đoán quĩ tích và
khảo sát một tính chất nào đó của hình khi
các đối tợng khác chuyển động.


Để đặt/huỷ vết chuyển động cho một đối
t-ợng trên màn hình thực hiện thao tác sau:


</div>
<span class='text_page_counter'>(30)</span><div class='page_container' data-page=30>

<b>2.</b>Chän <b>Më dÊu vÕt khi di chun</b>.


Để xố các vết đợc vẽ, nhấn tổ hợp phím


<b>Ctrl+F</b>.


 <i>Xố đối tợng: </i>Muốn xố hẳn đối tợng,
ta có thể thực hiện một trong các thao tác
sau:



<b>1.</b>Dùng công cụ chọn đối tợng
rồi nhấn phím <b>Delete</b>.


<b>2.</b>Nháy nút phải chuột lên đối tợng và
thực hiện lệnh <b>Xoá</b>.


<b>3.</b>Chọn công cụ trên thanh công
cụ và nháy chuột lên đối tợng muốn
xố.


<i>c) Cđng cè, luyện tp: 4</i>


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


<i>-d) Híng dÉn HS tự học ở nhµ: 1</i>’


- 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,


- Đọc bài mới để giờ sau học.


Ngày soạn: 29/01/2010 Ngày dạy: 8A: 02/02/2010


8B: 02/02/2010
<b>TiÕt 45</b>: <b>häc vẽ hình với phần mềm geogebra</b>



<b>1/ Mục tiêu:</b>


<i>a) Kin thc:</i> Học sinh nắm đợc các cơng cụ làm việc chính.


<i>b) Kỹ năng:</i>Biết vẽ các hình liên quan đến đối tợng điểm và đờng thẳng.


<i>c) Thái độ: Nghiêm túc, cẩn thn.</i>
<b>2/ Chuẩn bị: </b>


<i>a) Giỏo viờn:</i> - Sách giáo khoa, giáo án, tài liệu tin học có liên quan.


<i>b) Hc sinh: </i>- Đọc tài liệu ở nhà trớc khi


</div>
<span class='text_page_counter'>(31)</span><div class='page_container' data-page=31>

<i>a) KiÓm tra. 3</i>’


- KiÓm tra sù chuÈn bị của học sinh .


<i><b>b) Bài mới: 37</b></i>


<b>Hot ng ca giỏo viờn v HS</b> <b>Ni dung</b>


Mỗi nút trên thanh công cụ sẽ có nhiều
công cụ cùng nhóm. Nháy chuột vào nút
nhỏ hình tam giác phía dới các biểu tợng
sẽ làm xuất hiện các công cụ khác nữa.


<i>Cỏc công cụ liên quan đến đối tợng</i>
<i>điểm</i>


<i>Các công cụ liên quan đến đoạn, đờng</i>


<i>thẳng</i>


<i><b>c) Giới thiệu các cơng cụ làm việc chính </b></i>
 <i>Cơng cụ di chuyển</i> có ý nghĩa
đặc biệt là khơng dùng để vẽ hoặc khởi
tạo hình mà dùng để di chuyển hình. Với
cơng cụ này, kéo thả chuột lên đối tợng
(điểm, đoạn, đờng, ...) để di chuyển hình
này. Cơng cụ này cũng dùng để chọn các
đối tợng khi thực hiện các lệnh điều
khiển thuộc tính của các đối tợng này.
Có thể chọn nhiều đối tợng bằng cách
nhấn giữ phím <b>Ctrl</b> trong khi chọn.


<i><b>Chú ý:</b></i> Khi đang sử dụng một cơng cụ
khác, nhấn phím <b>ESC</b> để chuyển về cơng


cơ di chun.


 <i>Các cơng cụ liên quan đến đối tợng</i>
<i>điểm</i>


Công cụ dùng để tạo một điểm
mới. Điểm đợc tạo có thể là điểm tự do
trên mặt phẳng hoặc là điểm thuộc một
đối tợng khác (ví dụ đờng thẳng, đoạn
thẳng).


<i>Cách tạo:</i> chọn công cụ và nháy chuột
lên một điểm trống trên màn hình hoặc


nháy chuột lên một đối tợng để tạo điểm
thuộc đối tợng này.


Công cụ dùng để tạo ra điểm là
giao của hai đối tợng đã có trên mặt
phẳng.


<i>Cách tạo:</i> chọn công cụ và lần lợt nháy
chuột chọn hai đối tợng đã có trên mặt
phẳng.


Công cụ dùng để tạo trung điểm
của (đoạn thẳng nối) hai điểm cho trớc:
chọn công cụ rồi nháy chuột tại hai điểm
này để tạo trung điểm.


 <i>Các công cụ liên quan đến đoạn, </i>
<i>đ-ờng thng</i>


</div>
<span class='text_page_counter'>(32)</span><div class='page_container' data-page=32>

<i>Các công cụ tạo mối quan hệ hình học</i>


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.


<i>Thao tác:</i> 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 <b>áp dụng </b>sau khi đã nhập xong


dài đoạn thẳng.


<i><b>Chú ý:</b></i> 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ố.


<i>c) Cng c, luyn tp:4</i>


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


<i>d)Hướng dẫn HS tự học ở nhà: 1’</i>


- 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.


- Đọc trớc các công cụ liên quan đến đờng tròn.


Ngày soạn: 01/02/2010 Ngày dạy: 8A: 05/02/2010


8B: 06/02/2010
<b>Tiết 46</b>: <b>học vẽ hình với phần mỊm geogebra</b>


<b>1/ Mơc tiªu:</b>


<i>a) Kiến thức:</i> Học sinh biết sử dụng các cơng cụ vẽ hình liên quan đến đờng
-ng trũn.


<i>b) K nng:</i> Rèn kỹ năng sử dụng chuột.



<i>c) Thái độ: Nghiêm túc, cẩn thận.</i>
<b>2/ ChuÈn bÞ: </b>


</div>
<span class='text_page_counter'>(33)</span><div class='page_container' data-page=33>

- Sách giáo khoa, giáo án, tài liệu tin học có liên quan.


<i>b) Hc sinh: </i>


- Đọc tài liƯu ë nhµ tríc khi


<b>3/ Tiến trình bài dạy:</b>
<i>a) KiĨm tra: 1</i>’


- KiĨm tra sù chn bÞ cđa häc sinh .


<i><b>b) </b><b>Dạy nội dung b</b><b>µi míi: </b></i>40’


<b>Hoạt động của giáo viên và HS</b> <b>Nội dung</b>
<i>Các công cụ liên quan n hỡnh trũn</i>


<i><b>c) Giới thiệu các công cụ làm viƯc </b></i>
<i><b>chÝnh ( </b></i>22’)


 <i>Các cơng cụ liên quan đến hình</i>
<i>trịn </i>


- 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 hình trịn và điểm thứ hai


nằm trên hình trịn.


- Cơng cụ dùng để tạo ra hình
trịn bằng cách xác định tâm và bán
kính. Thao tác: chọn cơng cụ, chọn
tâm hình trịn, sau đó nhập giá trị bán
kính trong hộp thoại sau:


- Cơng cụ dùng để vẽ hình trịn
đi qua ba điểm cho trớc. Thao tác:
chọn cơng cụ, sau đó lần lợt chọn ba
điểm.


- Công cụ dùng để tạo một nửa
hình trịn đi qua hai điểm đối xứng
tâm.


<i>- Thao tác: </i>chọn công cụ, chọn lần
l-ợt hai điểm. Nửa hình trịn đợc tạo sẽ
là phần hình trịn theo chiều ngợc
kim đồng hồ từ điểm thứ nhất đến
điểm thứ hai.


</div>
<span class='text_page_counter'>(34)</span><div class='page_container' data-page=34>

<i>- Thao tác:</i> Chọn công cụ, chọn tâm
hình trịn và lần lợt chọn hai điểm.
Cung tròn sẽ xuất phát từ điểm thứ
nhất đến điểm thứ hai theo chiều
ng-ợc chiều kim đồng hồ.


- Cơng cụ sẽ xác định một cung


trịn đi qua ba điểm cho trớc. Thao
tác: chọn công cụ sau đó lần lợt chọn
ba điểm trên mặt phẳng.


 <i>Các cơng cụ biến đổi hình học</i>


- Cơng cụ dùng để tạo ra một
đối tợng đối xứng với một đối tợng
cho trớc qua một trục là đờng hoặc
đoạn thẳng.


<i>- Thao tác:</i> Chọn công cụ, chọn đối
tợng cần biến đổi (có thể chọn nhiều
đối tợng bằng cách kéo thả chuột tạo
thành một khung chữ nhật chứa các
đối tợng muốn chọn), sau đó nháy
chuột lên đờng hoặc đoạn thẳng làm
trục đối xứng.


- Công cụ dùng để tạo ra một
đối tợng đối xứng với một đối tợng
cho trớc qua một điểm cho trớc
(điểm này gọi là tâm đối xứng).


<i>- Thao tác:</i> Chọn công cụ, chọn đối
tợng cần biến đổi (có thể chọn nhiều
đối tợng bằng cách kéo thả chuột tạo
thành một khung chữ nhật chứa các
đối tợng muốn chọn), sau đó nháy
chuột lên điểm là tâm đối xứng.



<i><b>d) C¸c thao t¸c víi tƯp (18 )</b></i>’


Mỗi trang hình vẽ sẽ đợc lu lại trong
một tệp có phần mở rộng l <b>ggb</b>. lu


hình hÃy nhấn tổ hợp phím <b>Ctrl+S</b>


hoặc thực hiện lệnh <b>Hồ sơ </b><b> Lu lại</b>từ


bảng chọn. Nếu là lần đầu tiên lu tệp,
phần mềm sẽ yêu cầu nhập tên tệp.
Gõ tên tệp tại vị trí <b>File name</b> và nháy


chuột vào nút <b>Save</b>.


m mt tệp đã có, nhấn tổ hợp
phím <b>Ctrl+O</b> hoặc thực hiện lệnh <b>Hồ sơ </b>


<b> Më</b>. Chän tƯp cÇn më hoặc gõ tên


ti ụ <b>File name</b>, sau ú nhỏy chut vo


</div>
<span class='text_page_counter'>(35)</span><div class='page_container' data-page=35>

e) Thoát khỏi phần mềm


Nháy chuét chän <b>Hå s¬</b>  <b>Đóng</b> hoặc


nhấn tổ hợp phím <b>Alt+F4</b>.


<i>c) Cng c, luyn tp:2</i>



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


<i>d) Hướng dẫn HS tự học ở nhà: 2’</i>


- 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, lm i lm li nhiu ln.


- Đọc phần làm hiện nhÃn và cách lu.


- c trc cỏch xúa i tng , thốt khỏi chơng trình.


Ngày soạn: 05/02/2010 Ngày dạy: 8A: 09/02/2010


8B: 09/02/2010


<b>TiÕt 47</b>

<b> : häc vÏ h×nh víi phần mềm geogebra</b>



</div>
<span class='text_page_counter'>(36)</span><div class='page_container' data-page=36>

<b>1. Mục tiêu</b>


<i>a)Kin thc: </i>- Học sinh thực hành đợc các ứng dụng cơ bản của phần mềm vẽ
hình học geogebra.


<i>b) Kỹ năng: </i>- Nắm đợc cách vẽ một hình nào đó khi sử dụng phần mm
geogebra ny.


<i>c) Thỏi : </i>- Hứng thú và yêu thích môn học.


<b>2. Chuẩn bị</b>
<i>a) Giỏo viờn:</i>



Sỏch giỏo khoa, giỏo ỏn, phũng mỏy tớnh hot ng tt.


<i>b) Hc sinh: </i>


Đọc tài liƯu ë nhµ tríc khi.


<b>3. Tiến trình bài dạy:</b>
<i>a) KiĨm tra bài cũ: 5</i>


?Đọc tác dụng của các nút lệnh trên thanh công cụ của phần mềm geogebra?


<i><b>b) </b><b>Dy ni dung b</b><b>µi míi: 35</b></i>’


<b>1.</b> <b>Vẽ đờng trịn ngoại tiếp tam giác (12 )</b>’


Cho trớc tam giác
ABC. Dùng công cụ
đờng tròn vẽ đờng
tròn đi qua ba điểm
A, B, C.


<b>2.</b> <b>Vẽ đờng tròn nội tiếp tam giác (12 )</b>’
Cho trớc tam giác


ABC. Dùng các công
cụ đờng phân giác,
đờng vng góc và
đờng trịn vẽ đờng
trịn nội tiếp tam giác


ABC.


<b>3.</b> <b>Vẽ hình thoi. (11 )</b>’
Cho trớc cạnh AB và
một đờng thẳng đi qua
A. Hãy vẽ hình thoi
ABCD lấy đờng thẳng
đã cho là đờng chéo. Sử
dụng các cơng cụ thích
hợp đã học để dựng các
đỉnh C, D của hình thoi.


- Thực hiện nghiêm túc
các yêu cầu của giáo
viên.


- HS tích cực thực hành
theo nhóm.


- Thực lu các hình vừa
vẽ.


- Thực hiện vẽ hình
theo yêu cÇu.


- Thực hiện theo nhóm
để hồn thành hình.


- Nhóm nào làm xong
báo cáo kết quả.



</div>
<span class='text_page_counter'>(37)</span><div class='page_container' data-page=37>

- Vẽ tam giác cân BAC.


<i>d) Hướng dẫn HS tự học ở nhà: 2’</i>


- 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.
- Đọc các Bài tập thực hành còn lại.


Ngày soạn: 05/02/2010 Ngày dạy: 8A: 23/02/2010


8B: 09/02/2010
<b>TiÕt 48</b>:

<b>häc vẽ hình với phần mềm geogebra (TT)</b>



<b>1. Mục tiêu</b>
<i>a)Kin thc: </i>


- Học sinh thực hành đợc các ứng dụng cơ bản của phần mềm vẽ hình học
geogebra.


<i>b) Kỹ năng: </i>


- Nắm đợc cách vẽ một hình nào đó khi sử dụng phần mềm geogebra này.


<i>c) Thái độ: </i>


- Høng thú và yêu thích môn học.


<b>2. Chuẩn bị ca giỏo viên và học sinh:</b>
<i>a) Giáo viên:</i>



- Sách giáo khoa, giáo án, phịng máy tính hoạt động tốt.


<i>b) Học sinh: </i>


- Học sinh: Đọc tài liệu ở nhà trớc khi.


<b>3. Tin trỡnh bi dy:</b>
<i>a) Kiểm tra bài cũ: 5</i>


?Đọc tác dụng của các nút lệnh trên thanh công cụ của phần mềm geogebra?


<i>b) Dy ni dung bài mới: 35</i>


<b>4.</b> <b>Vẽ hình vuông. (8 )</b>
Sử dụng các công


c thớch hp
v một hình
vng nếu biết
tr-ớc một cạnh.


<b>5.</b> <b>Vẽ tam giác đều. (9 )</b>’


Cho trớc cạnh
BC, hãy vẽ tam
giác đều ABC.


<b>6.</b> <b>Vẽ một hình là đối xứng trục của một đối tợng cho</b>
<b>trớc trên màn hình. (9 )</b>



- Thực hiện nghiêm
túc các yêu cầu của
giáo viên.


- HS tÝch cùc thùc
hµnh theo nhãm.


- Thùc hiƯn lu các
hình vừa vẽ.


</div>
<span class='text_page_counter'>(38)</span><div class='page_container' data-page=38>

Cho một hình và một
đ-ờng thẳng trên mặt phẳng.
Hãy dựng hình mới là đối
xứng của hình đã cho qua
trục là đờng thẳng trên.
Sử dụng công cụ đối xứng
trục để vẽ hình.


<b>7.</b> <b>Vẽ một hình là đối xứng qua tâm của một đối tợng</b>
<b>cho trớc trên màn hình. (9 )</b>’


Cho trớc một hình và
một điểm O. Hãy
dựng hình mới là đối
xứng qua tâm O của
hình đã cho. Sử dụng
công cụ đối xứng
tâm để vẽ hình.


- Thực hiện theo


nhóm để hồn
thành hình.


- Nhãm nào làm
xong báo cáo kết
quả.


<i>c) Cng c, luyn tp: 3</i>


- Giáo viên hệ thống lại toàn bộ kiến thức đã học.


<i>d) Hướng dẫn HS tự học ở nhà: 2’</i>


- Häc bài theo sách giáo khoa và vở ghi.
- Đọc trớc Bài 8: lặp với số lần cha biết trớc.


Ngy son: 20/02/2010 Ngày dạy: 8A: 26/02/2010


8B: 23/02/2010
<b>Tiết 49: </b>


<b>Bài 8: LẶP VỚI SỐ LẦN CHƯA BIẾT TRƯỚC</b>
<b>1. Mơc tiªu</b>


<i>a)Kiến thức: </i>


- 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;


<i>b) Kỹ năng: </i>


- 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.


<i>c) Thái độ: Nghiêm túc, cẩn thận</i>


</div>
<span class='text_page_counter'>(39)</span><div class='page_container' data-page=39>

<i>a) KiĨm tra bµi cị: 7</i>’


Viết thuật tốn tính tổng 100 số tự nhiên đầu tiên 1,2,3,…,99,100
<i>Bước 1. SUM </i> 0; i  0.


<i>Bước 2. i </i> i + 1.


<i>Bước 3. Nếu i ≤ 100, thì SUM </i> SUM + i và quay lại bước 2.
<i>Bước 4. Thông báo kết quả và kết thúc thuật toán.</i>


<i>* Đặt vấn đề: Với bài toán trên, trong TP ta sử dụng vịng lặp for…to…do thì</i>
sẽ thực hiện dễ dàng . Nhưng nếu ta thay số 100 bởi n ( tính tổng n số tự nhiên đầu
tiên ) thì ta sẽ gặp nhiều khó khăn trong việc sử dụng vịng lặp for…to…do bởi lúc
này số lần lặp không biết trước. Vậy ta phải làm như thế nào ? Giới thiệu bài mới .
<i><b>b) </b><b>Dạy nội dung b</b><b>µi míi: 35</b></i>’


<b>Hoạt động của GV và HS</b> <b><sub>Nội dung</sub></b>


+ G : y/c hs đọc ví dụ


1sgk/67


+ Hs : 2-3 hs đọc ví dụ sgk
+ Hs : Chú ý lắng nghe
+ G : Phân tích ví dụ


+ G : Hướng dẫn hs xây
dựng thuật toán


+ Hs : Nghe giáo viên hướng
dẫn, sau đó tự xây dựng
thuật toán


+ G : Chạy tay cho học sinh
xem ( Chỉ nên chạy tay thử
từ 1 đến 10 )


+ Hs : Chú ý nghe .
Hs ghi vở ví dụ 2


+ G : Giới thiệu sơ đồ khối


<b>1. Các hoạt động lặp với số lần chưa biết trước</b>
<b>(18’)</b>


a/ Ví dụ 1(sgk).


b/ Ví dụ 2 : Nếu cộng lần lượt n số tự nhiên đầu tiên
(n = 1, 2, 3,...), Cần cộng bao nhiêu số tự nhiên đầu
tiên để ta nhận được tổng T<i>n</i> nhỏ nhất lớn hơn 1000?



<i>Giải : </i>


Kí hiệu S là tổng cần tìm và ta có thuật tốn như
sau:


<i>+ Bước 1. S </i> 0, n  0.


<i>+ Bước 2. Nếu S ≤ 1000, n </i> <i>n + 1; ngược lại</i>
chuyển tới bước 4.


<i>+ Bước 3. S </i> S + n và quay lại bước 2.


<i>+ Bước 4. In kết quả : S và n là số tự nhiên nhỏ nhất</i>
sao cho S > 1000. Kết thúc thuật toán.


</div>
<span class='text_page_counter'>(40)</span><div class='page_container' data-page=40>

+ G : Nêu nhận xét


+ G : Có thể sử dụng lệnh
lặp với số lần lặp chưa biết
trước trong các chương trình
lập trình . Sau đây ta xét câu
lệnh và ví dụ trong TP


+ G : Giới thiệu cú pháp
lệnh


<b>while … do ….;</b>


+ G : Xét ví dụ 3



Chúng ta biết rằng, nếu n
càng lớn thì 1


<i>n</i> càng nhỏ,


nhưng luôn luôn lớn hơn 0.
Với giá trị nào của n thì 1


<i>n</i> <


0.005 hoặc 1


<i>n</i> < 0.003 ?


+ Hs : Đọc ví dụ 3


(Gv đưa phim trong ví dụ 3)
+ Hs : quan sát


+ G : giới thiệu chương trình
mẫu sgk ( Giáo viên in
chương trình mẫu trên phim
trong )


+ G : Chạy tay cho học sinh
xem


+ G : Yêu cầu học sinh mở
máy tính và mở chương trình


ví dụ 3 ( giáo viên chuẩn bị
chương trình mẫu và đưa lên
các máy )


+ G : Cho học sinh chạy




* Nhận xét : Để viết chương trình chỉ dẫn máy tính
thực hiện các hoạt động lặp như trong các ví dụ trên,
ta có thể sử dụng câu lệnh có dạng lặp với số lần
<i>chưa biết trước</i>


<b>2. Ví dụ về lệnh lặp với số lần chưa biết trước</b>
<b>(17’)</b>


Trong Pascal câu lệnh lặp với số lần chưa biết trước
có dạng:


<b>while <điều kiện> do <câu lệnh>;</b>
trong đó:


- <i>điều kiện thường là một phép so sánh;</i>
- <i>câu lệnh có thể là câu lệnh đơn giản hay</i>


câu lệnh ghép.


Câu lệnh lặp này được thực hiện như sau:
Bước 1 : Kiểm tra điều kiện.



Bước 2 : Nếu điều kiện SAI, câu lệnh sẽ bị bỏ qua
và việc thực hiện lệnh lặp kết thúc. Nếu điều kiện
đúng, thực hiện câu lệnh và quay lại bước 1.


Ví dụ 3.


Với giá trị nào của n ( n>o ) thì 1


<i>n</i> < 0.005 hoặc


1


<i>n</i>


< 0.003? Chương trình dưới đây tính số n nhỏ nhất
để 1


<i>n</i> nhỏ hơn một sai số cho trước :


<b>uses</b> crt;


</div>
<span class='text_page_counter'>(41)</span><div class='page_container' data-page=41>

chương trình trên máy


+ G : Yêu cầu hs thay điều
kiện sai_so = 0.003 thành
0.002 ; 0.001 ; 0.005 ; ...
+ Hs : thực hiện


n: integer;



<b>const</b> sai_so=0.003;


<b>begin</b>


clrscr;
x:=1; n:=1;


<b>while</b> x>=sai_so <b>dobegin</b> n:=n+1; x:=1/n <b>end</b>;
writeln('So n nho nhat de 1/n < ',sai_so:5:4, 'la
',n);


readln


<b>end</b>.


<i>c) Củng cố, luyện tập: 2’</i>


- Giáo viên hệ thống lại toàn bộ kiến thức đã học.


<i>d) Hướng dẫn HS tự học ở nhà: 1’</i>


- Häc bài theo sách giáo khoa và vở ghi.
- Làm bài tập 1, 2, 3 SGK trang71.


- Đọc trớc Bài 8: lặp với số lần cha biết trớc.


Ngy son: 23/02/2010 Ngày dạy: 8A: 27/02/2010


8B: 27/02/2010
<b>Tiết 50:</b>



<b>Bài 8: LẶP VỚI SỐ LẦN CHƯA BIẾT TRƯỚC</b>
(Tiếp theo)


<b>1. Mơc tiªu</b>
<i>a)Kiến thức: </i>


- 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;


<i>b) Kỹ năng: </i>


- 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.
<i>c) Thái độ: </i>


- Nghiêm túc, cẩn thận


</div>
<span class='text_page_counter'>(42)</span><div class='page_container' data-page=42>

<i>b) Học sinh</i>: Sách, vởđọc trước bài ở nhà.


<b>3. Tiến trình bi dy:</b>
<i>a) Kiểm tra bài cũ: 15</i>


Câu 1: Viết cú pháp câu lệnh lặp với số lần cha biết trớc rồi giải thích?
Câu 2: Làm bài tập 2 trang 71.



<b>Đáp ¸n:</b>


Câu 1: Viết đúng cú pháp 5đ.
Câu 2: Làm đúng bài tập 5đ.


<i><b>b) </b><b>Dạy nội dung b</b><b>µi míi: 25</b></i>’


+ G : ta tiếp tục xét các ví dụ mà trong
chương trình có câu lệnh với số lần lặp
chưa biết trước


+ G : Chạy tay cho học sinh xem
+ Hs : chú ý nghe .


+ G : Cho học sinh chạy chương trình
trên máy


+ Hs : thực hiện


+ G : chạy chương trình này, ta nhận
được giá trị ntn?


+ Hs : Nếu chạy chương trình này ta sẽ
nhận được n = 45 và tổng đầu tiên lớn
hơn 1000 là 1034.


Viết chương trình tính tổng


1 1 1



1 ...


2 3 100


<i>T</i>     


+ G : Cho học sinh quan sát.
+ Hs : quan sát


+ G : Chạy tay ( cả hai chương trình )
cho học sinh xem


+ Hs : chú ý nghe và tự chạy tay lại
+ G : so sánh kết quả khi chạy hai
chương trình


+ Hs : Kết quả bằng nhau


<b>2. Ví dụ về lệnh lặp với số lần chưa</b>
<b>biết trước (tt) (17’)</b>


Ví dụ 4 . Chương trình Pascal dưới đây
thể hiện thuật tốn tính số n trong ví dụ
2:


<b>var</b> S,n: integer;


<b>begin</b>



S:=0; n:=1;


<b>while</b> S<=1000 <b>do</b>


<b>begin</b> n:=n+1; S:=S+n <b>end</b>;


writeln('So n nho nhat de tong > 1000
la ',n);


writeln('Tong dau tien > 1000 la ',S);


<b>end</b>.


Ví dụ 5<b>.</b> Viết chương trình tính tổng


1 1 1


1 ...


2 3 100


<i>T</i>     


Để viết chương trình tính tổng


1 1 1


1 ...


2 3 100



<i>T</i>      ta có thể sử dụng
lệnh lặp với số lần lặp biết trước for…
<b>do:</b>


T:=0;


<b>for </b>i:=1<b> to </b>100<b> do </b>T:=T+1/i;
writeln(T);


Nếu sử dụng lệnh lặp while…do, đoạn
chương trình dưới đây cũng cho cùng
một kết quả:


</div>
<span class='text_page_counter'>(43)</span><div class='page_container' data-page=43>

+ G : Ví dụ này cho thấy rằng chúng ta
có thể sử dụng câu lệnh while…do thay
cho câu lệnh for…do.


<b>+ G </b>: Giới thiệu phần 3


+ G : Khi viết chương trình sử dụng cấu
trúc lặp cần chú ý tránh tạo nên vòng lặp
không bao giờ kết thúc


+ Hs : Chú ý nghe


+ G : Chẳng hạn, chương trình dưới đây
sẽ lặp lại vô tận:


+ Hs : Chú ý nghe


<b>var </b>a:integer;


<b>begin</b>


a:=5;


<b>while </b>a<6<b> do </b>writeln('A');


<b>end.</b>


<b>+ G : </b>Trong chương trình trên, giá trị
của biến <i>a</i> luôn luôn bằng 5, điều kiện
<i>a<6</i> luôn luôn đúng nên lệnh
<i>writeln('A')</i> luôn được thực hiện.


Do vậy, khi thực hiện vòng lặp, điều
<i>kiện trong câu lệnh phải được thay đổi</i>
để sớm hay muộn giá trị của điều kiện
được chuyển từ đúng sang sai. Chỉ như
thế chương trình mới khơng "rơi" vào
những "vịng lặp vô tận".


i:=1;


<b>while </b>i<=100<b> do begin </b>T:=T+1/i; i:=i+1


<b>end;</b>


writeln(T);



* Nhận xét : Ví dụ này cho thấy rằng
chúng ta có thể sử dụng câu lệnh
<b>while…do thay cho câu lệnh for…do.</b>


<b>3. Lặp vô hạn lần – Lỗi lập trình cần</b>
<b>tránh (8’)</b>


Khi viết chương trình sử dụng cấu trúc
lặp cần chú ý tránh tạo nên vịng lặp
khơng bao giờ kết thúc.


<i>c) Củng cố, luyện tập: 3’</i>


- Giáo viên hệ thống lại toàn bộ kiến thức đã học.


<i>d) Hướng dẫn HS tự học nh: 2</i>


- Học bài theo sách giáo khoa và vë ghi.
- Lµm bµi tËp 4, 5 SGK trang71.


Ngày soạn: 28/02/2010 Ngày dạy: 8A: 04/03/2010


8B: 03/03/2010


</div>
<span class='text_page_counter'>(44)</span><div class='page_container' data-page=44>

<i>a)Kiến thức: Viết chương trình Pascal sử dụng câu lệnh lặp với số lần biết trước.</i>
<i>b) Kỹ năng: Rèn luyện khả năng đọc chương trình, tìm hiểu tác dụng và kết hợp</i>
các câu lệnh.


<i>c) Thái độ : Nghiêm túc</i>



<b>2. ChuÈn bÞ của giáo viên và học sinh:</b>
<i>a) Giáo viên:giáo án, máy chiếu</i>


<i>b) Học sinh</i>: Kiến thức cũ, sách, vở.


<b>3. Tiến trình bài dạy:</b>
<i>a) KiĨm tra bµi cị: </i>


<i><b>b) </b><b>Dạy nội dung b</b><b>µi míi: 40</b></i>’


<b>Hoạt động của GV và HS</b> <b>Nội dung</b>


GV: Đưa ra các bài tập ở SGK và gọi học
sinh lên bảng trả lời.


Bài 2: Câu lệnh lặp có tác dụng làm đơn
giản và giảm nhẹ công sức của người viết
chương trình.


Bài 3: Chúng ta nói rằng khi thực hiện các
hoạt động lặp, chương trình kiểm tra một
điều kiện. Với lệnh lặp


<b>for </b><biến đếm> <b>:=</b> <giá trị đầu><b> to</b>
<giá trị cuối> <b>do </b><câu lệnh><b>;</b>


của Pascal, điều kiện cần phải kiểm tra
chính là giá trị của biến đếm lớn hơn giá trị
<i>cuối. Nếu điều kiện không được thoả mãn, </i>
<i>câu lệnh được tiếp tục thực hiện; ngược lại,</i>


chuyển sang câu lệnh tiếp theo trong


chương trình.
Bài 4: 12


Bài 5: Trừ d), tất cả các câu lệnh đều không
hợp lệ:


<i>a) Giá trị đầu phải nhỏ hơn giá trị cuối; </i>
<i>b) Các giá trị đầu và giá trị cuối phải là số </i>
nguyên;


<i>c) Thiếu dấu hai chấm khi gán giá trị đầu; </i>
<i>d) Thừa dấu chấm phẩy thứ nhất, nếu như </i>
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ệ;


<i>e) Biến x đã được khai báo như là biến có </i>
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.


Bài 6: Thuật toán tính tổng


<b>1.</b>Cho một vài ví dụ về hoạt động
được thực hiện lặp lại trong cuộc
sống hằng ngày. (5’)


<b>2.</b>Hãy cho biết tác dụng của câu
lệnh lặp. (5’)



<b>3.</b>(5’) Khi thực hiện câu lệnh lặp,
chương trình kiểm tra một điều
kiện. Với lệnh lặp


<b>i.</b> <b>for </b><biến đếm> <b>:=</b>
<giá trị đầu><b> to</b>
<giá trị cuối> <b>do </b>
<câu lệnh><b>;</b>


<b>ii.</b> của Pascal, điều kiện
cần phải kiểm tra là
gì?


<b>4.</b>(5’) Chương trình Pascal sau đây
thực hiện gì?


<b>var i: integer;</b>
<b>begin</b>


<b>for i:=1 to 1000 do;</b>
<b>end.</b>


<b>5.</b>(10’) Các câu lệnh Pascal sau có
hợp lệ khơng, vì sao?


<b>a.for i:=100 to 1 do </b>
writeln('A');


<b>b.for i:=1.5 to 10.5 </b>


<b>do writeln('A');</b>
<b>c.for i=1 to 10 do </b>


writeln('A');


</div>
<span class='text_page_counter'>(45)</span><div class='page_container' data-page=45>

<i>A = </i> ... <sub>(</sub> 1 <sub>1</sub><sub>)</sub>
5
.
3
1
4
.
2
1
3
.
1
1




<i>n</i>
<i>n</i>
<i>Bước 1. Gán A </i> 0, i  1.
<i>Bước 2. A </i> <i><sub>i i</sub></i><sub>(</sub> 1<sub>2)</sub>


 .
<i>Bước 3. i </i> i + 1.



<i>Bước 4. Nếu i </i> n, quay lại bước 2.
<i>Bước 5. Ghi kết quả A và kết thúc thuật </i>
toán.


<b>e.var x: real; begin </b>
<b>for x:=1 to 10 do </b>
writeln('A'); end.
<b>6.</b> (10’) Hãy mô tả thuật tốn để


tính tổng sau đây:


<b>i.</b> <i>A =</i>


1 1 1 1


...


1.32.43.5 <i>n n</i>( 1).


<i>c) Củng cố, luyện tập: 3’</i>


- Hiểu các hoạt động lặp với số lần biết trước
<i>d) Hướng dẫn HS tự học ở nhà: 2’ </i>


- Về nhà xem lại bài học tiết sau chúng ta học tiếp.


Ngày soạn: 01/93/2010 Ngày dạy: 8A: 06/03/2010


8B: 04/03/2010



<b>Tiết 52</b>


<b>Bài tập (T2)</b>


<b>1. Mục tiêu </b>


<i>a)Kin thc: - Vit chng trình Pascal sử dụng câu lệnh lặp với số lần chưa biết </i>
trước.


<i>b) Kỹ năng:- Rèn luyện khả năng đọc chương trình, tìm hiểu tác dụng và kết hợp</i>
các câu lệnh.


<i>c) Thái độ: Nghiêm túc</i>


<b>2. ChuÈn bÞ của giáo viên và học sinh:</b>
<i>a) Giáo viên: giáo án, máy chiếu</i>


<i>b) Học sinh</i>: Kiến thức cũ, sách, vở.


<b>3. Tiến trình bài dạy:</b>
<i>a) KiĨm tra bµi cị: </i>


<i><b>b) </b><b>Dạy nội dung b</b><b>µi míi: 40</b></i>’


<b>Hoạt động của GV và HS</b> <b>Nội dung</b>


GV: Đưa ra các bài tập ở SGK và gọi
học sinh lên bảng trả lời.


Bài 2: Sự khác biệt:


a) Ccâu lệnh lặp với số lần lặp cho


trước chỉ thị cho máy tính thực hiện
một lệnh hoặc một nhóm lệnh với số
lần đã được xác định từ trước, còn với
câu lệnh lặp với số lần lặp chưa biết
trước thì số lần lặp chưa được xác định


1) Nêu một vài ví dụ về hoạt động lặp với
số lần chưa biết trước!


</div>
<span class='text_page_counter'>(46)</span><div class='page_container' data-page=46>

trước.


b)Lệnh lặp với số lần cho trước, điều
kiện là giá trị của một biến đếm có giá
trị nguyên đã đạt được giá trị lớn nhất
hay chưa, còn trong câu lệnh lặp với số
lần lặp chưa biết trước, điều kiện tổng
quát hơn nhiều, có thể là kiểm tra một
giá trị của một số thực


c) Lệnh lặp với số lần cho trước, câu
<i>lệnh được thực hiện ít nhất một lần, sau</i>
đó kiểm tra điều kiện. Lệnh lặp với số
lần chưa xác định trước, trước hết điều
kiện được kiểm tra. Nếu điều kiện được
thoả mãn, câu lệnh mới được thực hiện.
Bài 3: a) Thuật toán 1: 10 vòng lặp
được thực hiện. Khi kết thúc thuật toán
<i>S = 5.0. Đoạn chương trình Pascal</i>
tương ứng:



<b>S:=10; x:=0.5;</b>
<b>while S>5.2 do </b>
<b>S:=S-x;</b>


<b>writeln(S);</b>


<i>b) Thuật tốn 2: Khơng vịng lặp nào </i>
được thực hiện vì ngay từ đầu điều kiện
đã không được thỏa mãn nên các bước
2 và 3 bị bỏ qua. S = 10 khi kết thúc
thuật tốn. Đoạn chương trình Pascal
tương ứng:


<b>S:=10; n:=0;</b>
<b>while S<10 do</b>
<b> begin n:=n+3; </b>
<b>S:=S-n end;</b>


<b>writeln(S);</b>


Bài 4: a) Chương trình thực hiện 5 vịng
lặp. b) Vòng lặp trong chương trình
được thực hiện vơ tận vì sau câu lệnh
<b>n:=n+1; </b>câu lệnh lặp kết thúc nên
điều kiện <b>S=0 </b>luôn luôn được thỏa
mãn.


Bài 5: a) Thừa dấu hai chấm trong điều
kiện; b) Thiếu dấu hai chấm trong câu
lệnh gán; c) Thiếu các từ khóa <b>begin</b>


và <b>end </b>trước và sau các lệnh


3) Hãy tìm hiểu các thuật tốn sau đây và
cho biết khi thực hiện thuật toán, máy tính sẽ
thực hiện bao nhiêu vịng lặp? Khi kết thúc,
giá trị của S bằng bao nhiêu? Viết chương
trình Pascal thể hiện các thuật tốn đó.


<i>a) Thuật tốn 1</i>


<i>Bước 1. S </i> 10, x  0.5.


<i>Bước 2. Nếu S </i> 5.2, chuyển tới
bước 4.


<i>Bước 3. S </i> S  x và quay lại bước
2.


<i>Bước 4. Thơng báo S và kết thúc </i>
thuật tốn.


<i>b) Thuật toán 2</i>


<i>Bước 1. S </i> 10, n  0.


<i>Bước 2. Nếu S ≥ 10, chuyển tới </i>
bước 4.


<i>Bước 3. n </i> n + 3, S  S  n quay
lại bước 2.



<i>Bước 4. Thông báo S và kết thúc </i>
thuật tốn.


4) Hãy tìm hiểu mỗi đoạn lệnh sau đây và
cho biết với đoạn lệnh đó chương trình thực
hiện bao nhiêu vòng lặp? Hãy rút ra nhận
xét của em.


a) S:=0; n:=0;
<b>while S<=10 do</b>
begin n:=n+1;
S:=S+n end;


b) S:=0; n:=0;
<b>while S<=10 do</b>
n:=n+1; S:=S+n;
5) Hãy chỉ ra lỗi trong các câu lệnh sau


đây:


a)X:=10; while X:=10 do
X:=X+5;


</div>
<span class='text_page_counter'>(47)</span><div class='page_container' data-page=47>

<b>n:=n+1; S:=S+n</b>, do đó vịng lặp
trở thành vô tận.


n:=n+1; S:=S+n;
<i>c) Củng cố, luyện tập: 3’</i>



- Hiểu các hoạt động lặp với số lần chưa biết trước
- Biết sử dụng câu lệnh while..do


<i>d) Hướng dẫn HS tự học ở nhà: 2’</i>


- Về nhà xem lại bài học tiết sau chúng ta học tiếp.


Ngày soạn: 06/03/2010 Ngày dạy: 8A: 11/03/2010


8B: 10/03/2010

<i><b>TiÕt 53:</b></i>



<i><b>Bµi thùc hµnh 6:</b></i>

<b> Sư dơng lƯnh While do</b>



<b>1. Mơc tiªu </b>
<i>a)Kiến thức: </i>


- Vận dụng kiến thức của vòng lặp while ... do để viết chơng trình. Biết lựa
chọn câu lệnh lặp while ... do hoặc For ... do cho phù hợp với tình huống cụ thể.


<i>b) Kỹ năng:</i>


- Rèn luyện kỹ năng về khai báo và sử dụng biến, kĩ năng đọc hiểu chơng trình.
Biết vai trị của việc kết hợp các cấu trúc điều khiển.


<i>c) Thái độ: </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.


<b>2. ChuÈn bÞ của giáo viên và học sinh:</b>


<i>a) Giáo viên: Giáo án, phịng máy tính, sgk.</i>
<i>b) Học sinh</i>: Kiến thức cũ, sgk.


<b>3. Tiến trình bài dạy:</b>
<i>a) KiĨm tra bµi cũ: 5</i>


? Viết cú pháp của câu lệnh lặp while ... do vµ For ... do?


<i>* Đặt vấn đề: </i>Chúng ta đã nghiên cứu lý thuyết về vòng lặp While ... 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.


<i>b) Dạy nội dung bµi míi: 35</i>’


Gọi Hs đọc bài toán và nêu u cầu bài tốn.


<b>? </b>Làm thế nào để tính trung bình n số thực x1, x2, . .
., xn


<b>? </b>D÷ liệu đầu vào (Input) của bài toán là gì


<b>? </b>Dữ liệu đầu ra (Output) của bài toán là gì
Gọi Hs nêu thuật toán.


Gv nhận xét và đa ra thuật toán.


<b>? </b>Dựa vào việc thuật toán ở trên, theo em cần khai
báo những biến gì cho chơng trình bài toán.


Gv kết luận và đa ra chơng trình trình nh Sgk.



<b>? </b>Tìm hiểu ý nghĩa từng câu lệnh.


Gv mụ phỏng hoạt động chính của chơng trình với n
= 3


u cầu Hs hoạt động nhóm để thực hiện các cơng
việc sau:


+ Gõ và lu chơng trình với tên Tinh_TB.


+ Dịch và sửa lỗi nếu có và chạy với bé sè d÷ liƯu


D·y sè thùc x1, x2, . . ., xn


Giá trị trung bình
(x1+x2+. . . +xn) / n


Hs nêu thuật toán.


Hs trả lời.


Hs lm vic theo nhúm cử đại
diện báo cáo.


</div>
<span class='text_page_counter'>(48)</span><div class='page_container' data-page=48>

tuỳ ý đề kiểm tra kết quả nhận đợc.


+ Thư 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.


<b>? </b>Khi nào ta dùng câu lệnh For . . . do và khi nào ta


dùng câu lệnh While . . . do


kin đã biết trớc thì sử dụng
câu lệnh lặp For . . . do, còn
khi lặp với số lần cha biết trớc
thì sử dụng câu lệnh lặp
While . . . do


<i>c) Củng cố, luyện tập: 3’</i>


- Nhận xét toàn bộ kiến thức chính đã học trong giờ.
- Nhận xét đánh giá giờ thực hành.


<i>d) Hướng dẫn HS tự học ở nhà: 2’</i>
- Chuẩn bị bài cho tiết sau.


- Ơn lại câu lệnh và tập viết một số chơng trình đơn giản.


Ngày soạn: 06/03/2010 Ngày dạy: 8A: 13/03/2010


8B: 11/03/2010

<i><b>TiÕt 54:</b></i>



<b>Bµi thùc hµnh 6: </b>

<b>Sư dơng lƯnh While do</b>



<b>1. Mơc tiªu </b>
<i>a)Kiến thức: </i>


- Vận dụng kiến thức của vòng lặp while ... do để viết chơng trình. Biết lựa
chọn câu lệnh lặp while ... do hoặc For ... do cho phù hợp với tình huống cụ thể.



<i>b) Kỹ năng:</i>


- Rèn luyện kỹ năng về khai báo và sử dụng biến, kĩ năng đọc hiểu chơng
trình. Biết vai trị của việc kết hợp các cấu trúc điều khiển.


<i>c) Thái độ: </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.


<b>2. ChuÈn bÞ của giáo viên và học sinh:</b>
<i>a) Giáo viên: Giáo án, phịng máy tính, sgk.</i>
<i>b) Học sinh</i>: Kiến thức cũ, sgk.


<b>3. Tiến trình bài dạy:</b>
<i>a) KiĨm tra bài cũ: 5</i>


?Nêu ý nghĩa của câu lệnh lặp while ... do vµ For ... do?
?Em hiĨu thÕ nµo là một số nguyên tố?


<i>b) Dy ni dung bi mi: 35</i>’
- Yêu cầu HS đọc Bài tập 2.


- Giảng giải cho hs hiểu đợc ý tởng để
giải quyết bài toán.


Thảo luận nhóm để làm các việc sau:
+ Xác định Input v Output.


+ Mô tả thuật toán.



- Thực hiện viết chơng trình trên máy tính.


- Thực hiện nghiêm túc yêu cầu cđa gv.
- Chó ý nghe gi¶ng.


- Tích cực hoạt đơng hồn thành u cầu
của gv.


- Hoµn thiện chơng trình, nếu có lỗi tiến
hành chỉnh sưa.


- Chạy chơng trình với các dữ liệu khác
nhau để kiểm tra.


</div>
<span class='text_page_counter'>(49)</span><div class='page_container' data-page=49>

<i>c) Củng cố, luyện tập: 3’</i>


- Nhận xét toàn bộ kiến thức chính đã học trong giờ.
- Nhận xét đánh giá giờ thực hành.


<i>d) Hướng dẫn HS tự học ở nhà: 2’</i>


- Ơn lại tồn bộ kiến thức đã học.


Ngày soạn: 13/03/2010 Ngày dạy: 8A: 18/03/2010


8B: 17/03/2010


<b>Tiết 55</b>




<b>KIỂM TRA 1 TIẾT</b>



<b>1. Mục tiêu bài kiểm tra:</b>


<i>a)Kiến thức - Hệ thống lại các kiến thức đã học.</i>
<i>b) Kỹ năng:</i>


- Rèn luyện khả năng đọc chương trình, tìm hiểu tác dụng và kết hợp các câu
lệnh.


<i>c) Thái độ: Nghiêm túc</i>
<b>2. Nội dung đề:</b>


<i><b>Đề số 1:</b></i>


<b>Phần I. PHẦN TRẮC NGHIỆM: Khoanh trịn vào chữ cái đứng trước phương án</b>
<b>đúng (3 điểm)</b>


<b>Câu 1: Trong ngôn ngữ Pascal, về mặt cú pháp câu lệnh nào sau đây đúng với cấu trúc</b>
lặp For có một lệnh con?


A. For i:=1 to 100 do a:=a-1; B. For i:=1 to 100 do; a:=a-1;
C. For i:=1 to 100 do a:=a-1 D. For i:=1; to 100 do a:=a-1;


<b>Câu 2: Trong lệnh lặp For…to…do của Pascal, trong mỗi vòng lặp biến đếm thay đổi</b>
như thế nào?


A. +1 B. -1


C. Một giá trị bất kì D. Một giá trị khác 0



<b>Câu 3: Trong ngơn ngữ Pascal, về mặt cú pháp câu lệnh nào sau đây đúng với cấu trúc</b>
lặp While … do ?


A. x:=10; while x:=10 do x:=x+5; C. x=10; while x:=10 do x:=x+5;
B. x:=10; while x:=10 do x=x+5; D. x:=10; while x=10 dox:=x+5;
<b>Câu 4: Sau khi thực hiện xong đoạn chương trình sau:</b>


j:=3; k:=2;


<b>for</b> i:=1 <b>to</b> 4 <b>do</b>


j:=j+4; k:=k+j;
giá trị của biến k là?


A. 16 B. 21 C. 19 D. 20


<b>Câu 5: Cho đoạn lệnh sau đây:</b>
x:= 2; tong:=4;


</div>
<span class='text_page_counter'>(50)</span><div class='page_container' data-page=50>

x:=tong;


Sau khi đoạn lệnh trên được thực hiện x nhận giá trị là?


A. 13 B. 14 C. 15 D. 16


<b>Câu 6: Đoạn lệnh sau đây: </b>
so:=1;


While so<10 do writeln(so);


so:=so+1;


sẽ cho kết quả gì?


A. In ra các số từ 1 đến 9.
B. In ra các số từ 1 đến 10.


C. In ra vô hạn các số 1, mỗi số trên 1 dòng.
D. Tất cả a, b, c và d đều sai.


<b>Phần II. PHẦN TỰ LUẬN (7đ):</b>


<b>Câu 1. Hãy viết lại chương trình đúng từ chương trình có lỗi sau: (3 điểm)</b>


<b>Program</b> bang cuu chuong;


<b>var</b> N,i:integer;


<b>begen</b>


write('Nhap so N='); readln(N);
writeln


writeln('Bang nhan ' N);


<b>for</b> i:=10 <b>to</b> 1 <b>do</b>


writeln(N,' x ',i:2,' = ',Ni:3);
readln



<b>end</b>.


<b>Câu 2: (4 điểm) Tìm hiểu các đoạn chương trình Pascal sau đây</b>. Cho biết đoạn lệnh đó


chương trình thực hiện bao nhiêu vịng lặp, khi kết thúc giá trị của biến S bằng bao nhiêu?
a) s:=1; n:=3;


<b>while</b> s<8 <b>do</b>


<b> begin </b>n:=n+1; s:=s+n <b>end</b>;
b) s:=3; n:=1;


<b> while </b>s<15 <b>do</b>


<b> begin </b>n:=n+3; s:=s+n <b>end</b>;


<i><b>Đề số 2:</b></i>


<b>I. PHẦN TRẮC NGHIỆM: Khoanh trịn vào chữ cái đứng trước phương án đúng</b>
(3 điểm)


<b>Câu 1: Trong ngôn ngữ Pascal, về mặt cú pháp câu lệnh nào sau đây đúng với cấu trúc</b>
lặp For có một lệnh con?


A. For i:=1; to 100 do a:=a-1; B. For i:=1 to 100 do; a:=a-1;
C. For i:=1 to 100 do a:=a-1 D. For i:=1 to 100 do a:=a-1;


<b>Câu 2: Trong lệnh lặp For…to…do của Pascal, trong mỗi vòng lặp biến đếm thay đổi</b>
như thế nào?



</div>
<span class='text_page_counter'>(51)</span><div class='page_container' data-page=51>

C. Một giá trị bất kì D. Một giá trị khác 0


<b>Câu 3: Trong ngôn ngữ Pascal, về mặt cú pháp câu lệnh nào sau đây đúng với cấu trúc</b>
lặp While … do ?


A. x:=10; while x:=10 do x:=x+5; C. x=10; while x:=10 do x:=x+5;
B. x:=10; while x:=10 do x=x+5; D. x:=10; while x=10 dox:=x+5;
<b>Câu 4: Sau khi thực hiện xong đoạn chương trình sau:</b>


j:=3; k:=2;


<b>for</b> i:=1 <b>to</b> 4 <b>do</b>


j:=j+4; k:=k+j;
giá trị của biến k là?


A. 16 B. 21 C. 19 D. 20


<b>Câu 5: Cho đoạn lệnh sau đây:</b>
x:= 2; tong:=4;


<b>While</b> tong<14 <b>do</b> tong:=tong+3;
x:=tong;


Sau khi đoạn lệnh trên được thực hiện x nhận giá trị là?


A. 13 B. 14 C. 15 D. 16


<b>Câu 6: Đoạn lệnh sau đây: </b>
so:=1;



While so<10 do writeln(so);
so:=so+1;


sẽ cho kết quả gì?


B. In ra các số từ 1 đến 9.
C. In ra các số từ 1 đến 10.


D. In ra vô hạn các số 1, mỗi số trên 1 dòng.
E. Tất cả a, b, c và d đều sai.


<b>Phần II. PHẦN TỰ LUẬN (7đ): </b>(Tương tự đề số 1)
<b>3. Đáp án: </b>


<i><b>Đề số 1:</b></i>


<i><b>Phần I: </b>Mỗi câu trả lời đúng tính 0,5 điểm</i>


<i><b> Câu 1: </b></i> A; <i><b>Câu 2: </b></i>A; <i><b>Câu 3: </b></i>D <i><b>Câu 4: </b></i>B <i><b>Câu 5: </b></i>D<i><b> Câu 6: </b></i>C
<i><b>Đề số 2:</b></i>


<i><b>Phần I: </b>Mỗi câu trả lời đúng tính 0,5 điểm</i>


<i><b>Câu 1: </b></i> D; <i><b>Câu 2: </b></i>B; <i><b>Câu 3: </b></i>D <i><b>Câu 4: </b></i>B <i><b>Câu 5: </b></i>D<i><b> Câu 6: </b></i>C
<i><b>Phần II: </b></i><b>Tự luận:</b>


<b>Câu 1.</b>


Program bang_cuu_chuong;



<b>var</b> N,i:integer;
<b>begin</b>


write('Nhap so N='); readln(N);
writeln;


writeln('Bang nhan ', N);
<b>for</b> i:=1 <b>to</b> 10 <b>do</b>


writeln(N,' x ',i:2,' = ',N*i:3);
readln


<b>end</b>.


<b>3 đ</b>
(0,5 ñ)
(0,5 ñ)
(0,5 ñ)
(0,5 ñ)
(0,5 ñ)
(0,5 ñ)


<b>Câu 2.</b> <b>4 đ</b>


</div>
<span class='text_page_counter'>(52)</span><div class='page_container' data-page=52>

ĐK: s<8  1<8  Đúng  Câu lệnh được thực hiện: n=n+1=3+1=4
s=s+n =1+4=5


5<8 Đúng  Thực hiện tính: n=n+1=4+1=5, s=s+n=5+5=10
10<8 Sai  kết thúc vòng lặp.



Đoạn lệnh trên máy tính thực hiện 2 vịng lặp, khi kết thúc s=10.
b) s=3; n=1;


ĐK: s<15  3<15  Đúng  Câu lệnh được thực hiện: n=n+3=1+3=4
s=s+n=3+4=7
7<15 Đúng  Thực hiện tính: n=n+3=4+3=7, s=s+n=7+7=14
14<15 Đúng  Thực hiện tính: n=n+3=7+3=10, s=s+n=14+10=24
24<15 Sai  kết thúc vòng lặp.


Đoạn lệnh trên máy tính thực hiện 3 vịng lặp, khi kết thúc s=24.


2 đ


4. ánh giá nh n xét sau khi ch m b i ki m tra:Đ ậ ấ à ể


Ngày soạn: 13/03/2010 Ngày dạy: 8A: 20/03/2010


8B: 18/03/2010


<b>Tiết 56</b>



<b>Lµm viƯc víi d·y sè</b>


<b>1. Mục tiêu :</b>


<i>a) Kiến thức</i>


- Biết được khái niệm mảng một chiều


- Biết cách khai báo mảng, nhập, in, truy cập các phần tử của mảng


<i>b) Kỹ Năng</i>


- Hiểu thuật tốn tìm số lớn nhất, nhỏ nhất của một dãy số.
<i>c) Thái độ: Nghiêm túc</i>


<b>2. Chuẩn bị của giáo viên và học sinh :</b>
<i>a) Giáo viên: giáo án, máy chiếu</i>
<i>b) Học sinh: Kiến thức cũ, sách, vở.</i>
<b>3. Tiến trình bài dạy:</b>


<i>a) KiĨm tra bµi cị: </i>


<i><b>b) </b><b>Dạy nội dung b</b><b>µi míi: 40</b></i>’


<b>Hoạt động của GV và HS</b> <b>Nội dung</b>


<i><b>Hoạt </b><b> đ ộng 1: 20’</b></i>


GV: Đưa ví dụ 1 SGK để
giới thiệu cho học sinh cách


<b>1. Dãy số và biến mảng</b>


</div>
<span class='text_page_counter'>(53)</span><div class='page_container' data-page=53>

sử dụng biến mảng như thế
nào


HS: Chú ý lắng nghe


GV: Phân tích bài toán để
học sinh hiểu rõ hơn vấn đề



GV: để giải quyết các vấn đề
trên chúng ta cần có dữ liệu
gì:


HS: Biến mảng


GV: Việc sắp xếp thứ tự như
thế nào?


HS: Bằng cách gán gán cho
mỗi phần tử 1 chỉ số


GV: Giá trị của mảng như
thế nào?


HS: Là một biến nguyên
<i><b>Hoạt </b><b> đ ộng 2: 20’</b></i>


GV: Đưa ra ví dụ về biến
mảng


HS: Chú ý ví dụ


GV: Đưa ra cách khai bái
biến mảng trong Pascal


báo và nhập dữ liệu dạng sau đây, mỗi câu lệnh
tương ứng với điểm của một học sinh:



<b>Var Diem_1, Diem_2, Diem_3,… : </b>
real;


Read(Diem_1); Read(Diem_2),
Read(Diem_3);<b>… </b>


Nếu số học sinh trong lớp càng nhiều thì đoạn khai
báo và đọc dữ liệu trong chương trình càng dài.
Giả sử chúng ta có thể lưu nhiều dữ liệu có liên
quan với nhau (như <i>Diem_1, Diem_2, Diem_3,...</i> ở
trên) bằng một biến duy nhất và đánh "số thứ tự"
cho các giá trị đó, ta có thể sử dụng quy luật tăng
hay giảm của "số thứ tự" và một vài câu lệnh lặp để
xử lí dữ liệu một cách đơn giản hơn, chẳng hạn:


- Với <i>i = 1 đến 50</i>: hãy nhập <i>Diem_i</i>;


- Với <i>i = 1 đến 50</i>: hãy so sánh <i>Max</i> với
<i>Diem_i</i>;


Để giúp giải quyết các vấn đề trên, một kiểu dữ liệu
được gọi là kiểu mảng.


Dữ liệu kiểu mảng là một tập hợp hữu hạn các phần
tử có thứ tự, mọi phần tử đều có cùng một kiểu dữ
liệu, gọi là kiểu của phần tử. Việc sắp thứ tự được
thực hiện bằng cách gán cho mỗi phần tử một chỉ
<i>số:</i>


<i>Hình 40</i>



Khi khai báo một biến có kiểu dữ liệu là kiểu
mảng, biến đó được gọi là biến mảng.


Giá trị của biến mảng là một mảng, tức một dãy số
(số nguyên, hoặc số thực) có thứ tự, mỗi số là giá
trị của biến thành phần tương ứng.


<b>2. Ví dụ về biến mảng</b>


Để làm việc với các dãy số nguyên hay số thực,
chúng ta phải khai báo biến mảng


Ví dụ, cách khai báo đơn giản một biến mảng trong
ngôn ngữ Pascal như sau:


<b>var Chieucao: array[1..50] of </b>
real;


<b>var Tuoi: array[21..80] of </b>
integer;


</div>
<span class='text_page_counter'>(54)</span><div class='page_container' data-page=54>

HS: Chú ý và ghi vở có kiểu số thực. Với câu lệnh khai báo thứ hai, ta
có biến <i>Tuoi</i> gồm 60 phần tử (từ 21 đến 80) có kiểu
số nguyên.


Cách khai báo mảng trong Pascal như sau:
<i>Tên mảng </i><b>: array[</b><chỉ số đầu><b>..</b> <chỉ số
<i>cuối></i><b>] of</b> <kiểu dữ liệu>



trong đó chỉ số đầu và chỉ số cuối là hai số nguyên
hoặc biểu thức nguyên thoả mãn chỉ số đầu ≤ chỉ
<i>số cuối và kiểu dữ liệu có thể là integer hoặc real.</i>
<i>c) Củng cố, luyện tập: 3’</i>


- Khái niệm mảng một chiều


- Cách khai báo mảng, nhập, in, truy cập các phần tử của mảng
<i>d) Hướng dẫn HS tự học ở nhà: 2’</i>


- Về nhà xem lại bài học tiết sau chúng ta học tiếp.


</div>
<span class='text_page_counter'>(55)</span><div class='page_container' data-page=55>

<b>Tiết 57</b>



<b>Bài 9</b>

<b> : lµm viƯc víi d·y sè (</b>

<b>Tiếp</b>

<b>)</b>


<b>1. Mục tiêu :</b>


<i>a) Kiến thức</i>


- Biết được khái niệm mảng một chiều


- Biết cách khai báo mảng, nhập, in, truy cập các phần tử của mảng
<i>b) Kỹ Năng : - Hiểu thuật tốn tìm số lớn nhất, nhỏ nhất của một dãy số.</i>
<i>c) Thái độ: Nghiêm túc</i>


<b>2. Chuẩn bị của giáo viên và học sinh :</b>
<i>a) Giáo viên: giáo án, máy chiếu</i>
<i>b) Học sinh: Kiến thức cũ, sách, vở.</i>
<b>3. Tiến trình bài dạy:</b>



<i>a) KiĨm tra bµi cị: 3</i>’


? Em hãy nêu cách khai báo biến mảng trong Pascal<b> .</b>
<i><b>b) </b><b>Dạy nội dung b</b><b>µi míi: 37</b></i>’


<b>Hoạt động của GV và HS</b> <b>Nội dung</b>


<i><b>Hoạt </b><b> đ ộng 1: 20’</b></i>
GV: Đưa ví dụ 2
HS: Đọc hiểu ví dụ


GV: Hướng dẫn học sinh
cách sử dụng biến mảng
HS: Chú ý


GV: Cách khai báo biến có
ích lợi gì?


HS: Tiết kiệm thời gian và
cơng sức viết chương trình.


<i><b>Ví dụ 2. Tiếp tục với ví dụ 1, thay vì khai báo các </b></i>
biến <i>Diem_1</i>, <i>Diem_2</i>, <i>Diem_3</i>,... để lưu điểm số
của các học sinh, ta khai báo biến mảng <i>Diem</i> như
sau:


<b>var </b>Diem:<b> array[</b>1..50<b>] of </b>real;


Cách khai báo và sử dụng biến mảng như trên có lợi
gì?



Trước hết, có thể thay rất nhiều câu lệnh nhập và in
dữ liệu ra màn hình bằng một câu lệnh lặp. Chẳng
hạn, ta có thể viết


<b>For </b>i:=1<b> to </b>50<b> do </b>readln(Diem[i]);
để nhập điểm của các học sinh.


Để so sánh điểm của mỗi học sinh với một giá trị
nào đó, ta cũng chỉ cần một câu lệnh lặp, chẳng hạn


<b>For </b>i:=1<b> to </b>50<b> do </b>


<b>if </b>Diem[i]>8.0<b> then </b>writeln('Gioi');


Điều này giúp tiết kiệm rất nhiều thời gian và công
sức viết chương trình.


Hơn nữa, mỗi học sinh có thể có nhiều điểm theo
từng mơn học: điểm Tốn, điểm Văn, điểm Lí,... Để
xử lí đồng thời các loại điểm này, ta có thể khai báo
nhiều biến mảng:


<b>var </b>DiemToan<b>: array[</b>1..50<b>] of </b>real;


<b>var </b>DiemVan:<b> array[</b>1..50<b>] of </b>real;


<b>var </b>DiemLi: <b>array[</b>1..50<b>] of </b>real;
hay



<b>var </b>DiemToan, DiemVan, DiemLi: <b>array[</b>1..50<b>] of </b>


</div>
<span class='text_page_counter'>(56)</span><div class='page_container' data-page=56>

<i><b>Hoạt </b><b> đ ộng 2: 17’</b></i>
GV: Đưa ví dụ 3
HS: Đọc hiểu ví dụ


GV: Hướng dẫn học sinh
cách sử dụng biến mảng
HS: Chú ý


- Ghi vở và thực hiện chương
trình.


Khi đó, ta cũng có thể xử lí điểm thi của một học
sinh cụ thể


Ví dụ 2 cũng cho thấy rằng, chúng ta gán giá trị, đọc
giá trị và tính tốn với các giá trị của một phần tử
trong biến mảng thơng qua chỉ số tương ứng của
phần tử đó. Chẳng hạn, trong câu lệnh trên <i>Diem[i] </i>
là phần tử thứ i của biến mảng <i>Diem</i>.


Ta có thể gán giá trị cho các phần tử của mảng bằng
câu lệnh gán:


A[1]:=5;
A[2]:=8;


hoặc nhập dữ liệu từ bàn phím bằng câu lệnh lặp:



<b>for </b>i := 1<b> to </b>5<b> do </b>readln(a[i]);


<b>3. Tìm giá trị lớn nhất và nhỏ nhất của dãy số</b>
<i><b>Ví dụ 3</b></i><b>.</b> (SGK) Phần khai báo của chương trình có
thể như sau:


<b>program</b> MaxMin;


<b>uses</b> crt;


<b>Var</b>


i, n, Max, Min: integer;
A: <b>array</b>[1..100] of integer;


Phần thân chương trình sẽ tương tự dưới đây:


<b>Begin</b>


clrscr;


write('Hay nhap do dai cua day so, N = ');
readln(n);


writeln('Nhap cac phan tu cua day so:');
<b>For</b> i:=1 <b>to</b> n <b>do</b>


<b>Begin</b>


write('a[',i,']='); readln(a[i]);


<b>End</b>;


Max:=a[1]; Min:=a[1];
<b>for</b> i:=2 <b>to</b> n <b>do</b>


<b>begin</b> <b>if</b> Max<a[i] <b>then</b> Max:=a[i];
<b>if</b> Min>a[i] <b>then</b> Min:=a[i]
<b>end</b>;


write('So lon nhat la Max = ',Max);
write('; So nho nhat la Min = ',Min);
readln


<b>End</b>.
<i>c) Củng cố, luyện tập: 3’</i>


- Khái niệm mảng một chiều


- Cách khai báo mảng, nhập, in, truy cập các phần tử của mảng
<i>d) Hướng dẫn HS tự học ở nhà: 2’</i>


</div>
<span class='text_page_counter'>(57)</span><div class='page_container' data-page=57>

Ngày soạn: Ngày dạy:


<b>Tiết 58</b>


<b>bµi tËp</b>


<b>1. Mục tiêu :</b>


<i>a) Kiến thức</i>


- Viết chương trình Pascal sử dụng câu lệnh về biến mảng.



<i>b) Kỹ Năng : - Rèn luyện khả năng đọc chương trình, tìm hiểu tác dụng và kết</i>
hợp các câu lệnh.


<i>c) Thái độ: Nghiêm túc</i>


<b>2. Chuẩn bị của giáo viên và học sinh :</b>
<i>a) Giáo viên: giáo án, máy chiếu</i>
<i>b) Học sinh: Kiến thức cũ, sách, vở.</i>
<b>3. Tiến trình bài dạy:</b>


<i>a) KiĨm tra bµi cị: </i>


<i><b>b) </b><b>Dạy nội dung b</b><b>µi míi: </b></i>40’


<b>HOẠT ĐỘNG CỦA THẦY VÀ TRÒ</b> <b>NỘI DUNG</b>


GV: Đưa ra các bài tập ở SGK và gọi học
sinh lên bảng trả lời.


1) (8p) Lợi ích chính của việc sử dụng biến
mảng là rút gọn việc viết chương trình, có
thể sử dụng câu lệnh lặp để thay nhiều câu
lệnh. Ngoài ra chúng ta cịn có thể lưu trữ
và xử lí nhiều dữ liệu có nội dung liên quan
đến nhau một cách hiệu quả.


2) (8p) Đáp án a) Sai. Phải thay dấu phẩy
bằng hai dấu chấm; b) và c) Sai, vì giá trị
nhỏ nhất và lớn nhất của chỉ số mảng phải


là số nguyên; d) Sai, vì giá trị đâu của chỉ
số mảng phải nhỏ hơn hoặc bằng chỉ số
cuối; e) Đúng.


3) (8p) Đúng


1) Hãy nêu các lợi ích của việc sử
dụng biến mảng trong chương trình.


2) Các khai báo biến mảng sau đây
trong Pascal đúng hay sai?


<b>var X: Array[10,13] Of</b>
Integer;


<b>var X: Array[5..10.5] Of</b>
Real;


<b>var X: Array[3.4..4.8] Of</b>
Integer;


<b>var X: Array[10..1] Of</b>
Integer;


</div>
<span class='text_page_counter'>(58)</span><div class='page_container' data-page=58>

4) (8p) Không. Giá trị nhỏ nhất và lớn nhất
của chỉ số mảng phải được xác định trong
phần khai báo chương trình.


5) (8p) Học sinh thực hành trên máy
Chương trình có thể như sau:



<b>var N, i: integer;</b>


A: array[1..100] of
real;


<b>begin</b>


write('Nhap so phan tu
cua mang, n= ',n);


<b>for i:=1 to n do</b>


write('Nhap gia tri


',i,'cua mang, a[',i,']=
');


<b>end.</b>


3) "Có thể xem biến mảng là một biến
được tạo từ nhiều biến có cùng kiểu,
nhưng chỉ dưới một tên duy nhất".
Phát biểu đó đúng hay sai?


4) Câu lệnh khai báo biến mảng sau
đây máy tính có thực hiện được
không?


<b>var N: integer;</b>



A: array[1..N] of real;
5) Viết chương trình Pascal sử dụng
biến mảng để nhập từ bàn phím các
phần tử của một dãy số. Độ dài của
dãy cũng được nhập từ bàn phím


<i>c) Củng cố, luyện tập: 3’</i>


- Hiểu các hoạt động lặp với số lần biết trước
<i>d) Hướng dẫn HS tự học ở nhà: 2’</i>


- Về nhà xem lại bài học tiết sau chúng ta học tiếp.


</div>
<span class='text_page_counter'>(59)</span><div class='page_container' data-page=59>

<b>Ngµy dạy : </b>

<b>8A :</b>

<b>8B :</b>



<b>Tit 59</b>



<i><b>Bài thực hành 7</b></i>

<i><b>: </b></i>

<b>xử lí dÃy số trong chơng trình</b>



<b>1 - MỤC TIÊU</b>
<i>a. Kiến thức</i>


- Làm quen với việc khai báo và sử dụng các biến mảng
<i>b. Kỹ Năng</i>


- Ôn luyện cách sử dụng câu lệnh lặp <b>for…do</b>.


- Củng cố các kĩ năng đọc, hiểu và chỉnh sửa chương trình.
<i>c. Thái độ: Nghiêm túc</i>



<b>2. CHUẨN BỊ</b>


<i>a. Giáo viên: giáo án, máy chiếu</i>
<i>b. Học sinh: Kiến thức cũ, sách, vở.</i>
<b>3 - TIẾN TRÌNH LÊN LỚP</b>


<i>a) KiĨm tra bµi cị: 3</i>’


1. Hãy cho một số ví dụ về lặp với số lần chưa biết trước.
<i><b>b) </b><b>Dạy nội dung b</b><b>µi míi: 37</b></i>’


<b>HOẠT ĐỘNG CỦA</b>
<b>THẦY VÀ TRÒ</b>


<b>NỘI DUNG</b>
GV: Đưa ra bài tập 1 SGK


? Gọi học sinh nêu ý tưởng
- GV hướng dẫn


HS: Làm bài tập


<i><b>Bài 1. Viết chương trình nhập điểm của các bạn </b></i>
trong lớp. Sau đó in ra màn hình số bạn đạt kết quả
học tập loại giỏi, khá, trung bình và kém (theo tiêu
chuẩn từ 8.0 trở lên đạt loại giỏi, từ 6.5 đến 7.9 đạt
loại khá, từ 5.0 đến 6.4 đạt trung bình và dưới 5.0
xếp loại kém).



a) Xem lại các ví dụ 2 và ví dụ 3, bài 9 về cách sử
dụng và khai báo biến mảng trong Pascal.


b) Liệt kê các biến dự định sẽ sử dụng trong chương
trình. Tìm hiểu phần khai báo dưới đây và tìm hiểu
tác dụng của từng biến:


<b>program Phanloai;</b>
<b>uses crt;</b>


<b>Var</b>


i, n, Gioi, Kha, Trungbinh,
Kem: integer;


A: array[1..100] of real;


</div>
<span class='text_page_counter'>(60)</span><div class='page_container' data-page=60>

<b>Begin</b>
clrscr;


write(‘Nhap so cac ban trong lop, n
= ‘); readln(n);


writeln(‘Nhap diem:’);


<b>For i:=1 to n do Begin write(i,’. </b>
‘); readln(a[i]); End;


Gioi:=0; Kha:=0; Trungbinh:=0;
Kem:=0;



<b>for i:=1 to n do</b>
begin


<b>if a[i]>=8.0 then </b>
Gioi:=Gioi+1;


<b>if a[i]<5 then Kem:=Kem+1;</b>


<b>if (a[i]<8.0) and (a[i]>=6.5) </b>
<b>then Kha:=Kha+1;</b>


<b>if (a[i]>=5) and (a[i]<6.5) </b>
<b>then Trungbinh:=trungbinh+1</b>
end;


writeln(‘Ket qua hoc tap:’);
writeln(Gioi,’ ban hoc gioi’);
writeln(Kha,’ ban hoc kha’);


writeln(Trungbinh,’ ban hoc trung
binh’);


writeln(Kem,’ ban hoc kem’);
readln


<b>End.</b>


d<b><sub>) </sub></b>Gõ tiếp phần chương trình này vào máy tính sau
phần khai báo. Dịch, chạy chương trình.



<i>c) Củng cố, luyện tập: 3’</i>
- Cách sử dụng biến mảng


- Cách kết hợp với lệnh lặp for…do
<i>d) Hướng dẫn HS tự học ở nhà: 2’</i>


- Về nhà xem lại bài học tiết sau chúng ta thực hành tiếp.


</div>
<span class='text_page_counter'>(61)</span><div class='page_container' data-page=61>

<b>Ngµy dạy : </b>

<b>8A :</b>

<b>8B :</b>



<b>Tit 60</b>



<i><b>Bài thực hành 7:</b></i>

<b>xử lí dÃy số trong chơng trình (T)</b>



<b>1. Mục tiêu :</b>
<i>a) Kiến thức</i>


- Làm quen với việc khai báo và sử dụng các biến mảng
<i>b) Kỹ Năng :</i>


<i> - Ôn luyện cách sử dụng câu lệnh lặp </i><b>for…do</b>.


- Củng cố các kĩ năng đọc, hiểu và chỉnh sửa chương trình.
<i>c) Thái độ: Nghiêm túc</i>


<b>2. Chuẩn bị của giáo viên và học sinh :</b>
<i>a) Giáo viên: giáo án, máy chiếu</i>
<i>b) Học sinh: Kiến thức cũ, sách, vở.</i>
<b>3. Tiến trình bài dạy:</b>



<i>a) KiĨm tra bµi cị: 3</i>’


1. Hãy cho một số ví dụ về lặp với số lần chưa biết trước.
<i><b>b) </b><b>Dạy nội dung b</b><b>µi míi: </b></i>38’


<b>HOẠT ĐỘNG CỦA</b>
<b>THẦY VÀ TRÒ</b>


<b>NỘI DUNG</b>
GV: Đưa ra bài tập 2 SGK


? Gọi học sinh nêu ý tưởng
- GV hướng dẫn


HS: Làm bài tập


<i><b>Bài 2. Bổ sung và chỉnh sửa chương trình trong bài </b></i>
1 để nhập hai loại điểm Toán và Ngữ văn của các
bạn, sau đó in ra màn hình điểm trung bình của mỗi
bạn trong lớp (theo cơng thức điểm trung bình =
(điểm Tốn + điểm Ngữ văn)/2), điểm trung bình
của cả lớp theo từng mơn Tốn và Ngữ văn.
a) Tìm hiểu ý nghĩa của các câu lệnh sau đây:
Phần khai báo:


<b>Var</b>


i, n: integer;



TbToan, TbVan: real;


DiemToan, DiemVan: array[1..100] of
real;


Phần thân chương trình:
<b>begin</b>


writeln('Diem trung binh:');
<b>for i:=1 to n do</b>


writeln(i,'. ',(DiemToan[i]
+DiemVan[i])/2:3:1);


</div>
<span class='text_page_counter'>(62)</span><div class='page_container' data-page=62>

<b>begin TbToan:=TbToan+DiemToan[i];</b>
TbVan:=TbVan+DiemVan[i] end;


TbToan:=TbToan/n; TbVan:=TbVan/n;
writeln('Diem trung binh mon Toan:
',TbToan:3:2);


writeln('Diem trung binh mon Van:
',TbVan:3:2);


<b>end.</b>


b) Bổ sung các câu lệnh trên vào vị trí thích hợp
trong chương trình. Thêm các lệnh cần thiết, dịch và
chạy chương trình với các số liệu thử.



<i>c) Củng cố, luyện tập: 3’</i>
- Cách sử dụng biến mảng


- Cách kết hợp với lệnh lặp for…do
<i>d) Hướng dẫn HS tự học ở nhà: 2’</i>


- Về nhà xem lại bài hc tit sau chỳng ta thc hnh tip.


<i><b>Ngày soạn</b><b>:</b></i>


<b>Ngày dạy : </b>

<b>8A :</b>

<b>8B :</b>



<b>Tiết 61</b>



<b>QUAN SÁT HÌNH KHÔNG GIAN VỚI PHẦN MỀM YENKA. (t1)</b>
<b>1. Mục tiêu :</b>


<i>a) Kiến thức</i>


- HS biêt khám phá, các hình khơng gian như: Thay đổi, di chuyển, thay đổi
kích thước, thay đổi màu cho các hình.


<i>b) Kỹ Năng : </i>- HS thực hiện được các kỹ năng thay đổi, di chuyển, thay đổi kích
thước, thay đổi màu cho các hình.


<i>c) Thái độ: Nghiêm túc, cẩn thận.</i>


<b>2. Chuẩn bị của giáo viên và học sinh :</b>
<i>a) Giáo viên: </i>tài liệu, giáo án.



<i>b) Học sinh: </i>Xem tríc näi dung bµi häc, dơng cơ häc tËp.


<b>3. Tiến trình bài dạy: </b>
<i>a) KiĨm tra bµi cị: </i>


<i><b>b) </b><b>Dạy nội dung b</b><b>µi míi: </b></i>40’


</div>
<span class='text_page_counter'>(63)</span><div class='page_container' data-page=63>

<b>Hoạt động 1: (20p)</b>


<b>1. Giíi thiƯu phÇn</b>
<b>mỊm. </b>


Yenka là một phần mềm nhỏ, đơn giản nhưng
rất có ý nghĩa. Phần mềm sẽ cho phép em làm
quen với các hình khối khơng gian đơn giản
như hình chóp, hình nón, hình trụ. Khơng
những có thể tạo ra các hình này, em cịn có thể
tương tác với chúng: thay đổi kích thước, màu
sắc và dịch chuyển và sắp xếp các hình này
trong khơng gian. Từ một vài đối tượng hình
khơng gian cơ bản em có thể sáng tạo ra các
khối hình hồn chỉnh, có ý nghĩa như những
cơng trình xây dựng, kiến trúc theo ý muốn của
mình.


Phần mềm cũng sẽ giúp em hiểu rõ hơn các bài
học về hình không gian trong chương trình
mơn Tốn bậc THCS.


<b>Hoạt động 2: (20p)</b>



<b>2. Giới thiệu màn hình làm việc chính</b><i><b>. </b></i>
<b>a. khởi động phÇn mỊm:</b>


GV: Giíi thiƯu: Sau khi cài đặt em sẽ nhìn thấy


biểu tượng của phần mềm có dạng như sau trên
màn hình.


Để khởi động:


Nháy đúp vào biểu tượng này để chạy phần
mềm. Em sẽ thấy xuất hiện cửa sổ thơng tin sau
đây:


HS: Chó ý l¾ng nghe va ghi bµi:



<b>1. Giới thiệu :</b>



<b>- Yenka là một phần mềm nhánh</b>
<b>của cơng ty phần mềm Crocodile</b>


<b>nổi tiếng.</b>


<b>- Chức năng chính của phần mềm</b>
<b>là giúp học sinh thiết kế các mơ</b>
<b>hình hình khối kiến trúc khơng</b>
<b>gian dựa trên các hình khơng gian</b>
<b>c/ bản nhu hình trụ, lăng trụ, hình</b>



<b>chóp, hình hộp. </b>


<b>2. Giới thiệu màn hình làm việc </b>
<b>chính</b><i><b>. </b></i>


</div>
<span class='text_page_counter'>(64)</span><div class='page_container' data-page=64>

<b>b. Màn hình chính:</b>


<b>c. Thốt khỏi phần mềm:</b>


Mn thoát khỏi phần mỊm, nh¸y nót close
trên thanh công cụ.


<b>b. Maứn hỡnh chớnh:</b>


<b>c.Thoỏt khi phn mm:</b>


Muốn thoát khỏi phần mềm, nháy nút
close trên thanh công cụ.


<i>c) Củng cố, luyện tập: 3’</i>


Gv Hệ thống lại kiến thực trọng tâm trong bài.
<i>d) Hướng dẫn HS tự học ở nhà: 2’</i>


- Về nhà đọc tiếp bài “Quan sát hình không gian bằng phần mềm YenK”.
- Về nhà xem lại ni dung va hc, xem tip bi hc.


<i><b>Ngày soạn</b><b>:</b></i>


<b>Ngày dạy : </b>

<b>8A :</b>

<b>8B :</b>




<b>Tiết 62</b>



<b>QUAN SÁT HÌNH KHÔNG GIAN VỚI PHẦN MỀM YENKA (t2)</b>
<b>1. Mục tiêu :</b>


<i>a) Kiến thức</i>


*) Tiếp tục hớng dẫn để:


- HS biêt khám phá, các hình khơng gian như: Thay đổi, di chuyển, thay đổi
kích thước, thay đổi màu cho các hình.


<i>b) Kỹ Năng : </i>- HS thực hiện được các kỹ năng thay đổi, di chuyển, thay đổi kích
thước, thay đổi màu cho các hình.


<i>c) Thái độ: Nghiêm túc, cẩn thận.</i>


<b>2. Chuẩn bị của giáo viên và học sinh :</b>
<i>a) Giáo viên: </i>tài liệu, giáo án.


</div>
<span class='text_page_counter'>(65)</span><div class='page_container' data-page=65>

<b>3. Tiến trình bài dạy:</b>
<i>a) KiĨm tra bµi cị: 3</i>’


- Em hãy giới thiệu lại về phần mềm YenK? Mở và đóng phần mềm trên
máy tính?


<i><b>b) </b><b>Dạy nội dung b</b><b>µi míi: </b></i>37’


Hoát ủoọng GV – HS Noọi dung


<b>Hoạt động 1: (18p)</b>


<b>3. Tạo các hình không gian.</b>


<b>Hoạt động 2: (17p)</b>


*) Xoay mô hình trong khoâng gian 3D.
- Nháy vào biểu tượng trên thanh
cơng cụ chức năng. Khi đó con trỏ sẽ trở
thành dạng .


- Đưa con trỏ chuột lên khung màn hình,


<b>3. Tạo các hình không gian.</b>
a. Tạo mô hình.


Vào hộp hội thoại sau:


Chọn hình và kéo thả các đối tượng vào khu
vực tạo các đối tượng.




 Xoay mơ hình trong khơng gian 3D.
- Nháy vào biểu tượng xoay


- Đưa con trỏ chuột lên mô hình
Hình trụ


hình


chóp
Hình
lăng trụ
Hình


</div>
<span class='text_page_counter'>(66)</span><div class='page_container' data-page=66>

nhấn giữ và kéo rê chuột trên màn hình
em sẽ thấy khung mơ hình quay trong
khơng gian 3D. Lệnh hết tác dụng khi
em thả tay chuột.


 Phoùng to, thu nhỏ:


 di chuyển khung mô hình:


b/ các lệnh tạo mới, lưu, mở tệp mơ hình:


c/ Xóa các đối tượng:


- Nhấp chuột vào mơ hình cần xóa
- Ctrl + A hoặc Delete.


<i>c) Củng cố, luyện tập: 3’</i>


Gv Hệ thống lại kiến thực trọng tâm trong bài.
<i>d) Hướng dẫn HS tự học ở nhà: 2’</i>


- Về nhà đọc tiếp bài “Quan sát hình khơng gian bằng phần mềm YenK”.
- Về nhà xem lại nội dung vừa hc, xem tip bi hc.



<i><b>Ngày soạn</b><b>:</b></i>


<b>Ngày dạy : </b>

<b>8A :</b>

<b>8B :</b>



</div>
<span class='text_page_counter'>(67)</span><div class='page_container' data-page=67>

<b>víi phÇn mỊm yenka (T3)</b>


<b>1. Mục tiêu :</b>


<i>a) Kiến thức</i>


- HS biết khám phá, điều khiển các hình không gian như: thay đổi, di
chuyển, thay đổi kích thước, thay đổi màu cho các hình.


<i>b) Kỹ Năng : </i>


- HS thực hiện được các kỉ năng thay đổi, di chuyển, thay đổi kích thước,
thay đổi màu cho các hình cụ thể.


<i>c) Thái độ: </i>


- HS nghiªm tóc trong häc tập và nghiên cứu bài học.


<b>2. Chun b ca giỏo viên và học sinh :</b>
<i>a) Giáo viên: </i>tài liệu, giáo án.


<i>b) Học sinh: </i>Xem tríc näi dung bµi häc, dơng cơ häc tËp.


<b>3. Tiến trình bài dạy:</b>
<i>a) KiĨm tra bµi cũ: 8</i>


GV: Cho hinh vẽ lên bảng phụ


HS: Vẽ theo yêu cầu


<i><b>b) </b><b>Dy ni dung b</b><b>ài mới: 1</b></i>5


TG Hot động của thầy và trị Nội dung


15 GV: Giíi thiệu
HS: nghe và ghi.


<b>4. Khám phá, điều khiển các hình </b>


c) Thay đổi màu cho các hình.
*) Các bớc thay đổi màu
Để tô màu ta dùng công cụ


Khi nhày nút cơng cụ này ta có một
danh sách màu đổ xuống:


</div>
<span class='text_page_counter'>(68)</span><div class='page_container' data-page=68>

TG Hoạt động của thầy và trị Nội dung


Các tính của hình có thể thay đổi
thơng qua hộp thoại tính chất đối tợng
ta làm nh sau:


d) Thay đổi tính chất của hình


Nháy đúp lên đối tợng, hộp thoại mô
tả các thông tin xuất hiện


Chúng ta có thể thay đổi tham số


quan trọng của hình là chiều cao
(height) và độ dại cạnh đáy (base
edge) bằng cách gõ trực tiếp vào ô
hoặc nháy chuột vào để tăng hay
giảm từng đơn vị.


<i>c) Củng cố, luyện tập: 20’</i>


GV: Cho học sinh thực hành vẽ hình, sáng tạo theo ý thích.


<i>d) Hng dn HS t hc nh: 2</i>


Đọc các mục còn lại.


ễn li cỏc kin thc ca k II để chuẩn bị kiểm tra 1 tiết phần thực hnh.


<i><b>Ngày soạn</b><b>:</b></i>


<b>Ngày dạy : </b>

<b>8A :</b>

<b>8B :</b>



<b>Tiết 64</b>

<b>:</b>

<b>quan sát hình không gian </b>


<b>với phần mềm yenka (T4)</b>



<b>1. Mục tiêu :</b>
<i>a) Kiến thức</i>


- HS biết khám phá, điều khiển các hình không gian như: thay đổi, di
chuyển, thay đổi kích thước, thay đổi màu cho các hình.


<i>b) Kỹ Năng :</i>



- HS thực hiện được các kỉ năng thay đổi, di chuyển, thay đổi kích thước,
thay đổi màu cho các hình cụ thể.


</div>
<span class='text_page_counter'>(69)</span><div class='page_container' data-page=69>

- HS nghiªm tóc trong häc tËp và nghiên cứu bài học.


<b>2. Chun b ca giỏo viờn và học sinh :</b>
<i>a) Giáo viên: </i>tài liệu, giáo án.


<i>b) Học sinh: </i>Xem tríc näi dung bµi häc, dơng cơ häc tËp.


<b>3. Tiến trình bài dạy:</b>
<i>a) KiĨm tra bµi cị: 8</i>


GV: Cho hinh vẽ lên bảng phụ
HS: Vẽ theo yêu cầu


? Nờu cỏc bc thay i mu v, thụng số của hình vẽ.


<i><b>b) </b><b>Dạy nội dung b</b><b>µi míi: 15</b></i>’


TG Hoạt động của thầy và


trß Néi dung


15 GV: Mét chức năng rất hay của phần
mềm là cho phép ta qua sát cách tạo
không gian từ một hình phẳng. Phần
mềm sẽ cho phép quan sát và thực
hiện hai quá trình ngợc lại:



- Cho hỡnh phng cn gấp lại để thành
hình khơng gian.


- Hình khơng gian cần m tr
thnh hỡnh phng.


<b>4. Khám phá, điều khiển các hình </b>
<b>(tiếp)</b>


e) Gp giy thnh hỡnh khụng gian
*) Gp hình phẳng để tạo thành hình
khơng gian


Sư dơng các công cụ
,


<i>B</i>


<i> ớc 1</i>: Chọn
hoặc


trong hộp thoại kéo thả đối tợng vào
giữa màn hình.


<i>B</i>


<i> ớc 2. </i> Kéo thả chuột để thực hiện
thao tác gấp hình phẳng thành hình
khơng gian tng ng.



<b>*) Mở hình không gian thành hình </b>
<b>phẳng SGK </b>–<b> 119 </b>–<b> 120)</b>


<i>c) Củng cố, luyện tập: 20’</i>


GV: Cho học sinh thực hành vẽ hình, sáng tạo theo ý thích.
HS: Thực hành thao tác gấp và mở hình.


<i>d) Hng dn HS t hc nh: 2</i>


Đọc các mục còn l¹i.


Ơn lại các kiến thức của kỳ II để chun b kim tra 1 tit phn thc hnh.


<i><b>Ngày soạn</b><b>:</b></i>


<b>Ngày d¹y : </b>

<b>8A :</b>

<b>8B :</b>



</div>
<span class='text_page_counter'>(70)</span><div class='page_container' data-page=70>

<b>víi phÇn mỊm yenka (T5)</b>


<b>1. Mục tiêu :</b>


<i>a) Kiến thức</i>


- HS biết khám phá, điều khiển các hình khơng gian như: thay đổi, di
chuyển, thay đổi kích thước, thay đổi màu cho các hình.


<i>b) Kỹ Năng : </i>


- HS thực hiện được các kỉ năng thay đổi, di chuyển, thay đổi kích thước,


thay đổi màu cho các hình cụ thể.


<i>c) Thái độ: </i>


- HS nghiêm túc trong học tập và nghiên cứu bài học.


<b>2. Chuẩn bị của giáo viên và học sinh :</b>
<i>a) Giáo viên: </i>tài liệu, giáo án.


<i>b) Học sinh: </i>Xem tríc näi dung bµi häc, dơng cơ häc tËp.


<b>3. Tiến trình bài dạy:</b>
<i>a) KiĨm tra bµi cị: 8</i>


GV: Cho hinh vÏ lên bảng phụ
HS: Vẽ theo yêu cầu


Nêu các bớc gấp hình phẳng thành hình không gian?
Thực hành gấp trên máy.


<i><b>b) </b><b>Dạy nội dung b</b><b>µi míi: </b></i>15’


TG Hoạt động của thầy và


trß Néi dung


15 GV: Giới thiệu: Đối với các mặt của
hình khơng gian, ta cũng có thể thay
đổi màu, ta còn thay đổi đợc kiểu
và mẫu thể hiện ta lam các bớc sau:


HS: nghe và ghi và GV thực hành
mẫu học sinh quan sát và thực hành
theo.


5. Một số chức năng nâng cao
a) thay đổi mẫu thể hiện hình.
Bớc 1: Nháy đúp chuột để mở hộp
thoại tính chất của hình


Bớc 2. Chọn lệnh thay đổi kiểu bề mặt


<b>surface appearance > </b>


Bíc 3. Trong hép tho¹i tiÕp theo, chän
Use material và chọn mẫu trong danh
sách Material phía dới.


b) Quay hình trong không gian


Trong hộp thoại tính chất hình, em có
thể quay hình theo các cách khác nhau
trong không gian:


- Khung Râttion có các lệnh cho phép
cho phép quay hình theocác cách khác
nhau:


+ Quay theo trôc ngang.
+ Quay theo trôc däc



+ Quay theo trục thẳng đứng.
+ Trở lại vị trí ban đầu..


<i>c) Củng cố, luyn tp: 20</i>


GV: Cho học sinh thực hành vẽ hình, sáng tạo theo ý thích.
HS: Thực hành Vẽ hình và quay hình, tô màu hình.


<i>d) Hng dn HS t hc nh: 2</i>


Đọc các mục còn lại.


</div>
<span class='text_page_counter'>(71)</span><div class='page_container' data-page=71>

<i><b>Ngày soạn</b><b>:</b></i>


<b>Ngày dạy : </b>

<b>8A :</b>

<b>8B :</b>



<b>Tiết 66</b>

<b>:</b>

<b>quan sát hình không gian </b>


<b>với phần mềm yenka (T6)</b>



<b>1. Mc tiêu :</b>
<i>a) Kiến thức</i>


- HS biết khám phá, điều khiển các hình khơng gian như: thay đổi, di
chuyển, thay đổi kích thước, thay đổi màu cho các hình.


<i>b) Kỹ Năng : </i>


- HS thực hiện được các kỉ năng thay đổi, di chuyển, thay đổi kích thước,
thay đổi màu cho các hình cụ thể.



<i>c) Thái độ: </i>


- HS nghiªm tóc trong häc tËp và nghiên cứu bài học.


<b>2. Chun b ca giỏo viờn và học sinh :</b>
<i>a) Giáo viên: </i>tài liệu, giáo án.


<i>b) Học sinh: </i>Xem tríc näi dung bµi häc, dơng cơ häc tËp.


<b>3. Tiến trình bài dạy:</b>
<i>a) KiĨm tra bµi cị: 8</i>


GV: Cho hinh vẽ lên bảng phụ
HS: Vẽ theo yêu cầu


? Nờu cỏc bc thay i mu th hin hình.
? Quay hình trong khơng gian.


<i>b) Dạy nội dung bµi mới: 43</i>


<b>GV: </b>Cho học sinh thực hành tổng hợp các mục:
- Cách tạo mô hình


- Xoay mô hình trong không gian 3D
- Phãng to, thu nhá.


- Di chuyển khung mô hình.
- Xố các đối tợng.


<b>HS: </b>Thùc hµnh



<i>c) Củng cố, luyện tập: (Kết hợp trong giờ thực hành)</i>
<i>d) Hướng dẫn HS t hc nh: 2</i>


Đọc các mục còn lại.


</div>
<span class='text_page_counter'>(72)</span><div class='page_container' data-page=72>

<i><b>Ngày soạn</b><b>:</b></i>


<b>Ngày dạy : </b>

<b>8A :</b>

<b>8B :</b>



<b>Tiết 67</b>: <b>kiĨm tra thùc hµnh 1 tiÕt</b>


<b>1. Mục tiêu :</b>


<i>a) Kiến thức :</i>Häc sinh thùc hiƯn kiĨm tra thực hành trên máy tính.


<i>b) K Nng : </i>Kiếm thức chđ u thc 3 bµi häc ci cïng.


<i>c) Thỏi độ: </i>ý thức làm bài và bảo vệ máy tính để s dng lõu di.


<i>*/ Chuẩn bị: </i>


GV- Sách giáo khoa, giáo án, tài liệu tin học có liên quan.
HS - §äc tµi liƯu ë nhµ tríc khi


<b>2. Đề kiểm tra:</b>


<b>Câu 1</b>: Lập trình tính tổng:
A= 1+2+3+..+n



ở đây n là số tự nhiên đợc nhập từ bàn phím. (viết b»ng lƯnh while .. do)


<b>C©u 2 : </b>B¹n h·y tÝnh tỉng


(viÕt b»ng lƯnh for ... do)


(<b> u ýL : </b> Mỗi câu đợc ghi lại thành 1 File ở Mydocments có tên là LOP8A.PAS Và
LOP8B.PAS).


<b>3. đáp án + thang điểm và hớng dẫn chấm.</b>



<b>C©u 1 : </b>


Lm ỳng cho 5 im :


<b>Câu</b> <b>Nội dung</b> <b>Điểm</b>


1



Program B1 ;
Uses CRT;
Var


i, n: integer;
tong: real;


1,5


Begin
Clrscr;



write('cho so tu nhien n: '); Readln(n);
tong:=0; i:=1;


1,5


while i<= n do
Begin


tong:= tong+ i;
i: = i+1;


End;


1


writeln(' Tong can tim la: ', tong:12:6);
Readln;


End. 1


2

Làm đúng cho 5 điểm


1,5


Program B2;
Var i: byte;
s: real;
Begin



s:=0; 1,5


</div>
<span class='text_page_counter'>(73)</span><div class='page_container' data-page=73>

Writeln(' 1+ 1/2 + 1/3 + .. . + 1/20 = ', s: 14:10);


Readln; End. 1


<b>4.Nhận xét, đánh giá sau khi chấm bài kiểm tra:</b>


<i><b>Ngµy soạn</b><b>:</b></i>


<b>Ngày dạy : </b>

<b>8A :</b>

<b>8B :</b>



<b>Tiết 68</b>: <b>«n tËp</b>


<b>1. Mục tiêu :</b>
<i>a) Kiến thức</i>


 Củng cố lại toàn bộ kiến thức đã đợc học từ bài 5 đến bài 9 và phần mềm
học tập ở học kỳ 2.


 Thực hiện làm các bài trắc nghiệm. Vận dụng vào để viết đợc những chơng
trình n gin


<i>b) K Nng : </i>Có kỹ năng thành thạo thực hiện máy tính và viết chơng trình trên
máy tÝnh.


<i> c) Thái độ: Nghiêm túc, cẩn thận.</i>
<b>2. Chuẩn bị của giáo viên và học sinh :</b>
<i>a) Giáo viên: </i>tài liệu, giáo án.



<i>b) Học sinh: </i>Xem tríc näi dung bµi häc, dơng cơ häc tËp.


<b>3. Tiến trình bài dạy:</b>
<i>a) KiĨm tra bµi cị: 1</i>’


- KiĨm tra sù chn bÞ cđa häc sinh .


<i><b>b) </b><b>Dạy nội dung b</b><b>µi míi: </b></i>40’


Hoạt động của giáo viên Hoạt động của học sinh
Giáo viên cho học sinh ôn lại lý thuyt


Theo sách giáo khoa.
(Học sinh về nhà tự ôn)


Học sinh thùc hiÖn theo yêu cầu của
giáo viên


Ôn bài tập vận dụng:


<b>Khoanh trũn ch cỏi ng trc kết quả đúng</b>
<b>Câu 1</b>: Phát biểu nào sau đây là đúng ?


</div>
<span class='text_page_counter'>(74)</span><div class='page_container' data-page=74>

B. Chỉ ngơn ngữ lập trình Pascal mới có các câu lệnh lặp để thể hiện cấu
trúc lặp.


C. Ngôn ngữ Pascal thể hiện cấu trúc lặp với số lần lặp cho trước bằng câu
lệnh while<b>…</b>do


D. Ngôn ngữ Pascal thể hiện cấu trúc lặp với số lần lặp chưa biết trước bằng


câu lệnh For<b>…</b>do


<b>Câu 2</b>: Lệnh lặp nào sau đây là đúng?


A. For <biến đếm>= <giá trị đầu> to <giá trị cí> do <câu lệnh>;
B. For <biến đếm>:= <giá trị đầu> to <giá trị cí> do <câu lệnh>;
C. For <biến đếm>:= <giá trị cí> to <giá trị đầu> do <câu lệnh>;
D. For <biến đếm>: <giá trị đầu> to <câu lệnh> do <giá trị cuối>;
<b>Câu 3</b>: Câu lệnh pascal nào sau đây là hợp lệ?


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’);
<b>Câu 4</b>: Vòng lặp while ..do là vòng lặp:


A) Biết trước số lần lặp B) Chưa biết trước số lần lặp


C.) Biết trước số lần lặp nhưng giới hạn là <=100 D) Biết trước số lần lặp nhưng
giới hạn là >=100


<b>Câu 5</b>: Câu lệnh lặp <b>while…do</b> có dạng đúng là:


A) While <điều kiện> do; <câu lệnh>; B) While <điều kiện> <câu lệnh>
do;


C) While <câu lệnh> do <điều kiện>; D) While <điều kiện> do <câu
lệnh>;


<b>Câu 6</b>: Cho S và i là biến nguyên. Khi chạy đoạn chương trình :


s:=0;


for i:=1 to 5 do s := s+i;
writeln(s);


Kết quả in lên màn hình là của s là :


A.11 B. 55 C. 101 D.15


<b>Câu 7:</b> Trong chương trình pascal sau ñaây:
Var x : integer ;


Begin


X:= 3 ;


</div>
<span class='text_page_counter'>(75)</span><div class='page_container' data-page=75>

End.


X có giá trị là mấy


a) 3 b) 5 c) 15 d)10


<b>Câu 8: T</b>rong chương trình pascal sau ñaây:
program hcn;


var a, b :integer;
s,cv :real ;
begin


a:= 10;


b:= 5;
s:= a*b ;


cv:= (a +b ) * 2 ;


writeln(‘dien tich hcn la:’ , s );
writeln( ‘chu vi hcn la : ‘ , cv ) ;
readln;


end.


Bieán s và cv có giá trị là mấy:


a/ s = 10 ; cv = 5 ; b/ s= 30 ; cv = 50 ;


c/ s = 50 ; cv = 40 ; d/ s = 50 ; cv = 30 ;
<i>c) Cng c, luyn tp: 3</i>


- Giáo viên hệ thống lại toàn bộ nội dung bài học.
- Yêu cầu học sinh nhắc lại bài


<i>d) Hng dn HS t hc ở nhà: 1’</i>


- 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.


- Làm các bài tập còn lại,



<i><b>Ngày soạn</b><b>:</b></i>


<b>Ngày dạy : </b>

<b>8A :</b>

<b>8B :</b>



<b>TiÕt 69</b>: <b>«n tËp</b>


<b>1. Mục tiêu :</b>
<i>a) Kiến thức</i>


 Củng cố lại toàn bộ kiến thức đã đợc học từ bài 5 đến bài 9 và phần mềm
học tập ở học kỳ 2.


 Thực hiện làm các bài trắc nghiệm. Vận dụng vào để viết đợc những chng
trỡnh n gin


<i>b) K Nng : </i>Có kỹ năng thành thạo thực hiện máy tính và viết chơng trình trên
máy tính.


</div>
<span class='text_page_counter'>(76)</span><div class='page_container' data-page=76>

<b>2. Chun b ca giỏo viên và học sinh :</b>
<i>a) Giáo viên:</i>


- S¸ch gi¸o khoa, giáo án, tài liệu tin học có liên quan.


<i>b) Hc sinh: </i>- Đọc tài liệu ở nhà trớc khi


<b>3. Tiến trình bài dạy:</b>
<i>a) KiĨm tra bµi cị: 1</i>’


- KiĨm tra sù chn bÞ cđa häc sinh .



<i><b>b) </b><b>Dạy nội dung b</b><b>µi míi: </b></i>40’


Hoạt động của giáo viên Hoạt động của học sinh
Ôn bài tập củng cố kiến thức:


<b>Câu 9:</b> Sau khi thực hiện đoạn chương trình j:= 0; <b>for</b> i:= 1 <b>to</b> 3 <b>do</b> j:=j+2; thì giá
trị in ra màn hình là?


a) 4 b) 6 c) 8 d)10


<b>Câu 10:</b> Để tính tổng S=1+3 + 5 + … + n; em chọn đoạn lệnh:
a) for i:=1 to n do


if ( i mod 2)=0 then S:=S + 1/i;


c) for i:=1 to n do


if ( i mod 2) < > 0 then S:=S +
i;


b) for i:=1 to n do


if ( i mod 2)=0 then S:=S + i
Else S:= S + I;


d) for i:=1 to n do


if ( i mod 2)=0 then S:=S + i;
<b>Câu 11:</b> Để tính tổng S=1/2+1/4 + 1/6 + … +1/ n; em chọn đoạn lệnh:



a) for i:=1 to n do


if ( i mod 2)=0 then S:=S + 1/i;


c) for i:=1 to n do


if ( i mod 2) < > 0 then S:=S +
i;


b) for i:=1 to n do


if ( i mod 2)=0 then S:=S – 1/i
Else S:= S + 1/i;


d) for i:=1 to n do


if ( i mod 2)=0 then S:=S +1/ i
Else S:=S-1/i;


<b>Câu 12:</b> Để tính tổng S=1+1/3 + 1/5 + … +1/ n; em chọn đoạn lệnh:
a) for i:=1 to n do


if ( i mod 2)=1 then S:=S + 1/i; c) for i:=1 to n doif ( i mod 2) =0 then S:=S +
1/i;


b) for i:=1 to n do


if ( i mod 2)=0 then S:=S + 1/i
Else S:= S + 1/;



d) for i:=1 to n do


if ( i mod 2)=0 then S:=S + i;
<b>Câu 13:</b> Để đếm có bao nhiêu số lẻ nhỏ hơn hay bằng n ; em chọn đoạn lệnh:
a) for i:=1 to n do


if ( i mod 2)< >0 then S:=S + 1; c) for i:=1 to n doif ( i mod 2) =0 then S:=S + 1;
b) for i:=1 to n do


</div>
<span class='text_page_counter'>(77)</span><div class='page_container' data-page=77>

a) s:=0; i:=0;
While i<=n do


S:=S + 1;


a) s:=0; i:=0;
While i<=n do


If (I mod 2)= 1 Then S:=S + i;
b) s:=0; i:=0;


While i<=n do
begin


S:=S + i;
I:=i+1;
End;


d) s:=0; i:=0;
While i<=n do


begin


if (i mod2)=1 Then S:=S + i;
Else i:=i+1;


End;
<b>Caâu 15:</b> Caâu lệnh nào sau đây lặp vô hạn lần
a) s:=5; i:=0;


While i<=s do
s:=s + 1;


a) s:=5; i:=1;
While i<=s do


i:=i + 1;
b) s:=5; i:=1;


While i> s do
i:=i + 1;


d) s:=0; i:=0;
While i<=n do
begin


if (i mod2)=1 Then S:=S + i;
Else i:=i+1;


End;
<b>Câu 16:</b> Chọn khai báo hơp lệ



a) Var a,b: array[1..n] of real; c) Var a,b: array[1:n] of real;
b) Var a,b: array[1..100] of real; d) Var a,b: array[1…n] of real;
<b>Caâu 27:</b> Chọn khai báo hơp lệ


a) Const n=5;


Var a,b: array[1..n] of real;


c) Var n: real;


Var a,b: array[1:n] of real;
b) Var a,b: array[100..1] of real; d) Var a,b: array[1..5..10] of real;
<b>Caâu 17:</b> Chọn khai báo hơp lệ


a) Const n=5;


Var a,b: array[1..n] of integer;


c) Var n: real;


Var a,b: array[1:n] of real;


b) Var a,b: array[100..1] of integer; d) Var a,b: array[1..5..10] of integer;
<b>Câu 18:</b> Lần lượt thực hiện đoạn lệnh: <b>a[1]:=2; a[2]:=3; t:=a[1]+a[2]+1; </b>
Giá trị của t là


a) t=1 b) t=3 c) t=2 d) t=6
<i>c) Củng cố, luyện tập: 3’</i>



- Gi¸o viên hệ thống lại toàn bộ nội dung bài học.
- Yêu cầu học sinh nhắc lại bài


<i>d) Hng dn HS tự học ở nhà: 1’</i>


</div>
<span class='text_page_counter'>(78)</span><div class='page_container' data-page=78>

- 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.


- Lm cỏc bi tp cịn lại và ơn lại tồn bộ kiến thức để gi sau kim tra hc
k 2


<b></b>
<i><b>---o0o---Ngày soạn</b><b>:</b></i>


<b>Ngày dạy : </b>

<b>8A :</b>

<b>8B :</b>



<b>TiÕt 70</b>: <b>kiÓm tra häc kú 2</b>


<b>1. Mục tiêu</b>


<i>a) Kiến thức</i>
<i>b) Kỹ Năng :</i>
<i>c) Thái độ:</i>
<i>*/ Chuẩn bị: </i>


GV - Sách giáo khoa, giáo án, tài liệu tin học có liên quan.
HS - Đọc tài liệu ë nhµ tríc khi


<b>2. </b>Đề ể ki m tra:



<b>Hä tên: ………</b>
<b>Lớp: 8…</b>


<b>ĐỀ KIỂM TRA HỌC KỲ 2 NĂM HỌC 2008 – 2009</b>


<b> Môn: Tin học 8 (Thời gian 45 phút)</b>
<b>A/ LÝ THUYẾT:</b>


<b>I/ Trắc nghiệm khách quan: </b>


<b>Khoanh trịn chữ cái đứng trước kết quả đúng .</b>
<b>Câu 1</b>: Lệnh lặp nào sau đây là đúng?


E. For <biến đếm>= <giá trị đầu> to <giá trị cí> do <câu lệnh>;
F. For <biến đếm>:= <giá trị đầu> to <giá trị cí> do <câu lệnh>;
G. For <biến đếm>:= <giá trị cí> to <giá trị đầu> do <câu lệnh>;
For <biến đếm>: <giá trị đầu> to <câu lệnh> do <giá trị cuối>;


<b>Câu 2</b>: Vòng lặp while ..do là vòng lặp:


A) Chưa biết trước số lần lặp B) Biết trước số lần lặp


C.) Biết trước số lần lặp nhưng giới hạn là <=100 D) Biết trước số lần lặp nhưng giới
hạn là >=100


<b>Câu 3</b>: Câu lệnh lặp <b>while…do</b> có dạng đúng là:


A) While <điều kiện> do; <câu lệnh>; B) While <điều kiện> <câu
lệnh> do;



C) While <câu lệnh> do <điều kiện>; D) While <điều kiện> do <câu
lệnh>;


<b>Câu 4</b>: Cho S và i là biến nguyên. Khi chạy đoạn chương trình :
s:=0;


for i:=1 to 5 do s := s+2;
writeln(s);


</div>
<span class='text_page_counter'>(79)</span><div class='page_container' data-page=79>

A.11 B. 55 C. 12 D.13
<b>Câu 5:</b> Lần lượt thực hiện đoạn lệnh: <b>a[1]:=2; a[2]:=3; t:=a[1]+a[2]+1; </b>
Giá trị của t là


A) t=1 B) t=2 C) t=3 D) t=6
<b>Câu 6</b>: Câu lệnh pascal nào sau đây là hợp lệ?


B) For i:= 1 to 10 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:=100 to 1 do
writeln(‘A’);


<b>II/ Tự luận:</b>


Viết chương trình Pascal sử dụng biến mảng để nhập từ bàn phím các phần
tử của một dãy số. Độ dài của dãy cũng được nhập từ bàn phím.


<b>BÀI LÀM:</b>


<b>Hä tên: ………</b>


<b>Lớp: 8 …</b>


<b>ĐỀ KIỂM TRA HỌC KỲ 2 NĂM HỌC 2008 – 2009</b>
<b>Môn: Tin học 8 (Thời gian 45 phút)</b>


<b>B/ THỰC HÀNH:</b>


Viết chương trình nhập điểm của các bạn trong lớp. Sau đó in ra màn hình số
bạn đạt kết quả học tập loại giỏi, khá, trung bình và kém (theo tiêu chuẩn từ 8.0 trở
lên đạt loại giỏi, từ 6.5 đến 7.9 đạt loại khá, từ 5.0 đến 6.4 đạt trung bình và dưới 5.0
xếp loại kém).


a) Liệt kê các biến dự định sẽ sử dụng trong chương trình. Tìm hiểu phần khai báo
dưới đây và tìm hiểu tác dụng của từng biến:


<b>program Phanloai;</b>
<b>uses crt;</b>


<b>Var</b>


i, n, Gioi, Kha, Trungbinh, Kem: integer;
A: array[1..100] of real;


b) Gõ phần khai báo trên vào máy tính và lưu tệp với tên Phanloai. Tìm hiểu các
câu lệnh trong phần thân chương trình dưới đây:


<b>Begin</b>
clrscr;


write(‘Nhap so cac ban trong lop, n = ‘); readln(n);


writeln(‘Nhap diem:’);


<b>For i:=1 to n do Begin write(i,’. ‘); readln(a[i]); </b>End;
Gioi:=0; Kha:=0; Trungbinh:=0; Kem:=0;


</div>
<span class='text_page_counter'>(80)</span><div class='page_container' data-page=80>

<b>if a[i]>=8.0 then Gioi:=Gioi+1;</b>
<b>if a[i]<5 then Kem:=Kem+1;</b>


<b>if (a[i]<8.0) and (a[i]>=6.5) then Kha:=Kha+1;</b>
<b>if (a[i]>=5) and (a[i]<6.5) then </b>


Trungbinh:=trungbinh+1
end;


writeln(‘Ket qua hoc tap:’);
writeln(Gioi,’ ban hoc gioi’);
writeln(Kha,’ ban hoc kha’);


writeln(Trungbinh,’ ban hoc trung binh’);
writeln(Kem,’ ban hoc kem’);


readln
<b>End.</b>


c) Gõ tiếp phần chương trình này vào máy tính sau phần khai báo. Dịch, chạy
chương trình.




<b>-3. Đáp án - biểu điểm :</b>



<b>A/ LÝ THUYẾT (10 ĐIỂM)</b>
<b>I/ Trắc nghiệm khách quan: (3 điểm)</b>


Mỗi câu đúng cho 0,5 điểm


<b>Câu</b> <b>1</b> <b>2</b> <b>3</b> <b>4</b> <b>5</b> <b>6</b>


<b>Đáp án</b> <b>B</b> <b>A</b> <b>D</b> <b>C</b> <b>D</b> <b>A</b>


<b>II/ Tự luận: </b>(7 điểm)


<b>Program nhap_so_phan_tu_cu_mang;</b>
<b>Uses Crt;</b>


<b>var N, i: integer;</b>


A: array[1..100] of real;


<b>2.0</b>
<b>Begin</b>


<b>Clrscr;</b>


write('Nhap so phan tu cua mang, n= ',n); <b>2.0</b>


<b>for i:=1 to n do</b>


write('Nhap gia tri ',i,'cua mang, a[',i,']= '); <b>2.0</b>
<b> Readln;</b>



<b>end.</b> <b>1.0</b>


<b>B/ THỰC HÀNH</b>
Làm dúng cho 10 điểm


CÁCH TÍNH ĐIỂM CỦA BÀI
- Làm trịn đến phần mười


- Tính theo cơng thức sau: ĐTB của bà = (Điểm LT x 2 + Điểm TH) : 3


</div>
<span class='text_page_counter'>(81)</span><div class='page_container' data-page=81></div>

<!--links-->

×