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

Giao an tin 8 ca nam

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 (5.61 MB, 97 trang )

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

<b>Ngày soạn: 20/8/2008</b>
<b>Ngày giảng: 25/08/2008</b>


<b>Tiết 1</b>


<b>Bài 1. Máy tính </b>



<b>và chơng trình máy tính</b>



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



* Kin thức: HS hiểu đợc một số khái niệm thuật ngữ đơn giản về chơng trình


máy tính



* Kĩ năng: HS biết dùng một lệnh trong cuộc sống hàng ngày để thực hiện một vài


ví dụ



HS BiÕt ¸p dơng c¸c lƯn quen thuộc vào bài toán cụ thể.



* Thỏi : HS nghiêm túc trong học tập và nghiên cứu bài học.


<b>II. Chun b:</b>



*GV: SGK, Máy chiếu



* HS: Chuẩn bị trớc bài ë nhµ.



<b>III. Ph</b>

<b> ơng pháp</b>

<b> : vấn đáp, thuyết trình, trực quan</b>


IV. Tiến trình bài giảng



A. ổn định lớp



<i><b>B. KiĨm tra bài cũ: : Không kiểm tra</b></i>


C. Bài mới


<b>HĐ của thầy</b> <b>HĐ của trò</b> <b>Ghi bảng</b>


<i><b>HĐ 1. T×m hiĨu vỊ viƯc</b></i>


<i><b>con ngêi ra lƯnh cho MT</b></i>


<i><b>nh thÕ nµo.</b></i>



- GV: §Ĩ m¸y tÝnh cã thĨ


thùc hiƯn mét c«ng viƯc


theo mong mn cđa mình,


con ngời phải đa ra những


chỉ dẫn thích hợp cho m¸y


tÝnh.



VD: Nháy đúp chuột lên


biểu tợng  ra lệnh cho


MT khởi động phần mềm.


? Khi thực hiện sao chép 1


đoạn Vb, ta đã ra mấy lệnh


cho MT thực hiện



<i><b>HĐ2. Tìm hiểu hoạt động</b></i>


<i><b>của RoBot quét nhà.</b></i>



<i><b>( GV chiÕu trên màn</b></i>


<i><b>chiếu)</b></i>



Gi s cú mt ng rỏc v



mt rơ-bốt ở các vị trí nh


hình 1 dới đây. Từ vị trí


hiện thời của rơ-bốt, ta cần


ra các lệnh để chỉ dẫn


rô-bốt nhặt rác và bỏ rác vào


thùng rác để ở nơi quy


định.



- Nghe vµ ghi


chÐp



- HS lÊy VD



- HS : 2 lÖnh:



HS quan sát trên


mà chiếu.



1.Con ngời ra lệnh cho máy


tính nh thÕ nµo?



-

Để chỉ dẫn máy tính thực hiện


một cơng việc nào đó, con ngời


đa cho máy tính một hoặc


nhiều lệnh, máy tính sẽ lần lợt


thực hiện các lệnh này theo


đúng thứ tự nhận đợc.



VD1. : Gâ 1 ch÷ A lên màn


hình Ra lệnh cho MT ghi



chữ lên màn hình.



VD 2. Sao chép 1 đoạn vb là


yêu cầu MT thực hiện 2 lệnh:


sao chép ghi vào bộ nhớ và sao


chép từ bộ nhớ ra vị trí mới.



2. Ví dụ: rô-bốt quét nhà



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

? Nhìn vào hình, em hãy


mô tả các bớc để Robot có


thể thực hiện nhặt rác bỏ


vào thùng



Giả sử các lệnh trên đợc viết
và lu trong một tệp với tên
"Hãy nhặt rác ". Khi đó ta
chỉ cần ra lệnh "Hãy nhặt
rác", các lệnh trong tệp đó sẽ
điều khiển rô-bốt tự động
thực hiện lần lợt các lệnh nói
trên.


- Quan sát trên


màn chiếu và trả



lời.

1. Rẽ phải 3 bớc.
2. Tiến 1 bớc
3. Nhặt rác
4. Rẽ phải 3 bớc.

5. Tiến 3 bớc
6. Bỏ rác vào thùng


<i><b>D. Củng cố</b></i>

- Ghi nhí 1.



- lµm bµi tËp 1. SGK


<i><b>E. Hướng dẫn về nhà:.</b></i>

- Häc bµi theo SGK



- Häc ghi nhí 1 vµ làm lại BT 1; BT1 SGK



<b>Ngy son: 25/08/2008</b> <b>Tiết 2</b>


<b>Ngy ging: 28/08/2008</b>


<b>Bài 1. Máy tính </b>



<b>và chơng trình máy tính(tiếp theo)</b>



<b>I. Mơc tiªu:</b>



* Kiến thức: HS hiểu đợc một số khái niệm thuật ngữ đơn giản về chơng trình máy


tính



* Kĩ năng:



- HS bit dựng mt lnh trong cuc sống hàng ngày để thực hiện một vài ví dụ


- HS Biết áp dụng các lệnh quen thuộc vào bài tốn cụ thể.




- Biết viết chơng trình đơn giản ra lệnh cho MT làm việc.


* Thái độ

:

HS nghiêm túc trong học tập và nghiên cứu bài học.


<b>II. Chuẩn bị:</b>



* GV: SGK, Máy chiếu



* HS: Chuẩn bị trớc bài ở nhµ.



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

<b>IV. Tiến trình bài giảng</b>


<i><b>A. ổn định lp</b></i>



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


C. Bài mới


<b>HĐ của thầy</b> <b>HĐ của trò</b> <b>Ghi bảng</b>


<i><b>HĐ 1. Cách Viết </b></i>


<i><b>ch-ơng trình ra lƯnh cho</b></i>


<i><b>MT lµm viƯc</b></i>



- Việc viết các lệnh để


điều khiển rô-bốt về


thực chất cũng có


nghĩa là vit chng


trỡnh.



- Khi thực hiện chơng


trình, máy tính sẽ thực


hiện các lệnh có trong


chơng trình một cách



tuần tự



<i><b>HĐ2. Tìm hiểu lý</b></i>


<i><b>phải viết chơng trình</b></i>



? Để thực hiện đợc


công việc, máy tính


phải hiểu các lệnh đợc


viết trong chơng trình.


Vậy làm thế nào để


máy tính hiểu đợc các


lệnh của con ngời? Ta


có thể ra lệnh cho máy


tính bằng cách nói


hoặc gõ các phím bất


kì đợc khơng?



<i>các ngơn ngữ lập trình</i>


đã ra đời để giảm nhẹ


khó khăn trong việc


viết chơng trình



GV: Mô tả trên máy


chiếu việc ra lệnh cho


máy tính làm việc



Nghe và ghi chÐp.



- Quan s¸t trên màn


chiếu.




- Suy nghĩ trả lời



- Nghe và ghi ché



3. Viết chơng trình: ra lệnh cho máy


tính làm việc



Trở lại ví dụ về rô-bốt nhặt rác,


ch-ơng trình có thể có các lệnh nh sau



4. Tại sao cần viết chơng trình?



- Máy tính “nãi” vµ “ Hiểu bằng


một ngôn ngữ riêng là ngôn ngữ máy


tính.



- Viết chơng trình là sử dụng các tõ


cã nghÜa (thêng lµ tiÕng Anh)



<i>- Các chơng trình dịch đóng vai trị</i>


"ngời phiên dịch" và dịch những


ch-ơng trình đợc viết bằng ngơn ngữ lập


trình sang ngôn ngữ máy để máy


tính có thể hiểu đợc.



 Nh vậy, thông tin đa vào máy


phải đợc chuyển đổi thành dạng dãy


bit

(

dãy các tín hiệu đợc kí hiệu bằng


0 hoặc 1

).


<i><b>D. Cđng cè</b></i>

- Ghi nhí 1.


- Ghi nhí 2



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

- Häc bµi theo SGK



- Học ghi nhớ 1, 2 và làm lại BT 2,3 SGK



<b>Ngày soạn: 25/08/2008</b> <b>TiÕt 3</b>


<b>Ngày giảng: 29/08/2008</b>


<b>Bài 2. Từ bài tốn đến chơng trình</b>



<b>( TiÕt 1)</b>



<b>I. Mơc tiªu:</b>


*KiÕn thøc:



- Biết con người chỉ dẫn cho máy tính thực hiện cơng việc thơng qua lệnh.


- Biết chương trình là cách để con người chỉ dẫn cho máy tính thực hiện nhiều


công việc liên tiếp một cách tự động.



- Biết rằng viết chương trình là viết các lệnh để chỉ dẫn máy tính thực hiện các


cơng việc hay giải một bài tốn cụ thể.



- Biết ngơn ngữ dùng để viết chương trình máy tính gọi là ngơn ngữ lập trình.


- Biết vai trị của chương trình dịch.




* Thái độ: HS nghiêm túc trong học tập và nghiên cứu bài hc.


<b>II. Chun b:</b>



GV: SGK, Máy chiếu



HS: Chuẩn bị trớc bài ë nhµ.



<b>III. Ph</b>

<b> ơng pháp</b>

<b> : vấn đáp, thuyết trình, luyện tập.</b>


IV. Tiến trình bài giảng



<i><b>A. ổn định lớp</b></i>



<i><b>B. Bài cũ: Nêu 1 vài ví dụ mà em hiểu đó là “lệnh” đa ra để máy tính hiểu thực</b></i>



hiƯn?



C. Bµi mới


<b>HĐ của thầy</b>

<b>HĐ của HS</b>

<b>Ghi bảng</b>



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

toán?



- Để máy tính có thể giúp


giải quyết các bài toán


nói chung, chúng ta cũng


phải viết chơng trình, tức


chỉ dẫn cho m¸y tÝnh


thùc hiƯn các phần công


việc cụ thể thông qua các


lệnh và cho kÕt qu¶ mong



mn.



Các bài tốn rất phong


phú và đa dạng. Ví dụ:


Tính diện tích hình tam


giác, tìm đờng đi tránh


các điểm nút nghẽn giao


thông trong giờ cao điểm,


nấu một món ăn từ những


thực phẩm hiện có,...


Vậy, Đối với bài tốn nấu


một món ăn:



?§iỊu kiƯn cho tríc?



?Kết quả cần thu đợc?:


Muốn giải đợc thì việc


xác định bài toán là rất


quan trọng.



? Một bào tốn trên máy


tính sẽ đợc giải nh thế


nào?



Máy tính khơng thể tự mình
tìm ra lời giải của các bài
toán. Lời giải của một bài
toán cụ thể phải là t duy sáng
tạo của con ngời và kết quả
của t duy đó là thuật toán.


Một khi đã có thuật tốn, dựa
vào thuật tốn chúng ta sẽ
chạy chơng trình và cho ta lời
giải của bài tốn .


- Nghe vµ ghi chÐp.



-Thùc phÈm hiƯn


cã (trứng, mỡ,



mắm,

muối,



rau,...);



- Một món ăn.



- Suy nghÜ, cã thĨ


tr¶ lêi:



- Giải bài tốn trên


máy tính có nghĩa


là giao cho máy


tính cách thực hiện


các hoạt động cụ


thể qua từng bớc để


từ điều kiện cho


tr-ớc ta nhận đợc kết


quả cần thiết.



- Ghi chÐp.




mét nhiƯm vơ cần phải giải


quyết.



Chng hn, vi bi tốn ghi ra


<i>màn hình tổng của hai số a và b </i>


đợc gõ vào từ bàn phím, chơng


trình có thể gồm các lệnh nh


hình sau đây:



<b>2. Bài toán và cách xác định </b>


<b>bài toán</b>



Để phát biểu một bài toán cụ thể,


<i>ngời ta cần xác định rõ các điều</i>



<i>kiện cho trớc và kết quả cần thu</i>


<i>đợc.</i>



<i><b>VÝ dơ</b></i>


§Ĩ tÝnh diện tích hình tam giác:


Điều kiện cho trớc: Mét



cạnh và chiều cao tơng


ứng với cạnh đó;



 Kết quả cần thu đợc:


Diện tích hình tam giác.


<b>3. Q trình giải bài tốn trên</b>



<b>máy tính</b>



<b>- Máy tính giải bài toán qua các</b>


bớc sau:



+ Xỏc nh bi toỏn



+ Thiết lập phơng án giải quyết (


Xây dựng tht to¸n )



+ Viết chơng trình ( lập trình )


<b>Chú ý</b>

<b>: </b>

khi mơ tả thuật tốn, ngời
ta thờng chỉ ra cả INPUT và
OUTPUT kèm theo để biết đợc
thuật tốn đó dùng để giải bài tốn
nào.


<b>D. Cđng cè:</b>


<b>1. Cho một bài toán (xác định bài toán) là việc xác định các điều kiện ban đầu (thông tin vào </b>
-INPUT) và các kết quả cần thu đợc (thông tin ra OUTPUT).


<b>2. Giải bài toán trên máy tính có nghĩa là giao cho máy tính cách thức (thuật toán) tìm ra lời</b>
giải cụ thể của bài toán.


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

<b>E. Híng dÉn vỊ nhµ:</b>


- Häc bµi theo SGK
- Học thuộc ghi nhớ
- Làm các bài tập.



<b>Ngày soạn 29/08/2008</b> <b>Tiết 4</b>


<b>Ngày dạy 08/09/2008</b>


<b>Bi 2. T bi toỏn n chơng trình</b>


<b>( tiếp )</b>



<b>I. Mơc tiªu:</b>



*KIÕN THØC: - BiÕt con ngời chỉ dẫn cho máy tính thực hiện công việc th«ng qua


lƯnh.



- Biết chơng trình là cách để con ngời chỉ dẫn cho máy tính thực hiện nhiều cơng việc


liên tiếp một cách tự động.



- Biết rằng viết chơng trình là viết các lệnh để chỉ dẫn máy tính thực hiện các cơng


việc hay giải một bài tốn cụ thể.



- Biết ngơn ngữ dùng để viết chơng trình máy tính gọi là ngơn ngữ lập trình.


- Biết vai trị của chơng trình dịch.



*Thái độ: HS nghiêm tóc trong học tập và nghiên cứu bài học.


<b>II. Chuẩn bị:</b>



* GV: SGK, Máy chiếu



* HS: Chuẩn bị trớc bài ở nhà.



<b>III. Ph</b>

<b> ơng pháp</b>

<b> : vấn đáp, thuyết trình, luyện tập.</b>



<b>IV. Tiến trỡnh bi ging:</b>



<i><b>A. n nh lp</b></i>



<i><b>B. bài cũ:: Trình bày ghi nhớ 1,2,3 sgk.</b></i>


<i><b>C. Bài mới</b></i>



<b>HĐ của thầy</b>

<b>HĐ của HS</b>

<b>Ghi b¶ng</b>



.


– Đa ra ví dụ: Việc pha trà
mời khách có thể đợc nêu
thành các bớc nh sau:


Bíc 1: Tr¸ng Êm chÐn
b»ng níc s«i.


Bớc 2: Cho trà vào ấm.
Bớc 3: Rót nớc sơi vào ấm
và đợi khoảng 3-4 phút.
Bớc 4: Rót trà ra chén để
mời khách.


<i>Cách liệt kê các bớc nh trên là</i>
một phơng pháp thờng dùng
<i>để mơ tả thuật tốn.</i>


? Vậy Thuật toán là gì?




<b>- Nghe và ghi</b>


<b>chép.</b>



<b>- Trả lời...</b>



<b>4. Thuật toán và mô tả thuật toán</b>


<i>VD: Bài toán giải phơng trình bậc</i>



<i>nhất dạng tổng quát bx + c = 0:</i>



<i> Bớc 1. NÕu b = 0 chun tíi</i>


bíc 3.



 Bíc 2. TÝnh nghiệm của


<i>ph-ơng trình x = –</i>

<i>c</i>


<i>b</i>

råi



chun tíi bíc 4.



<i> Bớc 3. Nếu c  0, thơng</i>


báo phơng trình đã cho vô


<i>nghiệm. Ngợc lại (c = 0),</i>


thông báo phơng trình có vơ


số nghiệm.



 Bíc 4. KÕt thóc tht to¸n.



<i>Thuật tốn là dãy các thao tác cần thực</i>
hiện theo một trình tự xác định để thu


đ-ợc kết quả cần tìm từ những điều kiện
cho trớc.


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

- Đa ra ví dụ 1trên màn


chiếu.



- §a ra c¸c vÝ dơ


2,3,4,5,6 Sgk lªn màn


chiếu cho HS quan sát



<b>- quan sát và ghi</b>


<b>chép.</b>



<b>- quan sát và ghi</b>


<b>chép.</b>



Thut tốn đơn giản để tính diện tích hình
<i>A có thể gồm các bớc sau:</i>


<i>INPUT: a lµ 1/2 chiỊu rộng và b là chiều</i>
<i>dài của hình chữ nhật, a là bán kính của</i>
hình bán nguyệt.


<i>OUTPUT: DiƯn tÝch cđa A.</i>


<i>Bíc 1. TÝnh S</i>1<i> = 2a  b</i> {Tính
diện tích hình chữ nhật}


<i>Bc 2. Tớnh S</i>2<i> = π a</i>2/2 {Tính
diện tích hình bán nguyệt}


<i>Bớc 3. Tính kết quả S = S</i>1<i> + S</i>2.

* Trong biểu diễn thuật tốn, ngời ta


<i>thờng sử dụng kí hiệu a  A để chỉ</i>


phép gán giá trị của số hoặc biểu


<i>thức A cho biến a. Ví dụ:</i>



<i>x c/b (biến x nhận giá trị bằng </i>


<i>c/b); </i>



<i>i  i + 5 (biến i đợc gán bằng giá trị</i>



<i>hiện tại của i cộng thêm 5 đơn vị)</i>


<i>Trong trờng hợp ngợc lại (i > 100),</i>


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



<b>D. Cđng cè:</b>


Thuật tốn thuật tốn là dãy các thao tác cần thực hiện theo một trình tự xác định để thu
đợc kết quả cần tìm từ những điều kiện cho trc.


<b>Bài tập:</b>


<b>1.</b>

HÃy chỉ ra INPUT và OUTPUT của các bài toán sau:



<i>a)</i>

Xỏc nh s hc sinh trong lp cựng mang h Trn.



<i>b)</i>

<i>Tính tổng của các phần tử lín h¬n 0 trong d·y n sè cho tríc.</i>



<i>c)</i>

<i>Tìm số các số có giá trị nhỏ nhất trong n số đã cho.</i>




<b>E. Híng dÉn vỊ nhµ:</b>

: Häc bµi theo Sgk và làm các bài tập



<b>Ngày soạn 30/08/2008</b> <b>Tiết 5</b>


<b>Ngày dạy 09/09/2008</b>


<b>Bài 3. Làm quen với ngôn ngữ lập trình</b>


<b>( Tiết1)</b>



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


* Kiến thức:



- Học sinh: Biết ngơn ngữ lập trình gồm các thành phần cơ bản là bảng chữ cái và


các quy tắc để viết chương trình, câu lệnh.



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

<i>- Biết tên trong ngơn ngữ lập trình là do người lập trình đặt ra, khi đặt tên phải</i>


<i>tuân thủ các quy tắc của ngơn ngữ lập trình. Tên khơng được trùng với các từ khố.</i>


Biết cấu trúc chương trình bao gồm phần khai báo và phần thân chương trình.



* Kỹ năng: Hs nêu đc lại cấu trúc của của một chơng trình; Đặt tên đợc cho một


chơng trình cụ thể..



* Thái độ: HS nghiêm túc trong học tập và nghiên cứu bài học.


<b>II. Chun b:</b>



GV: SGK, Máy chiếu



HS: Chuẩn bị trớc bài ở nhµ.



<b>III. Ph</b>

<b> ơng pháp</b>

<b> : vấn đáp, thuyết trình, luyện tập.</b>



<b>IV. Tiến trình bài giảng</b>



<i><b>A. ổn định lớp</b></i>



<i><b>B. Bµi cị: Trình bày ghi nhớ 1,2,3, 4 sgk và trả lời bài tập1.</b></i>


<i><b>C. Bài mới</b></i>



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


<b>? Tại sao phải lập</b>
<b>trình cho máy tính</b>


<b>- GV mô tả bằng hình</b>
<b>ảnh trên màn chiếu.</b>


<b>? Ngôn ngữ lập trình</b>
<b>gồm những gì?</b>


<b>- GV ®a ra vÝ dô cụ</b>
<b>trên màn chiếu.</b>


<b>- GV: S dng Vớ d</b>
<b>trờn để chỉ ra các từ</b>


<b>- HS suy nghĩ</b>
<b>trả lời..</b>


<b>- HS ghi chép</b>


<b>HS Quan sát.</b>



<b>- HS suy nghÜ,</b>
<b>tr¶ lêi:...</b>


<b>- HS ghi chép..</b>


<b>- quan sát ví dụ</b>


<b>1. Chơng trình và ngôn ngữ lập trình.</b>


- Để tạo một chơng trình máy tính,


chúng ta phải viết chơng trình theo một



<i>ngôn ngữ lập trình . </i>



- Ngụn ng lp trình là cơng cụ giúp để


tạo ra các chơng trình mỏy tớnh.



* Việc tạo ra chơng trình máy tính thùc


chÊt gåm hai bíc sau:



<i>(1) ViÕt ch¬ng trình theo ngôn ng</i>

lập


trình;



<i>(2) Dch chng trình thành ngơn ng</i>


mỏy mỏy tớnh hiu c.



<b>2. Ngôn ngữ lập trình gồm những gì?</b>


Ngôn ngữ lập trình gồm:



<i>- Bng ch cỏi: thờng gồm các chữ cái tiếng</i>
Anh và một số kí hiệu khác nh dấu phép toán
(+, , *, /,...), dấu đóng mở ngoặc, dấu
nháy,... Nói chung, các kí tự có mặt trên bàn
phím máy tính đều có mặt trong bảng chữ cái
của mọi ngơn ngữ lp trỡnh.


<i>- Các quy tắc: cách viết (cú pháp) và ý nghĩa</i>
của chúng; cách bố trí các câu lệnh thành
ch-ơng trình,...


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

<b>khoá..</b>


<b>- GV lấy các ví dụ</b>
<b>đúng và sai về cách</b>
<b>đặt tên chơng trình.</b>


<b>- HS tự đặt tên</b>
<b>chơng trình.</b>


<b>a) Tõ kho¸: Program, Begin, uses,End.</b>
<b>Là những từ riêng, chỉ dành cho ngôn</b>
<b>ngữ lập trình.</b>


<b>b) Sử dụng tên trong chơng trình.</b>


- Hai i lợng khác nhau phải có tên


khác nhau.



<i>- Tên không đợc trùng với các từ</i>




<i>kho¸.</i>



- Tên khơng đợc bắt đầu bằng chữ số


và khơng đợc có khoảng trắng.



<b> D. Củng cố:</b>



Ngôn ngữ lập trình gồm những gì?


? chỉ ra một vài từ khoá?



? Nờu cỏch t tờn ỳng của chơng trình



E. Hướng dẫn về nhµ:: Häc bµi theo Sgk và vở ghi. Học ghi nhớ 1 và trả lời câu hỏi 1


gsk.



<b>Ngày soạn 10/09/2008</b> <b>Tiết 6</b>


<b>Ngày dạy 12/09/2008</b>


<b>Bài 3. Làm quen với ngôn ngữ lập trình</b>


<b>( T2)</b>



<b>I. Mục tiªu:</b>



* KiÕn thøc: + Häc sinh: Biết cấu trúc chương trình bao gồm phần khai báo và


phần thân chương trình.



* Kỹ năng: Hs nêu đc lại cấu trúc của của một chơng trình; Đặt tên đợc cho một


chơng trình cụ thể..




* Thái độ: HS nghiêm túc trong học tập và nghiên cứu bài học.


<b>II. Chuẩn bị:</b>



* GV: SGK, Máy chiếu



* HS: Chuẩn bị trớc bài ở nhà.



<b>III. Ph</b>

<b> ơng pháp</b>

<b> : vấn đáp, thuyết trình, luyện tập.</b>


<b>IV. Tiến trình bài giảng</b>



<i><b>A. ổn định lớp</b></i>



<i><b>B. Bài cũ:: - Khi đặt tên cho một chơng trình cần chú ý điều gỡ? Hóy k tờn mt vi t</b></i>



khoá của chơng trình lập trình?


C. Bài mới


<b>HĐ của Thầy</b> <b>HĐ của trò</b> <b>Ghi b¶ng</b>


GV sử dụng lại VD của bài trớc
để mơ tả cấu trúc chung của
ch-ơng trình cho hs:


+ PhÇn khai báo gồm hai lệnh
khai báo tên chơng trình là
<b>CT_dau_tien với từ khoá</b>
<b>program và khai b¸o th viƯn</b>
<b>crt víi tõ kho¸ uses. </b>



+ Phần thân rất đơn giản và chỉ


<b>- HS quan sát</b>


<b>VD trên màn</b>


<b>chiếu và nghe</b>


<b>GV giải thích.</b>



<b>3. Cấu trúc chung của chơng trình.</b>


Cấu trúc của chơng trình gồm:



<i>-Phần khai b¸o thêng gåm c¸c câu</i>



lnh dựng :



+ Khai báo tên chơng trình;



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

ch-gồm các từ khoá begin và
<b>end. cho biết điểm bắt đầu và</b>
điểm kết thúc phần thân chơng
trình. Phân thân chỉ có một câu


lệnh thực sự là


<b>writeln('Chao Cac Ban')</b>
để in ra màn hình dịng chữ
"Chao Cac Ban".


<b>-GV sử dụng màn chiếu</b>


<b>để lấy ví dụ về ngơn ngữ</b>


<b>lập trình cho HS quan</b>



<b>sát.</b>



Khi khởi động phần mềm


Turbo Pascal, cửa sổ soạn


thảo chơng trình nh hình 8


dới đây. Ta có thể sử dụng


bàn phím để soạn thảo


ch-ơng trình tch-ơng tự nh soạn


thảo văn bản với Word.


Sau khi đã soạn thảo xong,


nhấn phím

<b>F9</b>

để kiểm tra


lỗi chính tả và cú pháp của


lệnh (dịch). Nếu đã hết lỗi


chính tả, màn hình có dạng


nh hình 9 di õy s xut


hin.



Để chạy chơng trình, ta


nhấn tổ hợp phím

<b>Ctrl+F9</b>

.


Trên cửa sổ kết quả của


ch-ơng tr×nh sÏ hiƯn ra dòng


chữ "

Chao Cac Ban

" nh


h×nh



<b>- HS ghi chÐp.</b>



<b>- HS quan sát</b>


<b>trên màn chiếu</b>



ơng trình) và một số khai báo khác.




<i>- Phần thân của chơng trình gồm các</i>



câu lệnh mà máy tính cần thực hiện.


<i>Đây là phần bắt buộc phải có. </i>



<i>Phần khai báo có thể có hoặc không. </i>



<i>Tuy nhiên, nếu có phần khai báo phải </i>



<i>c t trc phn thõn chng trỡnh. </i>



<b>4. VÝ dơ vỊ ngôn ngữ lập tr×nh</b>


<b>Pascal.</b>



<b> D. Cđng cè:</b>



<b>Ghi nhí</b>



<b>1. Ngơn ngữ lập trình là tập hợp các kí hiệu và quy tắc sao cho có thể viết đợc các</b>


lệnh tạo thành một chơng trình hồn chỉnh và chạy đợc trên máy tớnh.



<b>2. Một chơng trình thờng có hai phần: Phần khai báo và phần thân chơng trình</b>


CÂU HỏI Và BàI TậP



<b>1. Hóy cho bit cỏc bớc cần thực hiện để tạo ra các chơng trình máy tính.</b>



<b>2. Ngơn ngữ lập trình có những thành phần cơ bản nào? Những thành phần đó có</b>


ý nghĩa, chức năng gì?




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

<b>D</b>



<b> > H</b>

<b> ướ</b>

<b> ng d</b>

<b> ẫ</b>

<b> n v</b>

<b> ề</b>

<b> nhµ:</b>

<b>: </b>

<b> </b>

Häc bµi theo SGK và vở ghi


- Học thuộc phần ghi nhớ.



<b>Ngày soạn 10/09/2008</b> <b>Tiết 7 + 8</b>


<b>Ngày dạy 12/09/2008</b>


<b>Bài thực hành 1</b>



<b>Làm quen víi Turbo pascal</b>



<b>I. Mơc tiªu:</b>



* Kiến thức: Hs đựoc làm quen với chơng trình lập trình Turbo Pascal.


*Kỹ năng:



 Thực hiện đợc thao tác khởi động/kết thúc TP, làm quen với màn hình soạn thảo TP

 Thực hiện đợc các thao tác mở các bảng chọn và chọn lệnh.



 Soạn thảo đợc một chơng trình Pascal đơn giản.



 Biết cách dịch, sửa lỗi trong chơng trình, chạy chơng trình và xem kết quả.


 Biết sự cần thiết phải tuân thủ quy định của ngôn ngữ lập trình



<b>* Thái độ: HS nghiêm tóc trong học tập và thùc hành.</b>


<b>II. Chuẩn bị:</b>



* GV: SGK, M¸y chiÕu




* HS: ChuÈn bị trớc bài ở nhà.



<b>III. Ph</b>

<b> ơng pháp</b>

<b> : thuyết trình, luyện tập.</b>


<b>IV. Tiến trình bài giảng</b>



<i><b>A. n nh lớp</b></i>


<i><b>B. Bài cũ:</b></i>



1. Ngơn ngữ lập trình có những thành phần cơ bản nào? Những thành phần đó có ý


nghĩa, chc nng gỡ?



2.Cấu trúc chơng trình gồm những phần nào? Phần nào là quan trọng nhất?



<i><b>C. Bài mới</b></i>



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


GV cho HS làm quen với việc


khởi động và thoát khỏi Turbo


Pascal. Nhận biết các thành phần


trên màn hình của Turbo Pascal.



Quan sát màn hình của Turbo


Pascal và so sánh với hình 11 dới


đây:



<b>- </b>

HS nghe vµ


quan s¸t c¸c


thao t¸c cđa



GV.



<i><b>Bµi 1. Lµm quen víi viƯc khëi</b></i>



động và thoát khỏi Turbo


Pascal. Nhận biết các thành


phần trên màn hình của Turbo


Pascal.



a)Khởi động Turbo Pascal bằng


một trong hai cách:



<i>Cách 1: Nháy đúp chuột trên</i>



biĨu tỵng

trên màn hình


nền (hoặc trong bảng chän



<b>Start</b>

);



<i>Cách 2: Nháy đúp chuột trên</i>



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

+ GV cho HS nhận biết các thành


phần: Thanh bảng chọn; tên tệp


đang mở; con trỏ; dòng trợ giúp


phía dới màn hình.



Quan sát c¸c lƯnh trong tõng


b¶ng chän.



Mở các bảng chọn bằng cách



khác: Nhấn tổ hợp phím

<b>Alt</b>


phím tắt của bảng chọn (chữ màu


đỏ ở tên bảng chọn, ví dụ phím


tắt của bảng chọn

<b>File</b>

<b> là </b>

<b>F</b>

, bảng


chọn

<b>Run</b>

<b> là </b>

<b>R</b>

,...).



Sử dụng các phím mũi tên lên và


xuống ( và ) để di chuyển giữa


các lệnh trong một bảng chọn.


Nhấn tổ hợp phím

<b>Alt+X</b>

để thoát


khỏi Turbo Pascal.



- Yêu cầu HS khởi động chơng

trình Turbo Pascal và thực hiện gõ


các dịng lệnh theo mẫu.



GV

:

Chó ý cho HS :



- Gõ đúng và khơng để sót các


dấu nháy đơn ('), dấu chấm


phẩy (;)và dấu chấm (.) trong


các dòng lệnh.



- Soạn thảo chơng trình cũng


tơng tự nh soạn thảo văn bản:


sử dụng các phím mũi tên để


di chuyển con trỏ, nhấn phím


<b>Enter để xuống dịng mới,</b>


<b>nhấn các phím Delete hoặc</b>


<b>BackSpace để xoá.</b>




<i><b>a)</b></i>

NhÊn phÝm

<b>F2</b>

(hc lƯnh



<b>FileSave</b>

) để lu chơng trình. Khi


hộp thoại hiện ra, gõ tên tệp (ví


dụ

CT1.pas

) trong ô

<b>Save file as</b>


- HS gõ các lện


lên máy tính cá


nhân.



- Nhn phớm

<b>F10</b>

để mở bảng


chọn, sử dụng các phím mũi


tên ( và ) để di chuyển qua


lại giữa các bảng chọn.



- Nhấn phím

<b>Enter</b>

để mở một


bảng chọn.



<i><b>Bài 2.</b></i>

<b> Soạn thảo, lu, dịch và</b>


<b>chạy một chơng trình đơn</b>


<b>giản.</b>



a) Khởi động lại Turbo Pascal


và gõ các dòng lệnh dới đây:



<b>program CTDT;</b>
<b>begin</b>


<b>writeln('Chao</b> <b>cac</b>



<b>ban');</b>


<b>write('Minh la Turbo</b>
<b>Pascal');</b>


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

(phần mở rộng ngầm định là

<b>.pas</b>

)


và nhấn

<b>Enter</b>

(hoặc nháy

<b>OK</b>

).



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

Nhấn tổ hợp phím

<b>Alt+F9</b>

để


biên dịch chơng trình. Khi đó,


ch-ơng trình đợc biên dịch và kết quả


hiện ra có dạng nh hình 14 sau


đây:



Nhấn phím bất kì để đóng hộp


thoại.



<i><b>c)</b></i>

NhÊn tỉ hỵp phÝm

<b>Ctrl+F9</b>


để chạy chơng trình và quan sát


kết quả.



Nhấn

<b>Enter</b>

để quay về màn hình


soạn thảo.



Nh vậy, chúng ta đã viết đợc một


chơng trình hồn chỉnh và chy


-c.




<i><b>a)</b></i>

GV hớng dẫn HS chỉnh sửa


chơng trình.



<i><b>b)</b></i> Xoá dòng lệnh begin. Biên dịch
chơng trình và quan sát thông báo
lỗi nh hình dới đây:


<i>Hình 16</i>


<i><b>c)</b></i> Nhấn phím bất kì và gõ lại lệnh
<b>begin. Xoá dấu chÊm sau ch÷</b>
<b>end. Biên dịch chơng trình và</b>
quan sát thông báo lỗi.


<i>Hình 17</i>


Nhn Alt+X để thốt khỏi Turbo Pascal,
nhng khơng lu các chỉnh sửa


b)NhÊn phÝm

<b>F2</b>

(hc lƯnh



<b>FileSave</b>

) để lu chơng trình.



c) Nhấn tổ hợp phím

<b>Alt+F9</b>

để


biên dịch chơng trình.



Nhấn phím bất kì để đóng hộp


thoại.



<i><b>d)</b></i>

NhÊn tỉ hỵp phÝm

<b>Ctrl+F9</b>


để chạy chơng trình và quan sát


kết quả.



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

<b>lu vµ kÕt thóc.</b>



<i><b>D. Cđng cè:</b></i>

<b>TỉNG KÕT</b>


<b>1. Các bớc đã thực hiện: </b>


 Khởi động Turbo Pascal;
 Soạn thảo chơng trỡnh;


Biên dịch chơng trình: Alt + F9;
Chạy chơng trình (Ctrl + F9) ;


<b>2. Pascal khụng phân biệt chữ hoa, chữ thờng: begin, BeGin, hay BEGIN đều đúng. </b>
<b>3. Các từ khoá của Pascal: program, begin, end.</b>


<b>4. Lệnh kết thúc chơng trình là end. (có dấu chấm), các câu lệnh sau lệnh này bị bỏ qua trong</b>
quá trình dịch chơng trình.


<b>5. Mi cõu lnh c kt thúc bằng dấu chấm phẩy (;). </b>


<b>6. LÖnh writeln in ra màn hình và đa con trỏ xuống đầu dòng tiÕp theo. </b>


Thơng tin cần in ra có thể là văn bản, có thể là số,... và đợc phân tách bởi dấu phẩy.
Lệnh write tơng tự nh writeln, nhng không đa con trỏ xuống đầu dòng tiếp theo.

- Yêu cầu hs đọc bài đọc thêm




E. Hướng dẫn về nhµ:



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

<b>Ngày soạn : 25/9/2008</b> Tiết 9 : Tuần 5
<i><b>Ngày dạy : 27/8/2008</b></i>


BàI 3 :


CHƯƠNG TRÌNH MÁY TÍNH VÀ DỮ LIỆU


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


 Biết khỏi niệm kiểu dữ liệu;


 Biết một số phộp toỏn cơ bản với dữ liệu số;


<i><b>II. Chuẩn bị : </b></i>


<i><b>1. Giáo viên : </b></i>


- Tài liệu, GA điện tử.


- Đồ dùng dạy học như máy tính kết nối projector,...
<i><b>2. Học sinh : - Kiến thức đã học.</b></i>


- Đọc trước bài mới.
- Bảng phụ.


<i><b>III. Tiến trình tiết dạy : </b></i>
<b>1. ổn định tổ chức lớp : </b>



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


<b>2. Kiểm tra bài cũ : </b>
<b>3. Dạy bài mới :</b>


<b>Hoạt động 1 : Học sinh tìm hiểu về dữ liệu và kiểu dữ liệu.</b>


Hoạt động của GV Hoạt động của HS Ghi bảng
G : Nêu tình huống để gợi ý


về dữ liệu và kiểu dữ liệu.
G : Đưa lên màn hình ví dụ
1 SGK.


G : Ta có thể thực hiện các
phép tốn với dữ liệu kiểu
gì ?


G : Cịn với kiểu chữ thì các
phép tốn đó khơng có
nghĩa.


G : Theo em có những kiểu
dữ liệu gì ? Lấy ví dụ cụ thể
về một kiểu dữ liệu nào đó.
G : Chốt trên màn hình 3
kiểu dữ liệu cơ bản nhất và
giải thích thêm.



G : Trong ngôn ngữ lập
trình nào cũng chỉ có 3 kiểu
dữ liệu đó hay còn nhiều


H : Quan sát để
phân biệt được hai
loại dữ liệu quen
thuộc là chữ và số.
H : Nghiên cứu
SGK trả lời với kiểu
số.


H : Nghiên cứu
SGK và trả lời trên
bảng phụ.


H : Nghiên cứu
SGK trả lời
H : Đọc lại.


H : Viết tên và ý


<b>1. Dữ liệu và kiểu dữ liệu.</b>


<i><b>Ví dụ 1: Minh hoạ kết quả</b></i>
<i><b>thực hiện một chương trình</b></i>
<i><b>in ra màn hình với các kiểu</b></i>
<i><b>dữ liệu quen thuộc là chữ và</b></i>
<i><b>số.</b></i>



- Các ngôn ngữ lập trình
định nghĩa sẵn một số kiểu
dữ liệu cơ bản.


Dưới đây là một số kiểu dữ liệu
thường dùng nhất:


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

nữa ?
.


G : Đưa lên màn hình ví dụ
2 SGK để giới thiệu tên của
một số kiểu dữ liệu cơ bản
trong NNLT pascal.


G : Đọc tên kiểu dữ liệu
Integer, real, char, string.
G : Đưa ví dụ : 123 và ‘123’
G : Đưa ra chú ý về kiểu dữ
liệu char và string.


nghĩa của 4 kiểu dữ
liệu cơ bản trong
TP.


H : Đọc tên hai kiểu
dữ liệu trên.


<i>sinh của một lớp, số sách</i>
<i>trong thư viện,...</i>



<i> Số thực, ví dụ chiều cao</i>
<i>của bạn Bình, điểm trung</i>
<i>bình mơn Tốn,...</i>


<i> Xâu kí tự (hay xâu) là dãy</i>
<i>các "chữ cái" lấy từ bảng</i>
<i>chữ cái của ngơn ngữ lập</i>
<i>trình, ví dụ: "Chao cac ban",</i>
<i>"Lop 8E", "2/9/1945"...</i>


- Ngơn ngữ lập trình cụ thể còn
định nghĩa nhiều kiểu dữ liệu
khác. Số các kiểu dữ liệu và tên
kiểu dữ liệu trong mỗi ngôn ngữ
lập trình có thể khác nhau.
<i><b>Ví dụ 2. Bảng SGK</b></i>


<i><b>Chú ý: Dữ liệu kiểu kớ tự và kiểu</b></i>
<i><b>xâu trong Pascal được đặt trong</b></i>
<i><b>cặp dấu nhỏy đơn.</b></i>


<b>Hoạt động 2 : HS tìm hiểu, làm quen với các phép toán và kiểu dữ liệu số.</b>


Hoạt động của GV Hoạt động của HS Ghi bảng
G : Viết lên bảng phụ các


phép toán số học dùng cho
dữ liệu kiểu số thực và số
nguyên ?



G : Đưa lên màn hình bảng
kí hiệu các phép tốn dùng
cho kiểu số thực và số
nguyên.


G : Đưa ra một số ví dụ sgk
và giải thích thêm.


G : Đưa ra phép tốn viết
dạng ngơn ngữ tốn học :


8
2
5  <i>xy</i> 


<i>x</i>


và yêu cầu H


H : Viết và giơ bảng
phụ khi có hiệu lệnh
của G.


H : Quan sát để hiểu
cách viết và ý nghĩa
của từng phép toán
và ghi vở.


H : Quan sát, lắng


nghe và ghi vở.
H : Viết và giơ bảng
phụ khi có hiệu lệnh
của G.


G : Yêu cầu H viết
lại phép toán


2


x 5 y


(x 2)
a 3 b 5




 


 


<b>2. Các phép toán với dữ liệu</b>
<b>kiểu số.</b>


- Bảng dưới đây kí hiệu của
các phép tốn số học đó trong
ngơn ngữ Pascal:


Dưới đây là các ví dụ về phép
chia, phép chia lấy phần


nguyên và phép chia lấy phần
dư:


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

viết biểu thức này bằng
ngôn ngữ TP.


G : Nhận xét và đưa ra
bảng ví dụ SGK.


G : Nhận xét và chốt trên
màn hình.


G : Viết lại biểu thức này
bằng ngôn ngữ lập trình
Pascal.

(a b)(c d) 6

a


3


  



?


G : Nhận xét và đưa ra chú
ý


bằng ngôn ngữ TP.
H : Làm trên bảng
phụ



H : Nêu quy tắc tính
các biểu thức số
học.


H : Viết bảng phụ.


tính số học nói trên trong ngơn
ngữ lập trình Pascal ví dụ :


Ngơn ngữ tốn Ngơn ngữ TP
a ( b ( c + d a*b-c+d


a
15 5


2


  15+5*(a/2)
2


x 5 y


(x 2)
a 3 b 5




 


 



(x+5)/(a+3)-y/
(b+5)*(x+2)*(x+2)
<i><b>Quy tắc tính các biểu thức số</b></i>


<i><b>học:</b></i>


 Các phép toán trong ngoặc
được thực hiện trước tiên;
 Trong dãy các phép tốn


khơng có dấu ngoặc, các
phép nhân, phép chia, phép
chia lấy phần nguyên và
phép chia lấy phần dư được
thực hiện trước;


 Phép cộng và phép trừ được
thực hiện theo thứ tự từ trái
sang phải.


<b>4.Củng cố kiến thức.</b>


H : Nhắc lại những kiến thức cần đạt được trong bài.
G : Chốt lại những kiến thức trọng tâm trong bài.


<b>5.Hướng dẫn về nhà.</b>


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

<i><b>Ngày soạn :27/09/2008</b></i> Tiết 10 – Tuần 5
<i><b>Ngày dạy : 29/09/2008</b></i>



<b>BàI 3 :</b>



<b>CHƯƠNG TRÌNH MÁY TÍNH VÀ DỮ LIỆU</b>



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


 Biết các phép toán so sánh trong ngơn ngữ lập trình.


 Biết khỏi niệm điều khiển tương tỏc giữa người với mỏy tớnh.


<b>II. Chuẩn bị : </b>


<i><b>1. Giáo viên : </b></i>


- Tài liệu, GA điện tử.


- Đồ dùng dạy học như máy tính kết nối projector,...
<i><b>2. Học sinh : - Kiến thức đã học.</b></i>


- Đọc trước bài mới.
- Bảng phụ.


<b>III. Tiến trình tiết dạy : </b>
<b>1. ổn định tổ chức lớp : </b>


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


<b>2. Kiểm tra bài cũ : </b>



(?) Nêu một số kiểu dữ liệu mà em được học? Lấy ví dụ minh hoạ?


(?) Nêu một số các phép tốn số học có trong ngơn ngữ Pascal? Lấy ví dụ?
(?) Hãy nêu ít nhất hai kiểu dữ liệu và một phép tốn có thể thực hiện được
trên một kiểu dữ liệu, nhưng phép tốn đó khơng có nghĩa trên kiểu dữ liệu kia.


(?) Dãy chữ số 2010 có thể thuộc những kiểu dữ liệu nào?
HS : Trả lời


GV : Nhận xét và cho điểm


<b>3. Dạy bài mới :</b>


<b>Hoạt động 1 : HS biết ý nghĩa và cách viết các phép toán so sánh trong TP</b>
<b>Hoạt động của GV</b> <b>Hoạt động của HS</b> <b>Ghi bảng</b>


G : Đưa lên màn hình
bảng kí hiệu các
phép toán so sánh
trong toán học.


G : Các phép toán so
sánh dùng để làm
gì ?


G : Đưa ra ví dụ :
a) 5 ( 2 = 9


H : Nghiên cứu SGK


trả lời.


- để so sánh các số,
các biểu thức với
nhau.


H : Viết bảng phụ kết
quả so sánh của a, b,
c.


H : Trả lời theo ý hiểu.


3. Các phép so sánh



Bảng kí hiệu các phép so sánh viết
trong ngơn ngữ Pascal:


<b>Kí hiệu</b>
<b>trong</b>
<b>Pascal</b>


<b>Phép so</b>


<b>sánh</b> <b>tốn họcKí hiệu</b>


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

b) 15 + 7 > 20 (
3


c) 5 + x ≤ 10
G : Theo em các


phép so sánh này
viết trong ngôn ngữ
TP có giống trong
tốn học khơng ?
G : Đưa lên màn hình
bảng


<> Khác <b>≠</b>


< Nhỏ hơn <b><</b>


<= Nhỏ hơn
hoặc bằng


<b>≤</b>


> Lớn hơn <b>></b>


>= Lớn hơn


hoặc bằng <b>≥</b>


<b>Hoạt động 2 : HS làm quen với một số dạng màn hình giao tiếp với máy tính.</b>
<b>Hoạt động của GV</b> <b>Hoạt động của HS</b> <b>Ghi bảng</b>


G : Nhận xét và giải
thích.


G : Nêu hai tình
huống tạm ngừng tại


màn hình kết quả
thông qua các lệnh và
hộp thoại.


G : Giải thích từng
tình huống.


G : Đưa lên màn hình
hộp thoại nhập dữ
liệu.


G : Em phải làm gì khi
xuất hiện hộp thoại
này ?


G : Đưa ví dụ về
bảng thông báo kết
quả.


G : Đưa ra ví dụ về
hộp thoại.


: Quan sát, lắng
nghe G giải thích.
H : Trả lời theo ý
hiểu.


H : Lắng nghe để
hiểu .



H : Quan sát và lắng
nghe G giải thích.


4.Giao tiếp người - máy tính



<b>a) Thơng báo kết quả tính tốn</b>


- Lệnh :


write('Dien tich hinh tron la
',X);


- Thông báo :


<b>b) Nhập dữ liệu</b>


- Lệnh :


write('Ban hay nhap nam
sinh:');


read(NS);
- Thông báo :


<b>c) Chương trình tạm ngừng</b>


- Lệnh :


Writeln('Cac ban cho 2 giay
nhe...');



Delay(2000);
Thông báo :
- Lệnh :


writeln('So Pi = ',Pi);
read; {readln;}


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

<b>d) Hộp thoại</b>


<b>4.Củng cố kiến thức.</b>


H : Nhắc lại những kiến thức cần đạt được trong bài.
G : Chốt lại những kiến thức trọng tâm trong bài.
H : Đọc phần ghi nhớ sgk.


<b>5.Hướng dẫn về nhà.</b>


1. Làm bài tập 5, 6


2. Học thuộc phần ghi nhớ.


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

Ngày soạn : 25/9/2008 Tiết 11+12 : Tuần 6
<i>Ngày dạy :27/9/2008</i>


<b>THỰC HÀNH</b>



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


 Giúp học sinh kĩ năng đọc hiểu đề .



 Giúp Hs sửa chữa các bài tập đã cho ở các bài trước.
<i><b>II. Chuẩn bị:</b></i>


 Gv: giáo án.


 Hs: sách giáo khoa, bài tập.
<i><b>III. Tiến trình giảng dạy:</b></i>


<b>1. Kiểm tra bài cũ:</b>


<b>* Thế nào là chương trình máy tính, nêu ví dụ?</b>
<b>* Dữ liệu là gì, kể tên các loại dữ liệu?</b>


<b>2. Bài mới:</b>


<i><b>Hoạt động 1: sửa bài tập</b></i>


<b>HĐ của thầy và trò</b> <b>Nội dung ghi bảng</b>


- Gv hỏi Hs có bài tập nào không
thể giải quyết được.


- Hs nêu câu hỏi


- Gv giải đáp các câu hỏi của Hs
và các bài tập mà Hs không thể
làm được.


- Hs chú ý lắng nghe.



- Gv gọi Hs đọc đề của bài tập 1
trong bài 1.


- Hs đọc đề.


- Gv gọi 3 đại diện của 3 tổ lên
bảng làm bài.


- Hs làm bài.


- Gv gọi hs nhận xét.
- Hs: nhận xét.


- Gv nhận xét.


- Hs: lằng nghe, ghi nhớ.


- Gv gọi Hs đọc đề của bài tập 4
trong bài 2.


Nếu thay đổi thứ tự của hai lệnh trong chương
trình điều khiển rơ-bốt, rơ-bốt sẽ khơng thực
hiện được cơng việc nhặt rác vì rơ-bốt sẽ
khơng đi đúng hướng và có thể khơng đi tới vị
trí có rác, hoặc thực hiện việc nhặt rác tại vị trí
khơng có rác,.... Ví dụ, nếu thay đổi thứ tự của
lệnh 1 “Tiến 2 bước” và lệnh 2 “Quay trái, tiến
1 bước”, tác dụng của cả hai lệnh này sẽ là
“Quay trái và tiến 3 bước”. Khi đó rơ-bốt sẽ


nhặt rác tại vị trí khơng có rác. Nói chung, các
lệnh điều khiển rơ-bốt hay chương trình cần
được đưa ra theo một thứ tự xác định sao cho
ta đạt kết quả mong muốn. Trong một số ít
trường hợp, ta có thể đưa ra các lệnh khác
nhau, nhưng vẫn đạt kết quả. Chẳng hạn,
trong ví dụ về rơ-bốt, thay cho hai câu lệnh
đầu tiên, ta có thể điều khiển rơ-bốt đến đúng
vị trí có rác bằng các lệnh sau: “Quay trái, tiến
1 bước” và “Quay phải, tiến 2 bước” hoặc
“Quay phải, tiến 2 bước”, “Quay trái, tiến 2
bước” và “Quay trái, tiến 4 bước”. Trong một
số ít các trường hợp khác, việc thay đổi thứ tự
của một vài câu lệnh vẫn cho kết quả đúng
như yêu cầu.


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

- Hs đọc đề.


- Gv gọi 3 đại diện của 3 tổ lên
bảng làm bài.


- Hs làm bài.


- Gv gọi hs nhận xét.
- Hs nhận xét.


- Gv nhận xét.
- Hs lắng nghe.


- Gv gọi Hs đọc đề của bài tập 6


trong bài 2.


- Hs đọc đề.


- Gv gọi 3 đại diện của 3 tổ lên
bảng làm bài.


- Hs làm bài.


- Gv gọi hs nhận xét.
- HS nhận xét


- Gv nhận xét.
- Hs lắng nghe.


- Gv gọi Hs đọc đề của bài tập 2
trong bài 3.


- Hs đọc đề.


- Gv gọi 3 đại diện của 3 tổ lên
bảng làm bài.


- Hs làm bài.


- Gv gọi hs nhận xét.
- Hs nhận xét.


- Gv nhận xét.
- Hs lằng nghe.



- Gv gọi Hs đọc đề của bài tập 3
trong bài 3.


- Hs đọc đề.


- Gv gọi 3 đại diện của 3 tổ lên
bảng làm bài.


- Hs làm bài.


- Gv gọi hs nhận xét.
- HS nhận xét


- Gv nhận xét.
- Hs lắng nghe.


- Gv gọi Hs đọc đề của bài tập 4
trong bài 3.


- Gv gọi 3 đại diện của 3 tổ lên
bảng làm bài.


- Gv gọi hs nhn xột.
- Gv nhn xột.


Vị trí mới ca rô-bốt sau khi thùc hiƯn xong
lƯnh “Hãy quét nhà” là vị trí có thùng rác (ở
góc đối diện). Ta có nhiều cách khác nhau để
đưa ra hai lệnh để rô-bốt trở lại vị trí ban đầu


của mình, một trong các cách đó là hai lệnh
“Quay trái, tiến 5 bước” và “Quay trái, tiến 3
bước”.


C¸c tên hợp lệ: a, Tamgiac, beginprogram, b1,
abc, tên không hợp lệ: 8a (bắt đầu bằng số),
Tam giac (có dấu cách), end (trùng với từ
khóa).


a) Chương trình 1 là chương trình Pascal đầy
đủ và hoàn toàn hợp lệ, mặc dù chương trình
này chẳng thực hiện điều gì cả. Phần nhất
thiết phải có trong chương trình là phần thân
chương trình được đảm bảo bằng hai từ begin
và end. (có dấu chấm).


b) Chương trình 2 là chương trình Pascal
khơng hợp lệ vì câu lệnh khai báo tên chương
trình program CT_thu; nằm ở phần thân
chương trình.


Dãy chữ số 2010 có thể thuộc kiểu dữ liệu số
nguyên, số thực hoặc kiểu xâu kí tự. Tuy
nhiên, để chương trình dịch Turbo Pascal hiểu
2010 là dữ liệu kiểu xâu, chúng ta phải viết dãy
số này trong cặp dấu nháy đơn (’).


var a: real; b: integer;
begin
writeln('123');


writeln(123);
a:=2010;
b:=2010;
end.


Lệnh Writeln('5+20=','20+5'); in ra màn hình
hai xâu ký tự '5+20' và '20+5' liền nhau: 5+20 =
20+5, còn lệnh Writeln('5+20=',20+5); in ra
màn hình xâu ký tự '5+20' và tổng của 20+5
như sau: 5+20=25.


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

- Gv gọi Hs đọc đề của bài tập 5
trong bài 3.


- Hs đọc đề.


- Gv gọi 3 đại diện của 3 tổ lên
bảng làm bài.


- HS làm bài.


- Gv gọi hs nhận xét.
- Hs nhận xét.


- Gv nhận xét.
- Hs lắng nghe.


ra màn hình số 100.


Các biểu thức trong Pascal:


a/b+c/d


a*x*x+b*x+c
1/x-a/5*(b+2)


(a*a+b)*(1+c)*(1+c)*(1+c)


Các biểu thức toán tương ứng:
2


(<i>a b</i>) <i>x</i>
<i>y</i>


 


2


<i>b</i>
<i>a</i> <i>c</i>


2
2
(2 )


<i>a</i>
<i>b c</i>


1 1 1 1


1



2 2.3 3.4 4.5


   


<i><b>Hoạt động 2: củng cố, dặn dò</b></i>
- Gv chú ý với Hs những điểm hay sai của Hs.


- Hs: lắng nghe và rút kinh nghiệm.
- Gv nhận xét:


- Hs lắng nghe.


Sự chuẩn bị bài của Hs.


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

<i>Ngày soạn :10/10/2008</i> <i>Tiết 13 – Tuần 7</i>
<i>Ngày dạy :14/10/2008</i>


<b>BÀI </b>

<b>TẬP</b>



I. Mục tiêu:


 Giúp học sinh ôn lại và khắc sâu kiến thức đã học
 Hệ thống kiến thức về kiến thức cơ sở lập trình
 Rèn luyện kỹ năng tư duy, suy luận logic


 Tạo thói quen làm việc độc lập
 Hừng thú học tập bộ môn
II. Phương pháp:



Thuyết trình – vấn đáp
III. Tiến trình bài giảng:


1. ổn định: (2')
2. Bài củ: (5')


- Thế nào là chương trình, chương trình máy tính có tác dụng gì?
- Tại sao phải viết chương trình, hãy viết chương trình xin chào các bạn?
3. Bài mới: 38'


Ho t ạ động 1: Vi t chế ương trình


Hoạt động của GV Hoạt động của HS Nội dung
- Yêu cầu học sinh viết


chương trình giới thiệu về
mình.


- Yêu cầu học sinh nhắc
lại các lệnh cơ bản về lập
trình pascal?


? Lệnh nhập, xuât.


? Để kiểm tra lổi ta thực
hiện thế nào.


? Kể tên các phếp tốn so
sánh.



? Hàm mod có tác dụng


Viết chương trình


Trả lời câu hỏi.


Trả lời câu hỏi
Lấy phần dư của


HS ghi nội dung sua khi gv sửa.


<b>Kí hiệu</b>
<b>trong</b>
<b>Pascal</b>


<b>Phép so</b>


<b>sánh</b> <b>tốn họcKí hiệu</b>


= Bằng <b>=</b>


<> Khác <b>≠</b>


< Nhỏ hơn <b><</b>


<= Nhỏ hơn


hoặc bằng <b>≤</b>
> Lớn hơn <b>></b>



>= Lớn hơn
hoặc bằng


<b>≥</b>


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

gì.


Gọi học sinh trả lời và u
cầu lấy ví dụ.


? Hàm div có tác dụng gì.


Yêu cầu học sinh làm bài
tập:


a) <sub>15 4 30 12</sub>   ;


b) 10 5 18
3 1 5 1





  ;


c)


2
(10 2)



(3 1)


 ;


d)


2
(10 2) 24


(3 1)


 


 .


<i><b>a)</b></i> Thêm các câu lệnh thích
hợp để có chơng trình sau:
<b>uses crt;</b>


<b>begin</b>


<b>clrscr;</b>


<b>writeln('16/3 =', 16/3); </b>
<b>delay(5000);</b>


<b>writeln('16 div 3 =',16 </b>
<b>div 3); delay(5000);</b>



<b>writeln('16 mod 3 =',16 </b>
<b>mod 3); delay(5000);</b>


<b>end.</b>


phép chia.


Lấy phần nguyên
của phép chia


Tiến hành làm bài
tập:


VD: 6 div 4 = 1


HS ghi nội dung sua khi gv sửa.


HS ghi nội dung sua khi gv sửa.


Hoạt động 2: Tổng kết tiết bài tập:


Giáo viên tổng kết nhận xét tiết thực hành .


Ghi điểm những học sinh làm tốt , nhắc nhở học sinh chưa nghiêm túc trong
lớp.


Dặn dò học sinh về nhà xem bài tiết sau kiểm tra 1 tiết lý thuyết.


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

<i>Ngày dạy :20/10/2008</i>



<b>KIỂM TRA 1 TIẾT</b>


I. Mục tiêu:


 Giúp học sinh ôn lại và khắc sâu kiến thức đã học
 Hệ thống kiến thức về kiến thức cơ sở lập trình
 Tạo thói quen làm việc độc lập


 Hừng thú học tập bộ môn


 Kiểm tra lại kiến thức đã học của học sinh.
II. Phương pháp:


Dùng máy chiếu cho học sinh làm bài.
III. Nội dung tiết kiểm tra


ĐỀ KIỂM TRA


Phần I: trắc nghiệm



Chọn phương án đúng nhất.
1. Theo em Pascal dùng để


a. Là ngơn ngữ lập trình
b. Tạo vản bản


c. Tạo bảng tính
d. Tất cả đều đúng.


2. Để thoát khỏi Pascal ta thực hiện.
a. Vào file>Exit



b. Vào file>save


c. Bấm vào dấu X ở góc phải
d. Không cách nào đún


3. Hiện nay chúng ta đang dùng pascal nào trong các loại sau?
a. Tobor Pascal 7.0


b. Tobor Pascal 6.0
c. Tobor Pascal 5.0
d. Tobor Pascal 8.0
4. Ý nào sau đây đúng


a. F3 để mở tệp chương trình
b. F3 để lưu chương trình
c. F3 để lưu với tên mới
d. Tất Cả đều sai


5.Tổ hợp phím Alt+F3 có tác dụng
a. Để lưu tệp đang làm việc
b. Để đóng tệp


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

6. Tổ hợp phím Alt+X có tác dụng


a. để kết thúc làm việc với TURBO PASCAL
b. Để khởi động chương trình Pascal


c. Để lưu bài đang làm
d. Để tìm kiếm *



7. Để kiểm tra lỗi trong lập trình Pascal ta thực hiện.
a. F9


b. Ctrl + F9
c. Alt + F9
d. cả 3 đều đúng


8.Để khai báo kiểu số nguyên ta thực hiện kiểu nào trong cấc kiểu sau.
a. integer, byte,longint


b. Real, char
c. Tất cả đều sai
d. Tất cả đều đúng


9.Để khai báo kiểu chuổi ta thực hiện kiểu nào?
a. Char


b. Sting
c. Var
d. Readln


10.Lệnh Write và Writeln khác nhau ở đâu?


a. Writeln khi xuất ra kết quả sẽ xuống hàng cịn Write thì khơng
b. Write khi xuất ra kết quả sẽ xuống hàng cịn Writeln thì không
c. Write khi xuất ra kết quả sẽ xuống hàng


d. Tất cả đều sai
11.Hàm mod có tác dụng.



<b>a. Lấy giá tri phàn dư của phép chia </b>
<b>b. Lấy giá tri phàn nguyên của số </b>
<b>c. Lấy căn bậc hai </b>


<b>d. Hàm làm tròn số </b>


12.Khi lưu tập tin với tên mới chúng ta sẽ thấy.


a. Tập tin cũ vẫn cịn, có thêm tập tin mới với tên vừa lưu.
b. Pascal sẽbáo sai


c. tập tin cũ sẽ được thay thế bằng tên mới
d. Tất cả đều sai


13.Lệnh sau xuất ra màn Hình thế nào
T:=6+8;


Writeln(‘tong hai so la:’,t);
a. Tong hai so la : 14
b. Tong hai so la
c. Tong hai so la 8+6
d. Tât ca sai


14. Div là hàm


a. Lấy phần nguyen của phép chia
b Lấy phần dư của phép chia
cLấy căn bậc hai


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

15. Integer dùng khai báo ?


a. Kiểu số nguyên


b. Kiểu số thực
c. Kiểu kí tự.


d. Kiểu chuổi( xâu kí tự)


16. Phép tốn <> trong pascal dùng để?


<b>a. Phép toán so sánh bằng</b>
<b>b. Phép toán so sánh khác</b>
<b>c. Phép toán so sánh lớn hơn</b>
<b>d. Phép tốn so sánh nho hơn</b>


17. Trong pascal có phân biệt chữ hoa chữ thường hay khơng?


a.Có b. Khơng c. Tùy lúc d. Tất cả đều sai
18. Pascal do ai sáng lập ra?


a. Pascal b. Niclaus Wirth
c. Tự có trong máy tính d. Mycrosoft
19. Phần mở rộng của file pascal là?


a. .Pas b. .doc c. .exe d. . div
20.Lệnh real hoặc readln có tác dụng.


a. Tạm ngưng chương trình cho đến khi nhấn phím enter
b. Nhập dữ liệu vào máy tính


c. Xuất dữ liệu ra màn hình


d. tất cả đều sai.


Phần II: Tự luận



Viết chương trình xuất ra màn hình theo cấu trúc sau


" CHAO BAN ! "



" BAN HOC TRUONG NAO? LOP MAY?"



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

<i>Ngày dạy :20/10/2008</i>


Bài 4: SỬ DỤNG BIẾN TRONG CHƯƠNG TRÌNH
<b>I. Mục tiêu:</b>


– HS biết khái niệm biến


– HS biết vai trò của biến trong lập trình
– Biết cách khai báo biến


<b>II. Chuẩn bị:</b>


– GV: Giáo án, tài liệu tham khảo, máy tính.
– HS: SGK, tài liệu tham khảo, vở ghi
<b>III. Tiến trình dạy học:</b>


<b>1. Ổn định(1')</b>
<b>2. Bài củ( không)</b>
<b>3. Bài mới:</b>


<i>Hoạt động 1: Biến là cơng cụ trong lập trình</i>



Hoạt động của GV Hoạt động của HS Nội dung


GV: Hoạt động cơ bản của chương
trình máy tính là xử lí dữ liệu. Trước khi
được máy tính xử lí, mọi dữ liệu nhập vào
đều được lưu trong bộ nhớ của máy tính. Ví
dụ, nếu muốn cộng hai số a và b, trước hết
hai số đó sẽ được nhập và lưu trong bộ nhớ
máy tính, sau đó máy tính sẽ thực hiện phép
cộng a + b.


? Để chương trình ln biết chính xác
dữ liệu cần xử lí được lưu ở vị trí nào trong
bộ nhớ, các ngơn ngữ lập trình cung cấp một
cơng cụ lập trình rất quan trọng. Đó là biến
nhớ, hay được gọi ngắn gọn là biến.


Biến được dùng để lưu trữ dữ liệu và
dữ liệu được biến lưu trữ có thể thay đổi
trong khi thực hiện chương trình.


Dữ liệu do biến lưu trữ được gọi là giá
trị của biến


GV lấy ví dụ minh hoạ cho HS


<i>Hoạt động 2: Khai báo biến</i>


GV: Tất cả các biến dùng trong chương


trình cần phải được khai báo ngay trong
phần khai báo của chương trình. Việc khai


Chú ý theo dõi


Trả lời câu hỏi


Ghi chép


<b>1. Biến là cơng cụ trong</b>
<b>lập trình: </b>


- Biến được dùng để lưu
trữ dữ liệu và dữ liệu
được biến lưu trữ có thể
thay đổi trong khi thực
hiện chương trình.


- Dữ liệu do biến lưu trữ
được gọi là giá trị của
biến


VD1: In giá trị tổng hai số
a + b ra màn hình


Gán: X  a và Y  b
Write (X + Y)


VD2: Tính giá trị các biểu



thức 5


50
100
;
3


50


100 



ghi kết quả ra màn hình
Gán:


X  100 + 50
X  X/3 ; Write (X)
X  X/5 ; Write (X)


<b>2. Khai báo biến: </b>
Việc khai báo biến gồm:
- Khai báo tên biến


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

báo biến gồm:


- <i>Khai báo tên biến;</i>


- <i>Khai báo kiểu dữ liệu của biến.</i>
Tên biến phải tn theo quy tắc đặt tên
của ngơn ngữ lập trình.



GV lấy VD về khai báo biến trong
pascal


GV: Gọi lần lượt HS cho biết integer,
real, string là kiểu gì?


Integer: số ngun
Real: số thực
String: xâu kí tự
GV: Giải thích thêm


- <i>var</i> là từ khố của ngơn ngữ lập
trình dùng để khai báo biến,


- <i>m</i>, <i>n</i> là các biến có kiểu nguyên
(integer),


- <i>S</i>, <i>dientich</i> là các biến có kiểu thực
(real),


- <i>thong_bao </i>là biến kiểu xâu (string).
GV lưu ý HS:


Tên biến phải tuân theo quy tắc đặt tên
của ngơn ngữ lập trình


Tuỳ theo ngơn ngữ lập trình, cú pháp
khai báo biến có thể khác nhau.



Theo dỏi


của biến.
VD:


Var m, n: integer;
S, dientich: Real;
Thongbao: String;


<i>4. : Củng cố</i>


Cho HS thực hiện câu 4/33


<i>5.: Dặn dò</i>


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

<i>Ngày soạn :20/10/2008</i> <i>Tiết 16 – Tuần8</i>
<i>Ngày dạy :28/10/2008</i>


Bài 4: SỬ DỤNG BIẾN TRONG CHƯƠNG TRÌNH (tiếp)
<b>I. Mục tiêu:</b>


– HS biết khái niệm hằng


– HS biết vai trị của hằng trong lập trình


– Biết cách khai báo, đặt tên và cách sử dụng biến, hằng
– Hiểu lệnh gán


<b>II. Chuẩn bị:</b>



– GV: Giáo án, tài liệu tham khảo, máy tính.
– HS: SGK, tài liệu tham khảo, vở ghi
<b>III Tiến trình dạy học:</b>


<b>1. Ổn định(1')</b>
<b>2. Bài củ( 5')</b>


* Biến dùng để làm gì? Cách khai báo biến?
* Trả lời Câu 6/T33 SGK


<b>3. Bài mới:</b>


<i><b>Hoạt động 1 Sử dụng biến trong chương trình(10')</b></i>


Hoạt động của GV Hoạt động của HS Nội dung


GV: Sau khi khai báo,
ta có thể sử dụng các biến
trong chương trình. Các thao
tác có thể thực hiện với các
biến là:


- <i><b>Gán giá trị cho biến;</b></i>


- <i><b>Tính toán với các</b></i>
biến.


GV giới thiệu dạng của
câu lệnh gán giá trị cho biến
rồi lấy VD cho HS



Ví dụ:


<i>x   c/b (biến x nhận giá trị</i>
<i>bằng  c/b); </i>


<i>x  y (biến x được gán giá trị</i>
<i>của biến y); </i>


<i>i  i + 5 (biến i được gán giá</i>
<i>trị hiện tại của i cộng thêm 5</i>
đơn vị).


GV lấy ví dụ minh hoạ
trang 31 cho HS


Suy nghĩ trả lời câu
hỏi


Theo dõi gv hướng
dẫn


Theo dõi gv hướng
dẫn


Lấy ví dụ


<b>3. Sử dụng biến trong chương</b>
<b>trình: </b>



Các thao tác có thể thực hiện với
các biến là


<i><b>- Gán giá trị cho biến;</b></i>
<b>- Tính tốn với các biến. </b>


Câu lệnh gán giá trị cho biến có
dạng:


<i>Tên biến  Biểu thức cần gán </i>
<i>giá trị cho biến;</i>


Trong ngơn ngữ Pascal, kí hiệu
phép gán là dấu :=


VD: SGK/31


<i>Hoạt động 3 Hằng(25')</i>


Hoạt động của GV Hoạt động của
HS


Nội dung


GV: Ngồi cơng cụ chính để lưu trữ
dữ liệu là biến, các ngôn ngữ lập trình


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

<i>cịn có cơng cụ khác là hằng. Khác với</i>
<i>biến, hằng là đại lượng có giá trị khơng</i>
<i>đổi trong suốt q trình thực hiện chương</i>


trình.


Giống như biến, muốn sử dụng
hằng, ta cũng cần phải khai báo tên của
hằng. Tuy nhiên hằng phải được gán giá
trị ngay khi khai báo.


Tên hằng cũng phải tuân theo quy
tắc đặt tên của ngơn ngữ lập trình.


GV lấy VD về khai báo hằng trong
pascal và giải thích cho HS


- <i>const</i> là từ khoá để khai báo
hằng,


- Các hằng <i>pi</i>, <i>bankinh</i> được gán
giá trị tương ứng là 3.14 và 2 .
Với khai báo trên, để tính chu vi của
hình trịn, ta có thể dùng câu lệnh sau:


chuvi:=2*pi*bankinh;


GV: Vậy lợi ích của việc sử dụng
hằng là gì?


HS: Việc sử dụng hằng rất hiệu quả
nếu giá trị của hằng (bán kính) được sử
dụng trong nhiều câu lệnh của chương
trình. Nếu sử dụng hằng, khi cần thay đổi


giá trị, ta chỉ cần chỉnh sửa một lần, tại
nơi khai báo mà khơng phải tìm và sửa
trong cả chương trình.


GV: Chính vì giá trị của hằng là
không đổi trong suốt chương trình nên
không thể dùng câu lệnh để thay đổi giá
trị của hằng (như đối với biến) ở bất kì vị
trí nào trong chương trình


GV lấy VD về câu lệnh khộng hợp lệ


Theo dõi gv
hướng dẫn


<b>2. Hằng: </b>


Hằng là đại lượng có giá trị
khơng đổi trong suốt chương
trình


Việc khai báo hằng gồm:
- Khai báo tên hằng
- Gán giá trị cho hằng.
VD:


Const pi = 3.14;
Bankinh = 2;


Chú ý: Không thể dùng


câu lệnh để thay đổi giá trị
của hằng (như đối với biến) ở
bất kì vị trí nào trong chương
trình


<i>4 Củng cố(3')</i>


Nhắc lại cách sử dụng biến trong chương trình
Hằng là đại lượng như thế nào?


Cách khai báo hằng?


Nêu sự giống nhau và khác nhau giữa hằng và biến, cách khai báo?
<i>5 Dặn dò(1')</i>


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

<i>Ngày soạn :29/10/2008</i> <i>Tiết 17 – Tuần 9</i>
<i>Ngày dạy :30/10/2008</i>


THỰC HÀNH


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


- Khắc sâu kiến thức về lý thuyết và kỷ năng thực hành cho học sinh.
- Hệ thống hoá các kiến thức đã học. Vận dụng giải quyết các bài toán.


- Rèn luyện kỷ năng viết chương trình giải quyết các bài tốn bằng ngơn ngữ
Pascal.


<b>II. Chuẩn bị.</b>


- Đèn chiếu, giấy trong, thước , phấn màu



<b>III. Tiến trình dạy - học.</b>


1. ổn định.(1')
2. Bài củ. (3ph)


Nêu sự giống nhau và khác nhau giữa hằng và biến, cách khai báo?
3. Bài mới(<b>.40')</b>


<i><b>VËn dông lm bi tp</b></i>


<b>HĐ GV</b> <b>HĐ HS</b> <b>Ghi bảng</b>


! Gi hs đọc bài 1 và tóm tắt
nêu y/c


? Hãy xác định dữ liệu vào, ra
của bài toán


- GV chốt lại vấn đề


? Hãy nêu giải thuật bài toán
- GV nhận xét đánh giá
-GV hoàn chỉnh


!GV HD hs viÕt chơng trình
+ Chọn kiểu dữ liệu: int, real.
+ Lệnh nhập có thể sử dụng ba
lệnh riêng biệt hoặc ghép lại.
+ Nếu sử dụng kiểu real thì lệnh


xuất :


Writeln(Dien tich la ’, S:8:2);
! Y/c hs thùc hiÖn


! gọi hs lên bảng thực hiện
!GV nhắc ;


+ Căn bậc hai phải sử dụng
hàm; SQRT


+ Giá trị trả về của hàm luôn là:
<i><b>real</b></i>


! GV nhn xột ỏnh giỏ
! GV đa bài giải lên màn hình


- Hs đọc bài trả lời y/c
bài tốn


- HS nªu


- HS nhËn xÐt bổ sung
- HS sinh bài


- HS lên bảng viết giải
tht


- hs líp viÕt vµo vì
-HS nhËn xÐt bỉ sung


- HS theo dâi vµ ghi
bµi


- HS đọc bài tự nghiên
cứu và thực hiện y/c
bài tốn


- HS lªn b¶ng thùc
hiƯn


- HS nhËn xÐt bỉ sung
- HS ghi nhí


- HS theo dâi vµ ghi vë
- HS ghi bµi


<i><b>Bµi 1.</b></i>


In: đáy lớn (a), đáy bé(b), chiều cao (h)
Out: S (diện tích)


<i><b>Gi¶i tht:</b></i>


B1. Readln(a,b,h);
B2. S := (a+b)*h;
B3. Writeln(S);
Program VD;


Var a,b,h,S : integer;
Begin



Write(‘Hay nhap vao ba so nguyen
duong’);


Readln(a,b,h);
S := (a+b)*h;


Writeln(‘Dien tich la ’, S);
Readln;


End.
<i><b>Bµi 2. </b></i>
Program VD;
Var a : integer;
Begin


Write(‘Hay nhap vao 1 so nguyen
duong’);


Readln(a);


Writeln(‘Can bac hai cua’ , a , ‘la ’
’,SQRT(a):8:2);


Readln;
End.
<b>4. H ớng dẫn về nhà (1')</b> + Học và nắm các kiến thức đã học


+ Làm lại các bài tập



<i>Ngày soạn :29/10/2008</i> <i>Tiết 18 – Tuần 9</i>


<i>Ngày dạy :30/10/2008</i>


THỰC HÀNH


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


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

- Hệ thống hoá các kiến thức đã học. Vận dụng giải quyết các bài toán.


- Rèn luyện kỷ năng viết chương trình giải quyết các bài tốn bằng ngơn ngữ
Pascal.


<b>II. Chuẩn bị.</b>


- Đèn chiếu, giấy trong, thước , phấn màu


<b>III. Tiến trình dạy - học.</b>


1. ổn định.(1')
2. Bài củ. (3ph)


Nêu sự giống nhau và khác nhau giữa hằng và biến, cách khai báo?
3. Bài mới(<b>.40')</b>


<i><b>HĐ 1. Xác nh d liu(17')</b></i>



<b>HĐ GV</b> <b>HĐ HS</b> <b>Ghi bảng</b>


GV a bài tốn (lên
màn hình)



Nhập hai số ngun
dương là độ dài hai cạnh
của hình chữ nhật, tính
chu vi và diện tích.


? Hãy xác định dữ liệu vào
ra của bài toán


GV khẳng định vấn đề
? Từ các dữ liệu hãy xác
định giải thuật


! GV ghi giải thuật theo lời
hs


GV hồn chỉnh


HS đọc bài
tốn


HS trả lời
HS khác nhận
xét bổ sung
HS đứng tại
chổ nêu giải
thuật


HS nhận xét
bổ sung


HS ghi bài


1. Xác định dữ liệu và giải thuật


Dữ liệu vào: hai số a,b > 0


Dữ liệu ra: Chu vi(C), diện tích (S)


Giải thuật.
B1. Nhập a,b


B2. Lập công thức
C := (a+b)*2


S := a*b
B3. Xut C,S
<i><b>HĐ 2. Hoàn thành chơng trình.(18')</b></i>


<b>HĐ GV</b> <b>HĐ HS</b> <b>Ghi b¶ng</b>


! GV HD hs khởi động
chương trình và tiến
hành soạn thảo chương
trình


! GV gõ nhanh chương
trình vào (có sai lỗi)


HS theo dõi và
ghi nhớ các


bước


HS ghi lại


chương trình Program Tinh;<sub>Uses Crt;</sub>


Var a,b,C,S : integer;
Begin


Clrscr;


Writeln(‘Nhap vao chieu dai a = ’);
Readln(a);


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

? Để dịch chương trình
ta thực hiện thao tác?
! GVHD cách dịch
chương trình


! GV dịch và sữa cáclỗi
sai trong chương trình
cho hs thấy


! Sau khi sữa và hồn
chỉnh chương trình
Y/c hs nêu cách thực
hiện các thao tác quản lý
tệp.


! GV thực hiện chạy


chương trình


! GVHD cách nhập dữ
liệu vào cho a,b


! GV nhập vào 2 số bất
kỳ và nhấn Enter để thi
hành


! Giải các dòng ký tự trên
màn hình.


! GV kiểm tra kết quả
bằng tay để so sánh.


HS trả lời
HS theo dõi
cách làm HS
theo dõi chú
các thao tác
khi sữa
chương trình.
HS nêu các
thao tác quản
lý tệp:


+ Lưu tệp
+ Đóng tệp
HS ghi nhớ



C := (a + b) * 2;
S := a * b;


Writeln(‘Chu vi hinh chu nhat la’,C:8:2);
Writeln(‘Dien tich hinh chu nhat la’,S:8:2);
Readln;


End.


<b>4. Củng cố(4')</b>


Cho học sinh ghi lại một số sai sót mà giáo viên đã sữa chữa.


<b>5. Híng dÉn vè nhà.(1')</b>


Học và nắm các bớc hoàn thành một chơng tr×nh


<i>Ngày soạn :02/11/2008</i> <i>Tiết 19 – Tuần 10</i>


<i>Ngày dạy :04/11/2008</i>


BÀI TẬP


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


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

- Rèn luyện kỷ năng viết chương trình giải quyết các bài tốn bằng ngôn ngữ
Pascal.


<b>II. Chuẩn bị.</b>


- Đèn chiếu, giấy trong, thước , phấn màu



<b>III. Tiến trình dạy - học.</b>


1. ổn định.(1')
2. Bài củ. (3ph)


Nêu sự giống nhau và khác nhau giữa hằng và biến, cách khai báo?
3. Bài mới(<b>.40')</b>


<i><b>VËn dông làm bài tập SGK TRANG 35</b></i>


<b>H§ GV</b> <b>H§ HS</b> <b>Ghi b¶ng</b>


! Gọi hs đọc bài 1 và tóm tắt
nêu y/c


? Hãy xác định dữ liệu vào, ra
của bài toán


- GV chốt lại vấn đề


? Hãy nêu giải thuật bài tốn
- GV nhận xét đánh giá
-GV hồn chnh


!GV HD hs viết chơng trình
+ Chọn kiểu dữ liệu: int, real.
+ LƯnh nhËp cã thĨ sư dơng ba
lƯnh riêng biệt hoặc ghép lại.
+ Nếu sử dụng kiểu real th× lƯnh


xt :


Writeln(‘Dien tich la ’, S:8:2);
! Y/c hs thực hiện


! gọi hs lên bảng thực hiện
!GV nhắc ;


+ Căn bậc hai phải sử dụng
hàm; SQRT


+ Giá trị trả về của hàm luôn là:
<i><b>real</b></i>


! GV nhn xét đánh giá
! GV đa bài giải lên màn hình


- Hs đọc bài trả lời y/c
bài tốn


- HS nªu


- HS nhËn xÐt bỉ sung
- HS sinh bµi


- HS lên bảng viết giải
thuật


- hs lớp viết vào vỡ
-HS nhËn xÐt bỉ sung


- HS theo dâi vµ ghi
bµi


- HS đọc bài tự nghiên
cứu và thực hiện y/c
bi toỏn


- HS lên bảng thực hiện
- HS nhận xét bỉ sung
- HS ghi nhí


- HS theo dâi vµ ghi vë
- HS ghi bµi


<i><b>Bµi 1.</b></i>


Nhập 3 số a,b,c tính tổng, hiệu, tích ,
thương


<i><b>Bµi 2. </b></i>


Nhập 2 số x,y ngun tính (a+b)2
(a-b)2.


<b>4. H ớng dẫn về nhà (1')</b> + Học và nắm các kiến thức đã học
+ Làm lại cỏc bài tập


<i>Ngày soạn :02/10/2008</i> <i>Tiết 20 – Tuần 10</i>


<i>Ngày dạy :04/10/2008</i>



BÀI TẬP


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


- Khắc sâu kiến thức về lý thuyết và kỷ năng thực hành cho học sinh.
- Hệ thống hoá các kiến thức đã học. Vận dụng giải quyết các bài toán.


- Rèn luyện kỷ năng viết chương trình giải quyết các bài tốn bằng ngơn ngữ
Pascal.


<b>II. Chuẩn bị.</b>


- Đèn chiếu, giấy trong, thước , phấn màu


<b>III. Tiến trình dạy - học.</b>


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

b.. Bài củ. (3ph)


Nêu sự giống nhau và khác nhau giữa hằng và biến, cách khai báo?
c.. Bài mới(<b>.40')</b>


HĐ 1. Xác nh d liu(17')


<b>HĐ GV</b> <b>HĐ HS</b> <b>Ghi bảng</b>


GV a bài tốn (lên
màn hình)


Nhập hai số ngun
dương là độ dài hai cạnh


của hình chữ nhật, tính
chu vi và diện tích.


? Hãy xác định dữ liệu vào
ra của bài toán


GV khẳng định vấn đề
? Từ các dữ liệu hãy xác
định giải thuật


! GV ghi giải thuật theo lời
hs


GV hồn chỉnh


HS đọc bài
tốn


HS trả lời
HS khác nhận
xét bổ sung
HS đứng tại
chổ nêu giải
thuật


HS nhận xét
bổ sung
HS ghi bài


Bài 1: Nhập vào chiều dài và chiều


rộng của hình chữ nhật sau đó tính
chu vi và diện tích của hình chữ nhật.


Dữ liệu vào: hai số a,b > 0


Dữ liệu ra: Chu vi(C), diện tích (S)


Giải thuật.
B1. Nhập a,b


B2. Lập cơng thức
C := (a+b)*2


S := a*b
B3. Xuất C,S
<i><b>H§ 2. Hoàn thành chơng trình.(18')</b></i>


<b>HĐ GV</b> <b>HĐ HS</b> <b>Ghi bảng</b>


! GV HD hs khởi động
chương trình và tiến
hành soạn thảo chương
trình


! GV gõ nhanh chương
trình vào (có sai lỗi)


? Để dịch chương trình
ta thực hiện thao tác?
! GVHD cách dịch


chương trình


! GV dịch và sữa cáclỗi
sai trong chương trình
cho hs thấy


HS theo dõi và
ghi nhớ các
bước


HS ghi lại
chương trình


HS trả lời
HS theo dõi
cách làm HS
theo dõi chú
các thao tác
khi sữa


Program Tinh;
Uses Crt;


Var a,b,C,S : integer;
Begin


Clrscr;


Writeln(‘Nhap vao chieu dai a = ’);
Readln(a);



Writeln(‘Nhap vao chieu rong b = ’);
Readln(b);


C := (a + b) * 2;
S := a * b;


Writeln(‘Chu vi hinh chu nhat la’,C:8:2);
Writeln(‘Dien tich hinh chu nhat la’,S:8:2);
Readln;


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

! Sau khi sữa và hoàn
chỉnh chương trình
Y/c hs nêu cách thực
hiện các thao tác quản lý
tệp.


! GV thực hiện chạy
chương trình


! GVHD cách nhập dữ
liệu vào cho a,b


! GV nhập vào 2 số bất
kỳ và nhấn Enter để thi
hành


! Giải các dịng ký tự trên
màn hình.



! GV kiểm tra kết quả
bằng tay để so sánh.


chương trình.
HS nêu các
thao tác quản
lý tệp:


+ Lưu tệp
+ Đóng tệp
HS ghi nhớ


<b>d.Củng cố(4')</b>


Cho học sinh ghi lại một số sai sót mà giáo viên đã sữa chữa.


<b>e. Híng dẫn vè nhà.(1')</b>


Học và nắm các bớc hoàn thành một chơng trình


<i><b>Ngy son :05/11/2008</b></i> Tit 21-Tun 11


<i><b>Ngy dy : 15/11/2008</b></i>


Bài 5 :


<b>TỪ BÀI TỐN ĐẾN CHƯƠNG TRÌNH</b>



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



1. Kiến thức:


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

- sắp xếp 3 biến x,y,z có giá trị tăng dần và tìm só lớn nhất trong một dãy số cho
trước.


3. Thái độ:


- u thích bộ mơn, tự giác trong học tập


<b>II. Chuẩn bị : </b>


<i><b>a. Giáo viên : </b></i>


- Tài liệu, GA điện tử.


- Đồ dùng dạy học như máy tính kết nối projector,...
<i><b>b. Học sinh :</b></i>


- Đọc trước bài
- Bảng phụ.


<b>III. Tiến trình dạy học : </b>
<b>a. ổn định tổ chức lớp : </b>


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


<b>b. Kiểm tra bài cũ : (không)</b>
<b>c. Dạy bài mới :</b>



<b>Hoạt động 1 : Học sinh tìm hiểu khái niệm về bài toán, thuật toán(24')</b>


hoạt động của thày hoạt động của trò kiến thức cần đạt
GV:Muốn nhờ máy giải


bài toán này em phải
làm những gì ?


Gv : Hãy viết các lệnh
để giải bài toán này.


Gv : Đưa bài toán 2 lên
màn hình.


Gv : Viết các lệnh để
giải bài toán 2.


H : Trả lời


H : Viết lên bảng
phụ


G : Kiểm tra và
chốt mơ hình
chương trình giải
bài tốn 1.


1. Bài tốn và chương trình


<i><b>Bài tốn 1 : </b></i>



Tính tổng của hai số a và b được gõ
vào bàn phím.


=> Viết chương trình gồm các lệnh
sau :


G : Nhận xét và chốt
mơ hình chương trình
trên màn hình.


Hs : Đọc và
nghiên cứu để
tìm cách giải bài
tốn.


<i><b>Bài tốn 2 : </b></i>


Tính giá trị của biểu thức P = (a*b-c)/d
với a, b, c, d là các số thực tuỳ ý


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

G : Nhận xét và chốt
mô hinh chương trình
trên màn hình.


Hs : Hoạt động
nhóm viết vào
bảng phụ và nộp
kết quả khi G yêu
cầu.



H : Nghiên cứu
sơ đồ vị trí rơbốt
trong bài 1.


H : Viết chương
trình gồm các
lệnh điều khiển
rơbốt.


Tính biểu thức ;
Bắt đầu


- Nhập giá trị cho a, b, c, d.


- Tính tích a*b nhớ kết quả vào P1
- Tính hiệu P1 – c và nhớ kết quả
vào P2


- Tính thương P2/d và nhớ kết quả
vào P.


- In giá trị của P ra màn hình.
Kết thúc


<i><b>Bài tốn 3 :</b></i>


Hãy điều khiển rôbốt nhặt rác theo sơ
đồ bài 1.


=> Viết chương trình gồm các lệnh


sau :


<b>Hoạt động 2 : HS biết các xác định bài tốn là gì(15')</b>


hoạt động của thày hoạt động của trò kiến thức cần đạt
Em hiểu thế nào là bài


toán.


G : Muốn giải một bài
toán trước tiên em
phải làm gì ?


G : Thu nhận kết quả
và chốt kiến thức.


H : Trả lời khái niệm bài
toán.


H : Các nhóm - Xác
định đầu vào và ra của
bài toán tính diện tích
hình tam giác, nấu một
món ăn, vượt qua nút
nghẽn giao thơng.


2.Bài tốn và xác định bài


tốn



- Bài tốn là một cơng việc hay


một nhiệm vụ cần phải giải
quyết.


- Muốn giải một bài toán trước
hết phải xác định được giả thiết
và kết luận tức đầu vào và đầu
ra của bài toán.


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

<b>d.Củng cố kiến thức.(4')</b>


? Nhắc lại khái niệm về bài toán, thế nào là đầu vào và đầu ra của bài toán.
? Thế nào là xác định bài toán.


<b>e. Hướng dẫn về nhà.(2')</b>


? Xác định đầu vào và đầu ra của bài tốn : Tính diện tích hình tam giác, nấu
một món ăn, vượt qua nút nghẽn giao thơng.


? Tự đưa ra một bài tốn rồi xác định đầu vào và đầu ra của bài tốn đó.


<b>Ngày soạn :12/11/2008</b> Tiết 22 - tuần 11


<b>Ngày dạy : 17/11/2008</b>


Bài 5 :


<b>TỪ BÀI TỐN ĐẾN CHƯƠNG TRÌNH(tt)</b>



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



1. Kiến thức:


 - Biết các bước giải bài toán trên máy tính;


 Biết chương trình là thể hiện của thuật tốn trên một ngơn ngữ cụ thể.
 Biết mơ tả thuật toán bằng phương pháp liệt kê các bước.


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

 Hiểu thuật tốn tính tổng của N số tự nhiên đầu tiên, tìm số lớn nhất của
một dãy số.


3. Thái độ:


- u thích bộ mơn, tự giác trong học tập


<b>II. Chuẩn bị : </b>


<i><b>1. Giáo viên : </b></i>


- Tài liệu, GA điện tử.


- Đồ dùng dạy học như máy tính kết nối projector,...
<i><b>2. Học sinh :</b></i>


- Đọc trước bài
- Bảng phụ.


<b>III. Tiến trình tiết dạy : </b>
<b>a. Ổn định tổ chức lớp : </b>


- Kiển tra sĩ số :


- ổn định trật tự :


<b>b. Kiểm tra bài cũ : </b>


? Trình bày khái niệm bài tốn. Viết chương trình là gì ?


? Đọc đề bài của một bài tốn nào đó và xác định đầu vào đầu ra của bài
tốn đó


<b>c. Dạy bài mới :</b>


<b>Hoạt động 1 : Học sinh biết các bước giải một bài tốn trên máy tính.</b>


hoạt động của thày và trị kiến thức cần đạt


G :Giải tốn trên máy tính nghĩa là gì
?


H : Nghiên cứu SGK trả lời.


G : Em hiểu thế nào là thuật toán ?
H : Trả lời.


G : Để nhờ máy giải một bài toán ta
phải thực hiện những bước nào ?


H : Nghiên cứu SGK và (hình 4) rồi
viết trên bảng nhóm.


G : Thu kết quả nhận xét và chốt các



3. Quá trình giải bài tốn trên máy tính



* Các bước để nhờ máy giải một bài toán :
 Bước 1 : Xác định bài tốn là xác định
(thơng tin vào - INPUT) và kết quả cần xác
định (thông tin ra -OUTPUT).


 <i>Bước 2 : Thiết lập phương án giải quyết</i>
<i>(xây dựng thuật toán) là tìm, lựa chọn</i>
<i>thuật tốn và mơ tả nó bằng ngôn ngữ</i>
<i>thông thường.</i>


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

bước cơ bản.


G : Em hiểu thực chất chương trình
là gì ?


H : Nghiên cứu SGK trả lời


<i>hiện. </i>


<b>Hoạt động 2 : HS biết mơ tả thuật tốn bằng phương pháp liệt kê các bước.</b>


G : Chỉ ra các bước cần thiết để pha
trà mới khách ?


H : Nghiên cứu SGK trả lời.
G : Mơ tả thuật tốn là gì ?
H : Trả lời theo ý hiểu.



G : Chốt và nhấn mạnh cách mơ tả
thuật tốn.


G : Đưa ra ví dụ bài toán giải pt
ax+b= 0 trên màn hình.


H : Nghiên cứu SGK


H : Mơ tả thuật tốn bằng các bước
G : Đưa ra ví dụ bài tốn chuẩn bị
món trứng tráng.


G : Đưa ra mơ tả thuật tốn bằng các
bước bị xáo trộn.


H : Nghiên cứu và sắp xếp lại theo
trình tự để giải quyết bài toán.


G : Phát biểu khái niệm thuật toán ?
H : Trả lời


G : Chốt khái niệm và H ghi vở
Học sinh tiến hành làm bài tập.


Gọi học sinh lên bảng làm


Học sinh tiến hành làm bài tập.


Gọi học sinh lên bảng làm



4. Thuật toán và mơ tả thuật tốn



- Mơ tả thuật tốn là liệt kê các bước cần
thiết để giải một bài tốn.


<i><b>a. Ví dụ 1 : </b></i>


<i>Bài tốn giải phương trình bậc nhất dạng </i>
<i>tổng quát bx + c = 0 </i>


(SGK)
<i><b>b. Ví dụ 2 : </b></i>


<i>Bài tốn ”Chuẩn bị món trứng tráng”</i>
(SGK)


<i>Thuật toán là dãy các thao tác cần thực </i>
<i>hiện theo một trình tự xác định để thu được</i>
<i>kết quả cần tìm từ những điều kiện cho </i>
<i>trước. :</i>


<b>5. Một số ví dụ về thuật tốn</b>


<i><b>a. Ví dụ 1 : Tính diện tích của hình </b></i>


(SGK)


<i><b>b. Ví dụ 2 : Tính tổng của 100 số tự </b></i>
<i><b>nhiên đầu tiên.</b></i>



<i><b>* Xác định bài toán : </b></i>


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

Ghi kết luận


OUTPUT: Giá trị SUM = 1 + 2 + ...+ 100.
<i><b>Mô tả thuật toán :</b></i>


Bước 1: Gán SUM ( 1; i ( 1.
Bước 2: Gán i ( i + 1.


Bước 3: Nếu i ≤ 100, thì SUM ( SUM + i và
chuyển lên bước 2. Trong trường hợp
ngược lại (i > 100), kết thúc thuật toán.


<b>f. Củng cố kiến thức.</b>


Qua tiết học em đã nắm được những kiến thức cơ bản gì ?
H : Nhắc lại những kiến thức cơ bản.


G : Chốt các kiến thức trọng tâm trong tiết học :


<b>g. Hướng dẫn về nhà.</b>


1. Học thuộc các khái niệm : Giải bài tốn là gì, các bước để giải một bài
tốn, thuật tốn là gì, cách mơ tả thuật tốn như thế nào.


2. Mơ tả thuật tốn để tính P = (a x b - c)/d
3. Đọc trước phần 5 bài 2 SGK.



<b>Ngày soạn :12/11/2008</b> Tiết 23+24 - tuần 12


<b>Ngày dạy : 19/11/2008</b>


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



<b>I. MỤC TIÊU : </b>


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


- Học sinh nắm chắc vai trò của biến, hằng, cách khai báo biến, hằng.


- Học sinh nắm chắc cách sử dụng biến trong chương trình và cấu trúc của lệnh
gán.


- Rèn kĩ năng sử dụng biến trong chương trình.


2. Kỹ năng: Thực hiện các yêu cầu bài tập đã đưa ra.


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

<b>II. CHUẨN BỊ : </b>


1. Giáo viên :


- SGK, SGV, giáo án, bảng phụ ,...


2. Học sinh : Kiến thức đã học, tập, bảng nhóm, . . .


<b>III. CÁC HOẠT ĐỘNG DẠY HỌC </b>


a. Ổn định, kiểm tra sĩ số :



b. Kiểm tra bài cũ : Kiểm tra việc chuẩn bị bài ở nhà của học sinh trong vở.
c. Dạy bài mới :


<b>HOẠT ĐỘNG CỦA GV</b> <b>HOẠT ĐỘNG CỦA HS</b> <b>NỘI DUNG</b>
- GV : Biến là đại lượng


nhö thế nào ?


- GV : Cách khai báo biến
như thế nào ?


- GV : Có thể thực hiện
các thao tác nào với
biến ?


- GV : Viết cấu trúc của
lệnh gán, lệnh nhập giá trị
cho biến, lệnh in giá trị
của biến ?


- GV : Nhận xét và chốt
kiến thức cơ bản về biến.
- GV : Hằng là đại lượng
như thế nào ?


- GV : Cách khai báo hằng
như thế nào ?


- GV : Nhận xét và chốt


kiến thức hằng.


GV : Đưa chương trình
bài 1 lên màn hình.


- GV : Liên kết với phần
mềm Turbo Pascal đã
soạn sẵn chương trình


- HS : nghiên cứu
sách bài tập và trả
lời các câu hỏi của
GV.


- HS : viết lên bảng
dạng tổng quát để
khai báo biến.


- HS : trả lời.


- HS : 3 em lên bảng
mỗi em viết 1 lệnh.
hs nhận xét.


- HS : Lắng nghe.
- HS : Lắng nghe và
trả lời.


- HS : Viết bảng phụ
để trả lời.



- HS : Lắng nghe và
ghi bài.


- HS quan sát.


- HS : Từng em chỉ
ra từng lỗi và lên
sửa trên máy.


- HS : Nhận xét


Viết thật tốn cho các vd sau:
1. Tính 2x+3y+2 với x=2; y=4
2. Tính max, min của 2 số x,y.
- Biến dùng để đặt tên cho một
vùng của bộ nhớ máy tính. Biến
lưu trữ dữ liệu (giá trị). Giá trị
của biến có thể thay đổi trong
quá trình thực hiện chương
trình.


- Trước khi sử dụng biến phải
khai báo theo dạng sau : Var
tên biến : kiểu của biến;


- Các thao tác có thể thực hiện
với biến là gán giá trị cho biến
hoặc nhập giá trị cho biến và
tính tốn với giá trị của biến.


- Lệnh gán có dạng :Tên biến :=
biểu thức(gt);


- Lệnh nhập giá trị cho
biến:Readln(tên biến);


- Lệnh in giá trị cho biến :
Write(tên biến); hoặc Writeln(tên
biến);


- Khai báo hằng : Const tên
hằng=giá trị;


<b>* Bài 1 : </b>


Hãy chỉ ra lỗi và sửa lỗi trong
chương trình sau :


Const pi:=3.1416;
Var cv,dt:integer
R:real;


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

này.


- GV : Hãy chỉ ra lần lượt
các lỗi và sửa như thế
nào ?


- GV : Nhấn phím F9 để
dịch chương trình.



- GV : Chạy chương trình
nhấn Ctrl-F9


- GV : Đưa đề bài 2 lên
màn hình.


- GV : Giúp học sinh phân
tích bài toán và hướng
dẫn cách viết từng bước
để giải bài tốn này.


- GV : Viết cơng thức tính
S, c, d ?


- GV : Nhận xét và đưa
cơng thức lên màn hình.
- GV : Chốt tồn chương
trình lên màn hình và chạy
thử trong Pascal


chương trình cịn lỗi
khơng và sửa (nếu
cịn)


- HS : Nhận xét kết
quả.


- HS quan sát.



- HS lắng nghe và
cùng GV xây dựng
bài.


- HS lắng nghe và
trả lời theo nhóm
trên bảng phụ.


- HS quan sát.


- HS lắng nghe và
làm theo nhóm.
- HS lắng nghe.


Writeln(‘chu vi la:= cv’);
Writeln(‘dien tich la:=dt’);
Readln


End.


<b>* Bài 2 : </b>


Viết chương trình để :


Tính diện tích S của hình tam
giác với độ dài một cạnh a và
chiều cao tương ứng h (a và h
là các số tự nhiên được nhập
vào từ bàn phím).



Program tinhtoan;


Var a,h : interger; S : real;
a,b,c,d : integer;


Begin


Write(‘Nhap canh day và chieu
cao :’);


Readln (a,h);
S:=(a*h)/2;


Writeln(‘ Dien tich hinh tam giac
la :’,S:5:1);


Write(‘Nhap hai so a,b :’);
Readln (a,b);


c:=a div b; d:=a mod b;


Writeln(‘ Phan nguyen cua a va
b la :’,c);


Writeln(‘ Phan du cua a va b
la :’,d);


<b>d. Củng cố: Chốt lại kiến thức trọng tâm cần nắm được để áp dụng làm bài tập. </b>
<b>e. Hướng dẫn về nhà: Chuẩn bị bài tmới.</b>



<b>Ngày soạn :21/11/2008</b> Tiết 25 - tuần 13


<b>Ngày dạy : 24/11/2008</b>


<b>TÌM HIỂU THỜI GIAN VỚI PHẦN MỀM SUN TIMES</b>



<b>I. MụcTiêu:</b>


1. Kiến thức


- :HS hiểu được các chức năng chính của phần mềm, sử dụng phần mềm
để quan sát thời gian địa phương của các vị trí khác nhau trên trái đất.


- Hs có thể tự thao tác và thực hiện một số chức năng chính của phần mềm.
2. Kỹ năng :


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

- Khởi động , thoát được chương trình
3. Thái độ :


- Thơng qua phần mềm HS sẽ hiểu biết thêm về thiên nhiên, trái đất, từ đó
nâng cao ý thức bảo vệ mơi trường sống.


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


- Gv: phòng máy, bài tập thực hành.
- Hs: kiến thức cũ, sgk.


<b>III/ Tiến trình dạy – học:</b>


<i><b>a. Ổn định lớp:</b></i>


<i><b>b. Bài cũ:(không)</b></i>
<i><b>c. Dạy bài mới</b></i>


<b>Hoạt động GV</b> <b>Hoạt động HS</b> <b>Hoạt động HS</b>


Giáo viên giới thiệu về phần
mềm


-Trên bản đồ có các vùng
sáng, tối khác nhau. Vùng
sáng cho biết các vị trí thuộc
vùng này tại thời điểm hiện
thời là ban ngày. Ngược lại,
các vùng tối chỉ ra các vị trí
thuộc vùng này là ban đêm.
-Giữa vùng sáng và tối có
một đường vạch liền, đó là
ranh giới giữa ngày và đêm.
Tại các vùng có đường này
đang là thời gian Mặt Trời
lặn hoặc mọc ở đường chân


- Hs về vị trí thực
hành theo đúng quy
địng của giáo viên.
- Hs lắng nghe.
Hs: thực hành
Hs: trả lời.


Hs: lắng nghe và thực


hành.


Hs: lắng nghe và thực
hành.


Hs: thực hành.
Hs: thực hành, nhận
xét kết quả của từng
câu.


Hs: thêm lệng delay
(5000) vào sau mỗi
câu lệnh writeln trong
chương trình trên.
Hs: chạy chương trình
và nhận xét.


Hs: thực hành.
Hs: thực hành.
Hs: thực hành.


1. Giới thiệu phần mềm



Phần mềm Sun Times sẽ giúp em nhìn
được tồn cảnh các vị trí, thành phố thủ
đơ của các nước trên tồn thế giới với rất
nhiều thông tin liên quan đến thời gian.
Ngồi ra, phần mềm cịn cung cấp nhiều
chức năng hữu ích khác liên quan đến thời
gian Mặt Trời mọc, Mặt Trời lặn, nhật


thực, nguyệt thực,...


2. Màn hình chính của phần mềm


<b>a) Khởi động phần mềm</b>



Nháy đúp vào biểu tượng để
khởi động phần mềm.


<b>b) Màn hình chính</b>



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

trời. Chúng ta gọi các đường
này là đường phân chia thời
gian sáng/tối.


-Trên bản đồ có những vị trí
được đánh dấu. Đó chính là
các thành phố và thủ đô các
quốc gia. Khi nháy chuột lên
các vị trí này em sẽ nhìn
thấy thơng tin chi tiết liên
quan đến thành phố này
hiện ra trong các khung nhỏ
phía trên của màn hình.


Muốn phóng to một vùng
hình chữ nhật trên bản đồ
em có thể dùng cách sau:


Trên bản đồ có các vùng
sáng, tối khác nhau cho biết


thời gian hiện tại của các
vùng này là ngày hay đêm.
Tại ranh giới phân chia ngày
và đêm, sẽ là thời điểm
chuyển giao giữa đêm-ngày
(Mặt Trời mọc) và
ngày-đêm (Mặt Trời lặn).
chúng ta thấy Mặt Trời
chuyển động từ Đông sang
Tây. Trên bản đồ, ta sẽ thấy
các vùng tối "chuyển động"
theo hướng từ phải sang trái.
Bây giờ em sẽ tìm hiểu kĩ
hơn một địa điểm, một


Hs: Rút ra nhận xét.
Hs: lắng nghe.
Hs: thực hành


Hs: thực hành.
Hs: Rút ra nhận xét.
Hs: lắng nghe.


Hs: thực hành.
Hs: Rút ra nhận xét.
Hs: lắng nghe.


Hs: thực hành.
Hs: Rút ra nhận xét.
Hs: lắng nghe.



Hs: thực hành.
Hs: Rút ra nhận xét.
Hs: lắng nghe.


<b>c) Thoát khỏi phần mềm.</b>


Muốn thoát khỏi phần mềm thực hiện
lệnh FileExit hoặc nhấn tổ hợp phím
<b>Alt+F4.</b>


3. Hướng dẫn sử dụng



<b>a) Phóng to quan sát một vùng </b>


<b>bản đồ chi tiết</b>



Nhấn giữ nút chuột phải và kéo thả từ một
đỉnh đến đỉnh đối diện của hình chữ nhật
này. Một cửa sổ xuất hiện hiển thị vùng
bản đồ được đánh dấu đã được phóng to.

<b>b) Quan sát và nhận biết thời </b>


<b>gian: ngày và đêm</b>



Chúng ta đã biết do Trái Đất tự quay và
quay quanh Mặt Trời tạo ra ngày và đêm.
Theo sự chuyển động của Trái Đất.


<b>c) Quan sát và xem thông tin thời </b>


<b>gian chi tiết của một địa điểm cụ </b>


<b>thể</b>




.


<b>d) Quan sát vùng đệm giữa ngày </b>


<b>và đêm</b>



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

thành phố trên Trái Đất:


Em hãy quan sát vùng có
màu đen trên bản đồ. Đó là
vùng có thời gian ban đêm.
Xung quanh vùng này có
một giải phân cách sáng -
tối, đó chính là vùng đệm
giữa ngày và đêm.


Thời gian luôn chuyển động,
chúng ta sẽ thấy khối màu
đen sẽ dịch chuyển từ phải
sang trái.


Hs: thực hành.
Hs: Rút ra nhận xét.
Hs: lắng nghe.




<b>e) Đặt thời gian quan sát</b>



Bằng cách nháy chuột lên các nút lệnh
thời gian này em có thể đặt lại thời gian


như Ngày, Tháng, Năm, Giờ, Phút và
Giây.


<i><b>d.</b></i> Củng cố: - Cho 2 học sinh khởi động và thoát phần mềm
<i><b>e.</b></i> Dặn dò: Về nhà xem bài mới tiết sau học tiếp


<b>Ngày soạn :21/11/2008</b> Tiết 26 - tuần 13


<b>Ngày dạy : 24/11/2008</b>


<b>TÌM HIỂU THỜI GIAN VỚI PHẦN MỀM SUN TIMES(tt)</b>



<b>I. MụcTiêu:</b>


1. Kiến thức


- :HS hiểu được các chức năng chính của phần mềm, sử dụng phần mềm
để quan sát thời gian địa phương của các vị trí khác nhau trên trái đất.


- Hs có thể tự thao tác và thực hiện một số chức năng chính của phần mềm.
2. Kỹ năng :


Vuứng ủeọm chuyeồn
giửừa ngày và đêm:


s¸ng sím
Vùng đệm


chuyển giữa
ngày và đêm:



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

- Xem vị trí tỉnh đak nơng, thị xã....
- Khởi động , thốt được chương trình
3. Thái độ :


- Thông qua phần mềm HS sẽ hiểu biết thêm về thiên nhiên, trái đất, từ đó
nâng cao ý thức bảo vệ môi trường sống.


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


- Gv: phòng máy, bài tập thực hành.
- Hs: kiến thức cũ, sgk.


<b>III/ Tiến trình dạy – học:</b>


<i><b>a. ổn định lớp:</b></i>
<i><b>b. Bài cũ:</b></i>
<i><b>c. Dạy bài mới</b></i>


Hoạt động GV Ho?t d?ng GV Hoạt động HS
Tại ranh giới phân chia ngày và


đêm, sẽ là thời điểm chuyển
giao giữa đêm-ngày (Mặt Trời
mọc) và ngày-đêm (Mặt Trời
lặn).


chúng ta thấy Mặt Trời chuyển
động từ Đông sang Tây. Trên
bản đồ, ta sẽ thấy các vùng tối


"chuyển động" theo hướng từ
phải sang trái.


Bây giờ em sẽ tìm hiểu kĩ hơn
một địa điểm, một thành phố
trên Trái Đất:


Khối đen trên bản đồ sẽ che
khuất hình ảnh các quốc gia và
thành phố. Để không thể hiện
các vùng tối-sáng này, hãy vào
bảng chọn Options  Maps và
huỷ chọn tại mục Show Sky
<b>Color. Khi đó bản đồ thế giới </b>
với các múi giờ sẽ có dạng sau:


Hs: thực hành.
Hs: Rút ra nhận xét.
Hs: lắng nghe.


Hs: thực hành.
Hs: Rút ra nhận xét.
Hs: lắng nghe.


4. Một số chức năng khác



<b>a) Hiện và khơng hiện hình ảnh </b>


<b>bầu trời theo thời gian</b>



Để hiển thị màu của bầu trời em cần


chọn lại Show Sky Color bằng lệnh
<b>Options  Maps. </b>


<b>b) Cố định vị trí và thời gian </b>


<b>quan sát</b>



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

Để thay đổi trạng thái thay đổi
thông tin này, em hãy thực hiện
lệnh Options  Maps và huỷ
chọn tại mục Hover Update. Khi
đó thơng tin thời gian chỉ thay
đổi nếu nháy chuột tại địa điểm
nào đó.


Một chức năng nữa của phần
mềm là cho phép tìm các địa
điểm khác nhau trên Trái Đất có
thơng tin thời gian trong ngày
giống nhau.


Ví dụ, có thể xem hơm nay có
những địa điểm nào trên thế
giới có cùng thời gian Mặt Trời
mọc như ở Hà Nội, Việt Nam.
Các bước thực hiện:


<b>1. Chọn vị trí ban đầu (Hà Nội).</b>
<b>2. Thực hiện lệnh Options </b>
<b> Anchor Time To</b> và chọn
mục Sunrise để tìm theo


thời gian Mặt Trời mọc
(hoặc Sunset - Mặt Trời
lặn).


Với phần mềm Sun Times em có
thể biết được các thời điểm xảy
ra nhật thực trong tương lai
cũng như quá khứ tại một địa
điểm trên Trái Đất.


Nháy nút Find (Future) để tìm
nhật thực trong tương lai hoặc
nút Find (Past) để tìm nhật thực
trong quá khứ. Em sẽ thấy thời
gian chuyển động (đến tương
lai hay quay lại quá khứ) và sẽ
dừng lại nếu tìm thấy nhật thực.
Trong ví dụ trên, ta thấy tại Hà


Hs: thực hành.
Hs: Rút ra nhận xét.
Hs: lắng nghe.


Hs: thực hành.
Hs: Rút ra nhận xét.
Hs: lắng nghe.


Hs: thực hành.
Hs: Rút ra nhận xét.
Hs: lắng nghe.



Hs: thực hành.
Hs: Rút ra nhận xét.
Hs: lắng nghe.


Hs: thực hành.
Hs: Rút ra nhận xét.
Hs: lắng nghe.


<i>Ngày 5 tháng 8 năm 2008, các địa điểm</i>
<i>trên đường liền này sẽ có thời gian Mặt Trời</i>
<i>mọc giống như tại Hà Nội, Việt Nam, vào lúc 5</i>


<i>giờ 31 phút 56 giây.</i>


<i>Ngày 4 tháng 11 năm 2008, các vị trí</i>
<i>trên đường liền này sẽ có thời gian Mặt Trời</i>
<i>mọc giống như tại Hà Nội, Việt Nam, vào lúc 6</i>


<i>giờ 0 phút 44 giây.</i>


<b>d) Tìm kiếm và quan sát nhật </b>


<b>thực trên Trái Đất</b>



Cách thực hiện như sau:


<b>1. Chọn địa điểm muốn tìm nhật thực.</b>
<b>2. Thực hiện lệnh View  Eclipse. </b>
Cửa sổ nhỏ sau đây xuất hiện.



Trong hình trên, tại Madrid thủ đô Tây
Ban Nha sẽ xảy ra nhật thực một phần
vào 9 giờ 30 phút 43 giây sáng ngày 4
tháng 6 năm 2011.


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

Nội sẽ xảy ra nhật thực một
phần vào 17 giờ 58 phút 17 giây
trong ngày 01 tháng 8 năm 2008.
<i>Cửa sổ Eclipse hiện rõ hình ảnh </i>
nhật thực quan sát được từ Hà
Nội.


Phần mềm có một chức năng
đặc biệt cho phép thời gian
chuyển động với vận tốc nhanh
hoặc chậm. Em có thể quan sát
sự chuyển động của ngày và
đêm tại các vùng khác nhau của
Trái Đất.


Hãy quan sát các nút lệnh sau
trên thanh công cụ:


Hs: thực hành.
Hs: Rút ra nhận xét.
Hs: lắng nghe.


<b>thời gian</b>



Để thời gian chuyển động hãy nháy


chuột vào nút . Muốn dừng hãy nháy
chuột vào nút .


<b>d. Củng cố: Cho 2 học sinh lên máy chủ thực hành các vấn đề đã học, cả lớp theo</b>


dõi nhận xét, giáo viên kết luận.


<b>e. Dặn dò: Về nhà xem lại lý thuyết tiết sau thực hành.</b>


<i><b>Ngày soạn :25/11/2008</b></i> <b>Tiết 27+28 - tuần 13,14 </b>


<i><b>Ngày dạy : 28/11/2008</b></i>


<b>THỰC HÀNH</b>



<b>TÌM HIỂU THỜI GIAN VỚI PHẦN MỀM SUN TIMES</b>



<b>I. MụcTiêu:</b>


1. Kiến thức


- HS hiểu được các chức năng chính của phần mềm, sử dụng phần mềm để
quan sát thời gian địa phương của các vị trí khác nhau trên trái đất.


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

- Xem vị trí tỉnh đak nơng, thị xã....
- Khởi động , thốt được chương trình
3. Thái độ :


- Thơng qua phần mềm HS sẽ hiểu biết thêm về thiên nhiên, trái đất, từ đó
nâng cao ý thức bảo vệ mơi trường sống.



<b>II. Chuẩn bị: Phịng máy có cài phần mềm suntimes, đèn chiếu….</b>
<b>III. Tiến trình dạy học:</b>


a. Ổn định(1') Giáo viên cho học sinh ổn định chỗ ngồi, phân nhóm
b.. Bài cũ(4').


- Nêu các bước khởi động và thốt chương trình Sun time
- Phóng to, thu nhỏ và quan sát một vị trí trên bản đồ.
c. Bài mới(75')


Hoạt động của GV và HS Nội dung
Giáo viên chia nhóm và yêu cầu:


- Khởi động và thóat khỏi phần mềm
- Yêu cầu các bước khởi động ( 2 cách


khởi động)(5 phút)


- Gọi 2 học sinh lên máy chủ thực hiện.


Yêu cầu học sinh tiến hành thực hành nội
dung 2:


- Phóng to quan sát một vùng bản đồ chi


tiết



<b> - Quan sát và nhận biết thời gian: ngày </b>


và đêm




<b>- Quan sát và xem thông tin thời gian chi </b>


tiết của một địa điểm cụ thể



1.Khởi động:


- Nháy đúp vào biểu tượng để khởi
động phần mềm.


2. Thoát:


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

- Quan sát vùng đệm giữa ngày và đêm


- Quan sát kĩ vùng này sẽ cho em nhiều thông tin
thú vị.


Tiếp tục cho học sinh thực hiện thao tác Đặt
thời gian quan sát


Bằng cách nháy chuột lên các nút lệnh thời gian
này em có thể đặt lại thời gian như Ngày, Tháng,
Năm, Giờ, Phút và Giây.


Giáo viên cho học sinh thực hành sau đó
gọi một số học sinh lên làm mẫu.


Ghi điểm những học sinh làm tốt.


Tiết 2:


Tiêp tục cho học sinh thực hành Một số chức
năng khác



<b>1. Hiện và khơng hiện hình </b>


<b>ảnh bầu trời theo thời gian</b>



Để hiển thị màu của bầu trời em cần chọn lại
<b>Show Sky Color bằng lệnh Options  Maps. </b>

<b>b) Cố định vị trí và thời gian quan sát</b>



<b>2. Tìm các địa điểm có thơng tin</b>


<b> thời gian trong ngày giống nhau</b>



<i>Ngày 5 tháng 8 năm 2008, các địa điểm trên đường</i>
<i>liền này sẽ có thời gian Mặt Trời mọc giống như tại Hà</i>


<i>Nội, Việt Nam, vào lúc 5 giờ 31 phút 56 giây.</i>


<i>Ngày 4 tháng 11 năm 2008, các vị trí trên đường</i>
<i>liền này sẽ có thời gian Mặt Trời mọc giống như tại Hà</i>


<i>Nội, Việt Nam, vào lúc 6 giờ 0 phút 44 giây.</i>


<b>3. Tìm kiếm và quan sát nhật thực </b>


<b>trên Trái Đất</b>



Trong hình trên, tại Madrid thủ đô Tây Ban Nha
sẽ xảy ra nhật thực một phần vào 9 giờ 30 phút
43 giây sáng ngày 4 tháng 6 năm 2011.


4. Quan sỏt sự chuyển động của thời

Cỏch thực hiện như sau:<b>1.</b> Chọn địa điểm muốn tỡm nhật thực.
Vuứng ủeọm chuyeồn

giửa ngày và đêm:


s¸ng sím
Vùng đệm


chuyển giữa
ngày và đêm:


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

gian



Để thời gian chuyển động hãy nháy chuột vào
nút . Muốn dừng hãy nháy chuột vào nút .


Giáo viên cho học sinh thực hành sau đó
gọi một số học sinh lên làm mẫu.


Ghi điểm những học sinh làm tốt.
Nhác nhở học sinh chưa nghiêm túc.


<b>2. </b>Thực hiện lệnh <b>View  Eclipse</b>.
Cửa sổ nhỏ sau đây xuất hiện.


d. Củng cố: (7')


- cho 3 học sinh lên làm mẫu cho cả lớp theo dõi và gọi học sinh nhận xét bổ sung.
e. Dặn dò:(2').


Học bài mới tiết sau học lý thuyết về câu lệnh điều kiện.


<i><b>Ngày soạn :10/12/2008</b></i> <b>Tiết 29 - tuần 15 </b>



<i><b>Ngày dạy : 15/12/2008</b></i>


<b>Bài 6 : CÂU LỆNH ĐIỀU KIỆN</b>



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


1. Kiến thức:


 Biết sự cần thiết của câu trúc rẽ nhánh trong lập trình .


 Biết cấu trúc rẽ nhánh được sử dụng để chỉ dẫn cho máy tính thực hiện các thao tác
phụ thuộc vào điều kiện.


 Hiểu cấu trúc rẽ nhánh có hai dạng : Dạng thiếu và dạng đủ.


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

 Hiểu cú pháp, hoạt động của các câu lệnh điều kiện dạng thiếu và dạng đủ trong
Pascal.


2. Kỹ năng:


 Bước đầu viết được câu lệnh điều kiện trong Pascal.
 Vẽ được một số sơ đồ của câu lệnh


3. Thái độ:


 Yêu thích khoa học bộ môn


<b>II. Chuẩn bị :</b>



<b>1. Gv : Giáo án, SGK và tranh vẽ hình 32.</b>


<b>2. Hs : Chuẩn bị bài cũ thật tốt, xem trước bài mới.</b>
<b>III. Tiến trình dạy học :</b>


<i><b>1. Ổn định lớp</b><b> : (1 phút)</b></i>


<i><b>2. Kiểm tra bài cũ </b><b> : (4 phút)</b></i>


Hảy mô tả thuật tốn tìm giá trị lớn nhất của hai số ?
 Bước 1 : Max:= a (hoặc Max:=b);


 Bước 2 : Nếu a < b thì gán Max = b và viết giá trị lớn nhất của hai số là Max.
<i><b>3. Dạy bài mới:</b></i>


<b>Hoạt động của giáo viên</b> <b>Hoạt động học<sub>sinh</sub></b> <b>Nội dung</b>


<i><b>Hoạt động 1: Hoạt động phụ thuộc</b></i>
<i>vào điều kiện. (8 phút) </i>


- Cho ví dụ về một hoạt động phụ thuộc
điều kiện ?


<i>- Nếu chiều nay trời không mưa, em sẽ</i>
đi chơi bóng.


<i>- Nếu em bị ốm, em sẽ nghỉ học . </i>


<i><b>+ Từ “ nếu” trong các câu trên được</b></i>
<i><b>dùng để chỉ một “điều kiện” và các hoạt</b></i>


động tiếp theo sau sẽ phụ thuộc vào
điều kiện đó .


- Em hãy nêu các điều kiện và các hoạt
động phụ thuộc điều kiện trong các ví
dụ trên ?


<i><b>Các điều kiện : chiều nay trời không</b></i>
<i>mưa, em bị ốm.</i>


<i><b>Các hoạt động phụ thuộc điều kiện :</b></i>
<i>em sẽ đi chơi bóng, em sẽ nghi học.</i>
- GV yêu cầu hs nêu một số ví dụ khác
để minh họa việc thực hiện một hoạt
động trong cuộc sống hằng ngày một
cách tuần tự theo thói quen hoặc theo kế
hoạch đã được xác định từ trước.


- GV cho HS nhận xét các ví dụ mà
các bạn vừa nêu.


<b>-Hs l</b>ắng nghe


<b>-Hs trả lời.</b>


<i><b>Các điều kiện :</b></i>
<i>chiều nay trời</i>
<i>không mưa, em bị</i>
<i>ốm.</i>



<i><b>Các hoạt động</b></i>
<i><b>phụ thuộc điều</b></i>
<i><b>kiện : em sẽ đi</b></i>
<i>chơi bóng, em sẽ</i>
<i>nghi học.</i>


- Một số hs cho ví
dụ.


- Một số hs nhận
xét


<i><b>1. Hoạt động phụ thuộc vào</b></i>


<i><b>điều kiện</b></i>
- SGK


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

<i><b>Hoạt động 2: Tính đúng sai của các</b></i>
<i>điều kiện. (12 phút)</i>


- GV : Mỗi điều kiện nói trên (trong
sách giáo khoa) được mô tả dưới dạng
một phát biểu. Hoạt động tiếp theo phụ
thuộc vào kết quả kiểm tra phát biểu đó
đúng hay sai.


Vậy kết quả kiểm tra là gì?
Ví dụ :


(GV treo bảng phụ hoặc trình chiếu)


- GV u cầu HS lấy thêm ví dụ khác.
<i>- GV : Khi kết quả kiểm tra là đúng, ta</i>
<i>nói điều kiện được thoả mãn, cịn khi</i>
<i>kết quả kiểm tra là sai, ta nói điều kiện</i>
<i>khơng thoả mãn. </i>


- GV nêu những ví dụ thường gặp trong
tin hoc (như sách giáo khoa).


- Hs lắng nghe và
trả lời.


- Hs ghi bài vào


-Hs nêu ví dụ


<i><b>2. Tính đúng sai của các điều</b></i>


<i><b>kiện</b></i>


- Khi đưa ra câu điều kiện, kết
quả kiểm tra là đúng, ta nói
điều kiện được thoả mãn, cịn
khi kết quả kiểm tra là sai, ta nói
điều kiện khơng thoả mãn.
<i><b>- </b></i>


<b>+Nếu nhấn phím Pause/Break,</b>
(thì) chương trình (sẽ bị) ngưng.



<i><b>Hoạt động 3: Điều kiện và phép so</b></i>
<i>sánh. (10 phút)</i>


- Các phép so sánh có vai trị rất quan
trọng trong việc mơ tả thuật tốn và lập
trình. Phép so sánh cho kết quả đúng có
nghĩa điều kiện được thoả mãn; ngược
lại điều kiện không thoả mãn.


<i><b>- Cho ví dụ : </b></i>


<i><b>Vd 1: Nếu a > b, phép so sánh đúng thì</b></i>
<b>in giá trị của a ra màn hình; ngược lại in</b>
<b>giá trị của b ra màn hình.</b>


<i>- GV : Để so sánh hai giá trị số hoặc</i>
<i>hai biểu thức có giá trị số, chúng ta đã</i>
<i>sử dụng các kí hiệu tốn học nào? </i>
<i>- Các phép so sánh có kết quả như thế</i>
<i>nào?.</i>


<i><b>Quan sát SGK</b></i>


+ Các phép so
sánh có kết quả
đúng hoặc sai.


<i><b>3. Điều kiện và phép so sánh</b></i>


<b> </b>



Để so sánh hai giá trị số hoặc
hai biểu thức có giá trị số, chúng
ta đã sử dụng các kí hiệu tốn
học như: =, ≠, <, ≤, > và ≥. Các
phép so sánh có kết quả đúng
hoặc sai.


<b>4. </b><i><b>Củng cố: (4 phút)</b></i>


<i>Cho HS làm bài tập 1 trang 50 .</i>


<i><b>5. Dặn dò: (1 phút)</b></i>


* Làm các bài tập 2, 3 trang 50, 51.


<i><b>Ngày soạn :10/12/2008</b></i> <b>Tiết 30 - tuần 15 </b>


<i><b>Ngày dạy : 15/12/2008</b></i>


<b>CÂU LỆNH ĐIỀU KIỆN </b>

(TT)



<b>I. MỤC TIÊU:</b>


1. Kiến thức : Hiểu cấu trúc rẽ nhánh gồm 2 dạng : thiếu và đủ; biết mọi ngơn
ngữ lập trình đều có câu lệnh để thể hiện cấu trúc rẽ nhánh; hiểu cú pháp hoạt động
của các câu lệnh điều kiện dạng thiếu và đủ trong Pascal.


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

3. Thái độ: Nghiêm túc, hứng thú với môn học.



<b>II. CHUẨN BỊ: </b>


1. Chuẩn bị của giáo viên:


- Đồ dùng dạy học, sách giáo khoa,, giáo án, máy chiếu
2. Chuẩn bị của học sinh:


- Đồ dùng học tập, sách giáo khoa.


<b>III. HOẠT ĐỘNG DẠY HỌC:</b>


1. Ổn định tình hình lớp (1’)


- Kiểm tra sỉ số, nề nếp lớp học
2. Kiểm tra bài cũ (3’)


Câu hỏi : 1.Giải bài tập 2 (SGK/50)
Dự kiến HS trả lời: a,b,c: đúng; d: sai
3. Giảng bài mới:


<b>Hoạt Động của Giáo Viên</b> <b>Hoạt động của Học sinh</b> <b>Nội Dung</b>


HĐ1. Tìm hiểu về cấu
trúc rẽ nhánh. (18 phút)
Yêu cầu HS đọc
vd2/SGK/ Tr48.


? Hãy mơ tả HĐ tính tiền
cho khách bằng cách liệt
kê từng bước?



GV nhận xét và viết lại
các bước trên bảng.
GV: Cách thể hiện hđ
phụ thuộc điều kiện như
trên gọi là cấu trúc rẽ
nhánh dạng thiếu.


GV dùng bảng phụ có
sơ đồ cấu trúc rẽ nhánh
dạng thiếu.


GV giải thích sơ đồ.
-? Liên hệ thực tế, hãy
lấy ví dụ để minh hoạ sơ
đồ trên.


- Hãy nêu sự khác nhau
của 2 ví dụ


- GV nhận xét, bổ sung
(nếu cần)


GV: Cách thể hiện hđ
phụ thuộc điều kiện như
trên gọi là cấu trúc rẽ
nhánh dạng đủ.


GV dùng bảng phụ có
sơ đồ cấu trúc rẽ nhánh


dạng đủ.


- Yêu cầu HS giải thích
sơ đồ.


HS: Đọc vd 2 theo yêu
cầu GV.


HS: Mô tả các bước.
Tất cả HS còn lại theo
dõi, nhận xét.


HS: Nếu bị đau: (đ kiện)
- Đúng: Nghỉ học.


- Sai:…” bỏ qua.”


HS đọc VD3


HS: Ở vd3, có thêm điều
kiện: Tổng số tiền không
đến 100.000 đ (nghĩa là
nhỏ hơn 100.000 đ)
Theo dõi


<b>4. Cấu trúc rẽ nhánh.</b>


a) Cấu trúc rẽ nhánh dạng
thiếu:



VD2: SGK


Mô tả hoạt động tính tiền cho
khách hàng:


B1: Tính tổng số tiền T khách
hàng đã mua sách.


B2: Nếu T>= 100.000, số tiền
phải thanh toán là: (100%-30%)
* T.


B3: In hoá đơn.


<i><b>b. Cấu </b></i>
trúc rẽ
nhánh
dạng đủ
VD3:
SGK
Mơ tả
hoạt
động
tính tiền
cho khách hàng:


B1: Tính tổng số tiền T khách
hàng đã mua sách.


B2: Nếu T>= 100.000, số tiền


phải thanh toán là: (100%-30%)
* T


Ngược lại : số tiền phải thanh
tốn là (100%-10%)*T


<i>ĐKiện </i>
<i>?</i>


<b>Câu lệnh</b>


S


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

- Nhận xét, bổ sung
- u cầu HS tìm thêm
ví dụ (về nhà làm)


- Mọi NNLT đều có các
câu lệnh để thực hiện
các cấu trúc rẽ nhánh
dạng thiếu và đủ, để
hiểu rõ hơn về vấn đề
này chúng ta cùng tìm
hiểu phần tiếp theo .


Quan sát sơ đồ
HS giải thích,
HS khác bổ sung


B3: In hố đơn.



HĐ2. Tìm hiểu câu lệnh
điều kiện. (17 phút)
Trong các NNLT, cấu
trúc rẽ nhánh được thể
hiện bằng câu lệnh điều
kiện


- - Yêu cầu HS nêu và
theo dõi các ví dụ trong
SGK.


+ Nêu yêu cầu VD4:
Hãy thử viết câu lệnh
thực hiện


+ VD5: ? các hoạt động
của chương trình có thể
biểu diễn thành mấy
bước


+ Yêu cầu HS nêu các
bước thực hiện


+ Nhận xét


+ Đưa ra mẫu câu lệnh
tổng quát


GV Kết luận



HS giải thích : khi gặp
câu lệnh điều kiện này,
chương trình sẽ kiểm tra
điều kiện. Nếu điều kiện
được thoả mãn chương
trình sẽ thực hiện câu
lệnh sau từ khố Then,
ngược lại thì bỏ qua.
HS:


Nếu a > b thì ghi ra màn
hình giá trị của a.


If a > b then write(a) ;
+ Nêu 2 bước hoạt động
+ Trả lời ….


+ Trả lời
+ Trả lời


<b>5. Câu lệnh điều kiện </b>


a. Câu lệnh điều kiện dạng
thiếu


- Cú pháp :


If <điều kiện> then <câu lệnh >;
- Ví dụ 4:



b. Câu lệnh điều kiện dạng đủ
Ví Dụ 6: SGK


Cú pháp :


If <điều kiện> then <câu lệnh 1>
Else


<câu lệnh 2>;


<b>4. Củng Cố(4')</b>


? Viết lại cú pháp câu lệnh dạng thiếu và dạng đủ ? Trả lời các câu hỏi 5+ 6 SGK
<b>5. Dặn dò: (2’) - Chuẩn bị tiết học sau: Bài Thực hành 4.</b>


<i><b>Ngày soạn :10/12/2008</b></i>

<b>Tiết 31+32 - tuần 16 </b>


<i><b>Ngày dạy : 15/12/2008</b></i>



THỰC HÀNH



<b>I. Mơc tiªu.</b>


- Học sinh nắm cấu trúc lệnh if. Biết sữ dụng lệnh if giải quyết một số bài toán
- Phân biệt đợc đợc các dạng cấu trúc của lệnh if và sử dụng thành thạo các cấu trúc
- HS thấy đợc sự cần thiết của lệnh if. Và cách thực hiện lnh if trong Pascal


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

<b>II. Chuẩn bị.</b>



- Đèn chiÕu, giÊy trong, thíc , phÊn mµu


<b>III. Tiến trình dạy - học.</b>
<b>1. ổn định.</b>


<b>2. Bµi cđ. (5 ph) </b>


?1 ViÕt chơng trình nhập vào từ bàn phím một số là chiều dài hình vuông. Tính chu vi và diện
tích hình vuông nếu cạnh dơng và ngợc lại thông báo : Sai d÷ liƯu.


<b>3. Néi dung TH</b>


+ Khởi động Turbo Pascal


+ Soạn thảo chơng trình VD SGK
+ Dịch lỗi chơng trình


+ Chạy và thử chơng trình
+ Kiểm tra thuật toán


<b>4. Bài mới.</b>


<i><b>HĐ 1. Soạn thảo chơng trình.</b></i>


<b>HĐ GV</b> <b>HĐ HS</b> <b>Ghi bảng</b>


! GV nêu nội dung y/c
buổi thực hành


! Gi hs đọc bài toán


! HD học sinh khởi động
máy tính và soạn thảo văn
bản theo y/c SGk


? §Ĩ dịch chơng trình ta
thực hiện thao tác?


! GVHD cách dịch chơng
trình


! GV dịch và sữa cáclỗi
sai trong chơng trình cho
hs thấy


! Sau khi sữa và hoàn
chỉnh chơng trình


Y/c hs nêu cách thực hiện
các thao tác quản lý tệp.
! GV thực hiện chạy
ch-ơng trình


! GVHD cách nhập dữ
liệu vào choa,b,c


! GV nhp vo 2 số bất kỳ
và nhấn Enter để thi hành
! Giải thích các dịng ký
tự trên màn hình.



! GV kiĨm tra kÕt qu¶


- HS nghe và
tiếp thu
- HS đọc bài
toán và xác định
y/c bài


- HS khởi động
và soạn thảo
ch-ơng trình vào
máy tính


HS tr¶ lời
HS theo dõi
cách làm HS
theo dõi chú các
thao tác khi sữa
chơng trình.
HS nêu các thao
tác quản lý tệp:
+ Lu tệp


+ HS chạy
ch-ơng trình và thử
ct


HS ghi nhí


Program VD;


Var a, S, C : real;
Begin


Write(‘Hay nhap vao mot so: ’);
Readln(a);


If a > 0 then
Begin
S:= a*a;


Writeln(‘Dien tich la : ’, S:8:2);
C:= 4*a;


Writeln(‘Chu vi la : ’, C:8:2);
End


Else Write(‘Du lieu sai’);
Readln;


End.


<i><b>Bài tập:</b></i>



Bài 1: Viết chương trình nhập vào 2 số


nguyên a, b. Tính a+b và xuất kết quả


ra màn hình.



Bài 2: Viết chương trình nhập vào 2 số


nguyên a, b. Tính a+b, a-b, a*b và xuất kết


quả ra màn hình.




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

bằng tay để so sánh.
Giỏo viờn cho học sinh
làm bài tập


<b>Bài giải</b>


Program bai1;
Var a,b:integer;
Begin


write(‘ nhap a=’);readln(a);
write(‘ nhap b=’);readln(b);
write(‘ Tong


la’);writeln(a+b);
Readln;


end.


nguyên a, b. Tính a

2

<sub> và xuất kết quả ra </sub>


màn hình.



Bài 4: Viết chương trình nhập vào 2 số


nguyên a, b. Tính a

2

<sub> + b</sub>

2

<sub> và xuất kết quả </sub>


ra màn hình.



Bài giải tham khảo
Program bai2;


Var a,b:integer;


Begin


write(‘ nhap a=’);readln(a);
write(‘ nhap b=’);readln(b);
write(‘ Tong la’);writeln(a+b);
write(‘ Hieu la’);writeln(a-b);
Readln;


5. Nhận xét đánh giá
+ Những cái đạt đợc:


+ Những cái cha đạt đợc:
+ Những vấn đề cần khắc phc:


<b>6. Hớng dẫn vè nhà.</b>


- Học và nắm cấu trúc lÖnh if


- Rèn luyện kỷ năng thực hành và vận dụng lệnh if để giải các bài toán
- Bài tập:


<i><b>Ngày soạn :20/12/2008</b></i>

<b>Tiết 33 - tuần 17</b>


<i><b>Ngày dạy : 21/12/2008</b></i>



<b>KIỂM TRA THỰC HÀNH</b>



<b>I. MỤC TIÊU</b>


*Củng cố lại kiến thức đã học



* Ôn tập lại các kỹ năng soạn thảo chương trình bằng Pascal
* Rèn luyện khả năng tư duy logic


* Giáo dục tính cẩn thận khéo léo


<b> II. HÌNH THỨC KIỂM TRA </b>
Viết trên giấy


<b>III. NộI DUNG Đề:</b>


<b>ĐỀ THI THỰC HÀNH </b>
<b>MƠN TIN HỌC 8</b>


Đề: Viết chương trình nhập vào 2 số nguyên a, b. Xuất tất cả các ước chung của a và b.
VD: Nhập a=12, b=18.


Xuất: 1 2 3


* Lưu ý Học sinh lưu bài với tên và kết hợp với lớp của mình.


VD: học sinh là trần Quốc Cường lớp 8A1 thì lưu với tên là: D:\cuong8a1.pas


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

<i><b>Ngày soạn :20/12/2008</b></i>

<b>Tiết 34-35 - tuần 17,18</b>

<i><b>Ngày dạy : 21/12/2008</b></i>



ÔN TẬP



I. MụC TIÊU:




*Giúp học sinh hệ thống lại kiến thức về lập trình Pascal.



*Hiểu rỏ hơn về cách viết chương trình cú sử dụng thuật toỏn Max - Min.
*Hiểu rỏ hơn về cỏch chạy chương trình cú sử dụng thuật tốn ìf then
*Sửa một số lỗi thường gặp.


II. CHUẨN BỊ


GV:*Chẩn bị phịng máy, bài tập,.
HS:


*Ơn lại lý thuyết đã học.


* Giải trước bài tập về nhà vào tập để thực hành.
III. TIẾN TRÌNH ƠN TẬP.


Bài 1: Viết chương trình nhập vào 2 số nguyờn a, b. Xuất số lớn nhất ra màng hình..
Bài giải: Program bai1;


Var a, b:integer;
Begin


Write(‘ nhap vao so nguyen a = ‘); Readln(a);
Write(‘ nhap vao so nguyen b = ‘); Readln(b);
Max:=a;


If b> max then Max:=b;


Write(‘ so lan nhat la ‘,max); Readln;
End.



Bài 2: Viết chương trỡnh nhập vào 4 số nguyờn a,b, c, d. Xuất số lớn nhất, nhỏ nhất ra màn
hỡnh.


Bài giải: rogram bai2;
Var a, b, c, d:integer;


Begin Write(‘ nhap vao so nguyen a = ‘); Readln(a);
Write(‘ nhap vao so nguyen b = ‘); Readln(b);
Write(‘ nhap vao so nguyen c = ‘); Readln(c);
Write(‘ nhap vao so nguyen d = ‘); Readln(d);
Max:=a; If b> max then Max:=b;


If c> max then Max:=c;
If d> max then Max:=d;
Write(‘ so lon nhat la ‘,max);
Min:=a; If b< Min then Min:=b;
If c< Min then Min:=c;


If d< Min then Min:=d;


Write(‘ so nho nhat la ‘,Min); Readln;End.


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

Bài 3: Viết chương trình nhập vào điểm văn, tốn, lý , tin. Tính trung bình các mơn. Nếu
trung bình >=8 xếp loại giỏi, nếu trung bình>=6 và <8 xếp loại khà, ngược lại xếp ttrung
bình.


**************************


<i><b>Ngày soạn :25/12/2008</b></i>

<b>Tiết 36 - tuần 17,18</b>


<i><b>Ngày dạy : 227/12/2008</b></i>



KIỂM TRA HỌC KỲ I



I. Mục tiêu:


- Giúp học sinh hệ thống lại nội dung kiến thức đã học trong chương trình
Pascal.


- Rèn luyện kỹ năng suy luận logic trong khi lài bài.
- HS khắc sâu kiến thức đã học.


- Ôn lại kiến thức làm bài tốn lập trình.
II. Chuẩn bị:


GV: Đề, phịng máy, phiếu bài làm
HS: Ôn lại kiến thức đã học


III. Hệ thống câu hỏi:


<b>ĐỀ 1:</b>


<b>I.</b>

<b>TRẮC NGHIỆM: (5 điểm): </b>



<b>Hãy khoanh tròn chữ cái đứng trước câu trả lời đúng: </b>



<b>Câu 1: Trong các từ sau, từ nào không phải là từ khoá?</b>


<b>A. </b>Ct_dau_tien <b>B. </b>End <b>C. </b>Begin <b>D. </b>Program
<b>Câu 2: Từ khóa nào sau đây dùng để khai báo hằng?</b>



<b>A. </b>Uses <b>B. </b>Var <b>C. </b>Const <b>D. </b>Program
<b>Câu 3: Ngôn ngữ lập trình là:</b>


<b>A. </b>chương trình máy tính. <b>B. </b>một thuật tốn.


<b>C. </b>mơi trường lập trình. <b>D. </b>ngôn ngữ dùng để viết các ngôn ngữ máy tính.
<b>Câu 4: Khi ta khai báo biến x có kiểu là integer thì phép gán nào sau đây là hợp lệ?</b>


<b>A. </b>x:= 5000000; <b>B. </b>x:= ‘tin_hoc’; <b>C. </b>x:= 200; <b>D. </b>x:= 1.23;
<b>Câu 5: Caáu trúc chung của chương trình gồm mấy phần?</b>


<b>A. </b>2 phần <b>B. </b>1 phần <b>C. </b>4 phần <b>D. </b>3 phần
<b>Câu 6: Để khai báo biến x thuộc kiểu số thực ta khai báo:</b>


<b>A. </b>Var x: String; <b>B. </b>Var x: integer;<b>C. </b>Var x: Char; <b>D. </b>Var x: Real;


<b>Câu 7: Hãy cho biết kết quả xuất ra màn hình sau khi thực hiện câu lệnh </b>
Writeln(‘16*2-3=’,16*2-3);


<b>A. </b>16*2-3= <b>B. </b>16*2-3=29 <b>C. </b>29 <b>D. </b>16*2-3
<b>Câu 8: Câu lệnh cho phép ta nhập giá trị của a từ bàn phím là:</b>


<b>A. </b>Writeln(a); <b>B. </b>readln(a);


<b>C. </b>Write(‘nhap gia tri cua a:’); <b>D. </b>Write(a);
<b>Câu 9: Sau 2 câu lệnh x:=5; x:=x*x; Giá trị của biến x là:</b>


<b>A. </b>5 <b>B. </b>10 <b>C. </b>15 <b>D. </b>25



<b>Câu 10: Để gán giá trị 12 cho biến x ta dùng lệnh:</b>


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

<b>II. TỰ LUẬN( 5ĐIỂM)</b>


1. Viết chương trình nhập vào số x và in ra x2 <sub> (2.5đ)</sub>


2. Viết chương trình nhập vào số a . Nếu a>= 10 in ra a3 <sub>ngược lại in ra a. (2.5đ)</sub>

<b>ĐỀ 2:</b>



<b>II.</b>

<b>TRẮC NGHIỆM: (5 điểm): </b>



<b>Hãy khoanh tròn chữ cái đứng trước câu trả lời đúng: </b>



<b>Câu 1: Để gán giá trị 12 cho biến x ta dùng lệnh:</b>


<b>A. </b>x:12; <b>B. </b>x:= 12; <b>C. </b>x = 12; <b>D. </b>x =: 12;
<b>Câu 2: Để khai báo biến x thuộc kiểu số thực ta khai báo:</b>


<b>A. </b>Var x: Real; <b>B. </b>Var x: String; <b>C. </b>Var x: integer; <b>D. </b>Var x: Char;
<b>Câu 3: Câu lệnh cho phép ta nhập giá trị của a từ bàn phím là:</b>


<b>A. </b>Write(a); <b>B. </b>readln(a);<b>C. </b>Writeln(a); <b>D. </b>Write(‘nhap gia tri cua a:’);
<b>Câu 4: Biểu thức toán học </b> 2


6
4


5
12








được viết dưới dạng biểu thức trong Pascal là:


<b>A. </b>12-5/4+6-2 <b>B. </b>(12-5)/(4+6)-2<b>C. </b>(12-5-2)/(4+6)<b>D. </b>(12-5)/(4+6-2)


<b>Câu 5: Hãy cho biết kết quả xuất ra màn hình sau khi thực hiện câu lệnh </b>
Writeln(‘16*2-3=’,16*2-3);


<b>A. </b>16*2-3=29 <b>B. </b>16*2-3= <b>C. </b>29 <b>D. </b>16*2-3
<b>Câu 6: Sau 2 câu lệnh x:=5; x:=x*x; Giá trị của biến x là:</b>


<b>A. </b>15 <b>B. </b>10 <b>C. </b>25 <b>D. </b>5


<b>Câu 7: Khi ta khai báo biến x có kiểu là integer thì phép gán nào sau đây là hợp lệ?</b>


<b>A. </b>x:= 5000000; <b>B. </b>x:= 1.23; <b>C. </b>x:= 200; <b>D. </b>x:= ‘tin_hoc’;
<b>Câu 8: Cấu trúc chung của chương trình gồm mấy phaàn?</b>


<b>A. </b>2 phần <b>B. </b>4 phần <b>C. </b>3 phần <b>D. </b>1 phần
<b>Câu 9: Ngôn ngữ lập trình là:</b>


<b>A. </b>một thuật tốn. <b>B. </b>ngơn ngữ dùng để viết các ngơn ngữ máy tính.


<b>C. </b>mơi trường lập trình. <b>D. </b>chương trình máy tính.
<b>Câu 10: Trong các từ sau, từ nào không phải là từ khoá?</b>



<b>A. </b>End <b>B. </b>Begin <b>C. </b>Program <b>D. </b>Ct_dau_tien


<b>II. TỰ LUẬN( 5ĐIỂM)</b>


3. Viết chương trình nhập vào số x và in ra x2 <sub> (2.5đ)</sub>


4. Viết chương trình nhập vào số a . Nếu a>0 in ra a4 <sub>ngược lại xuất thông báo bạn nhập </sub>
sai. (2.5đ)


Đáp án:


<b>ĐỀ 1:</b>



<b>1. A.</b> <b>2. C.</b> <b>3. A.</b> <b>4. C.</b> <b>5. B.</b> <b>6. D.</b> <b>7. B.</b> <b>8. B.</b> <b>9. </b>


<b>D.</b> <b>10. D.</b>


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

<b>1. B.</b> <b>2. A.</b> <b>3. B.</b> <b>4. B.</b> <b>5. A.</b> <b>6. C.</b> <b>7. C.</b> <b>8. D.</b> <b>9. </b>


<b>D.</b> <b>10. D.</b>


<i><b>Ngày soạn :25/12/2008</b></i>

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

<b>ết 37- tuần 17,18</b>


<i><b>Ngày dạy : 27/12/2008</b></i>



<b>Bµi 7: </b>

<b>Câu lệnh lặp</b>



<b>I/ Mục tiêu:</b>
<i>1. Kiến thức: </i>



- Biết nhu cầu cần có câu lệnh lặp trong ngôn ngữ lập tr×nh.


- Biết ngơn ngữ lập trình dùng cấu trúc lặp để chỉ dẫn máy tính thực hiện lặp đi lặp lại cơng việc nào
đó một số lần.


- Hiểu hoạt động của câu lệnh lặp với số lần biết trớc for …trong pascal.
<i>2. Kỹ năng: Viết đúng đợc lệnh for….rong một số tình huống đơn giản.</i>


<i>3.Thái độ: Thái độ học tập nghiêm túc, tích cực làm các dạng bài tập ng dng.</i>
<b>II/ Chun b:</b>


- Sách giáo khoa, giáo án, tài liệu tin học có liên quan.
- Đọc tài liệu ở nhà trớc khi


<b>III. Tiến trình lên lớp:</b>
<b>1. Tổ chức.</b>


<b>2. KiĨm tra .</b>


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


- ? Trình bày cấu trúc của câu lệnh rẽ nhánh trong pascal, nêu ý nghĩa hoạt động của câu lệnh?
- ? Mơ tả thuật thốn tính tổng của 100 số tự nhiên đầu tiên?


<b>3. Bµi míi :(35’)</b>


<b>Hoạt động của giáo viên Và HS</b> <b>Nôị dung</b>


Hoạt động 1: Các công việc phải thực hiện nhiều lần (5’)
?Hàng ngày chúng ta thng phi lm mt s vic



lặp đi lặp lại một số lần, em hÃy lấy ví dụ về một
số việc hàng ngày em phải làm


- HS: một em lÊy mét sè vÝ dơ


- GV: Ghi ví dụ của học sinh lên bảng
- HS: một em khác lấy thêm một số ví dụ
? Qua những ví dụ các bạn vừa lấy ra trên bảng
thì những cơng việc nào chúng ta đã biết trớc số
lần lặp đi lặp lại và công việc nào chúng ta cha
biết số lần lặp lại của nó?


- HS: Tách ví dụ thành hai loại (một loại đã biết
trớc số lần lặp và một loại cha biêt số lần lặp )
- GV: Nhận xét và chốt lại.


<b>1. Các công việc phải thực hiền nhiều lần</b>
- Công việc không biết trớc số lần lặp lại: học bài
cho đến khi thuộc hết các bài,


- Công việc đã biết trớc số lần lặp: đi học mỗi
sáng 5 tiết, mỗi ngày tập 7 bài thể dục buổi sáng,
đánh răng mỗi ngày 3 lần,


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



VD1: §Ĩ tính 5 số tự nhiên đầu tiên ta có thể viÕt
nh sau:


begin


I=0; Tong:=0;


I:=i+1; Tong:=Tong+i;
I:=i+1; Tong:=Tong+i;
I:=i+1; Tong:=Tong+i;
I:=i+1; Tong:=Tong+i;
I:=i+1; Tong:=Tong+i;
Readln; end.


Hoạt động 2: Câu lện lặp - một lệnh thay cho nhiều lệnh (15)
-HS: nghiên cứu ví dụ 1 SGK - 56,57.


- GV: ph©n tÝch vÝ dơ 1.
- HS: Nghe, nghi chÐp


- HS: Mơ tả lại thuật tốn, phân tích thuật tốn.
? Qua hai ví dụ trên, các em hãy chỉ ra những
công việc đợc lặp đi lặp lại?


-HS: ChØ ra công việc lặp lại ở vd1 và vd2
- GV: Kết luận.


<b>2. Câu lện lặp - một lệnh thay cho nhiều lệnh</b>
VD1: Vẽ 3 hình vuông giống nhau.



- thuật toán (SGK T56,57)


VD2: Tính tổng của 100 số tự nhiên đầu tiên.
- thuật toán: (đã nghiên cứu ở bài học số 5)
=> Kết luận: - Cáng mô tả các hoạt động lặp
trong thuật tốn nh trong 2 ví dụ trên đợc gọi là
cấu trúc lặp.


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

Hoạt động 3: Ví dụ về câu lệnh lặp (15)
- GV: Trình bày cấu trúc vịng lặp For
……..to……..do


…………..


- HS: Ghi cÊu tróc vòng lặp vào vở.


GV: Giải thích từng thành phần trong cÊu tróc
lƯnh.


-HS: Nghe, ghi chÐp.


GV: vËn dơng c©u lƯnh viết vòng lặp cho ví dụ 1
phần 1


Var i, tong: integer;
Begin


Tong:=0;



For i: = 1 to 5 do
Tong:= tong + i;
Write(tong=,tong);
Readln;


End.


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


- Trong pascal câu lệnh lặp có dạng:
+Câu lệnh lặp dạng tiến:


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


Trong đó: <b>for, to, do</b> là các từ khố, <b>Biếnđếm</b> là
biến đơn có kiểu ngun (có thể là kiểu kí tự
hoặc kiểu đoạn con)


<b>Giá trị đầu, giá trị cuối</b> là số cụ thể hoặc là biểu
thức có kiểu cùng kiểu với biến đếm, giá trị cuối
phải lớn hơn giá trị đầu.


<b>Câu lệnh </b>có thể là câu lệnh đơn hoặc câu lệnh
kép.


- Câu lệnh sẽ đợc thực hiện nhiều lần, mỗi lần
thực hiện câu lệnh là một lần lặp và sau mỗi lần
lặp biến đếm sẽ tự động tăng lên 1 đơn vị, tăng
cho đến khi giá trị của biến đếm lớn hơn giá trị


cuối thì vịng lặp đợc dừng lại.


<b>4. Cđng cè: (2) Giáo viên hệ thống lại toàn bộ nội dung bµi häc</b>
<b>5. H íng dÉn häc ë nhµ</b>


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


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


<b></b>


<i><b>---o0o---Ngày soạn :25/12/2008</b></i>

<b>Tiết 38- tun 19</b>


<i><b>Ngy dy : 27/12/2008</b></i>



<b>Bài 7: </b>

<b>Câu lệnh lặp( tiếp)</b>



<b>I/ Mục tiêu:</b>
<i>1. Kiến thức:</i>


- Hiểu cấu trúc câu lệnh ghép.


<i>2. Kỹ năng: biết kết hợp câu lệnh ghép và câu lệnh lặp for do vào giải quyết một số </i>
bài toán.


<i>3. Thỏi Thỏi hc tp nghiờm tỳc, tích cực làm các dạng bài tập ứng dụng.</i>


<b>II/ Chuẩn b: </b>


- Sách giáo khoa, giáo án, tài liệu tin học có liên quan.
- Đọc tài liệu ở nhà trớc khi


<b>III. Tiến trình lên lớp:</b>
<b>1. Tổ chức.</b>


<b>2. Kiểm tra .</b>


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


- <b>? Trình bày cầu trúc của câu lệnh lặp trong pascal, nêu ý nghĩa của các thành phần trong cấu</b>
trúc?


<b>3. Bµi míi : (35’)</b>


<b>Hoạt động của giáo viên Và HS</b> <b>Nơị dung</b>


Hoạt động 1: Ví dụ về câu lệnh lặp. (15’)
-GV: Trình bày cấu trúc của câu lệnh lặp lùi trong


pascal


For ..downto.do


<b>3. Ví dụ về câu lệnh lặp (tiếp)</b>
- Cấu trúc của câu lệnh lặp lùi:


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

HS: Ghi chÐp cÊu tróc vµo vë



GV: Giải thích hoạt động của câu lện.
- HS: Đọc và tìm hiểu chơng trình


- HS: một em đứng tại chỗ phân tích hoạt động
của ví dụ.


- HS: Các em khác thảo luận và cho ý kiến.
- GV: cho chạy chơng trình mẫu đã gõ trớc trong
máy, yêu cầu học sinh quan sát kết qu.


- GV: Giải thích kết quả của chơng trình


- HS: Đọc và tìm hiểu chơng trình


- HS: mt em ng tại chỗ phân tích hoạt động
của ví dụ.


- HS: Các em khác thảo luận và cho ý kiến.
- GV: Trình bày cấu trúc câu lệnh ghép
- HS: Nghe, ghi chÐp.


- GV: cho chạy chơng trình mẫu đã gõ trớc trong
máy, yêu cầu học sinh quan sát kết quả.


- GV: Giải thích kết quả của chơng trình


- Cõu lnh sẽ đợc thực hiện nhiều lần, mỗi lần
thực hiện câu lệnh là một lần lặp và sau mỗi lần
lặp biến đếm sẽ tự động giảm đi1 đơn vị, giảm


cho đến khi giá trị của biến đếm nhỏ hơn giá trị
đầu thì vịng lặp đợc dừng lại.


-sè lần lặp = giá trị cuối-giá trị đầu+1


=> for do là cấu trúc lặp với số lần lặp biết
tr-ớc.


- Ví dụ 3 (SGK-58) in ra màn hình thứ tự lần lặp.
Program lap;


Var i: integer;
Begin


For i:=1 to 10 do


Writeln(day la lan lap thu, i);
Readln;


End.


- VD4 (SGK-58) Viết chơng trình đa ra màn hình
những chữ 0 theo hình trứng rơi.


Program trung_roi;
Uses crt;


Var i: integer;
Begin



Clrscr;


For i:=1 to 10 do
begin


Writeln(‘0’); delay(100);
end;


Readln;
End.


- Tập hợp các câu lệnh con đợc đặt trong cặp từ
khoá begin end; đợc gọi là câu lệnh ghép.
Hoạt động 2: Tính tổng và tích bằng câu lệnh lặp (20)


- GV: Đa đề bài lên bảng


- HS: 1 em lên bảng làm vd5, 1 em lên làm vd6.
(mô tả thuật toán) (5)


ở dới lớp cá cem làm bài theo nhóm, mỗi dÃy làm
một bài, dÃy giữa làm vd5


- HS: Đại diện của mỗi dÃy nhận xét thuật toán
trên bảng.


-GV: Giỳp HS sa li ỳng thut toỏn


-HS: 2 em lên bảng viết chơng trình cho 2 bài.
(5’)



- HS: ở dới hoạt động theo nhóm, chia dãy nh ban
đầu.


- HS: đại diện mỗi dãy nhận xét bài viết trên
bảng.


GV: Giúp học sinh sửa chơng trình cho đúng và
chạy chơng trình trên máy.


- HS: Quan s¸t kết quả.


<b>4. Tính tổng và tích bằng câu lệnh lặp</b>
Ví dụ 5. Tính tổng của N số tự nhiên đầu tiên.
(Chơng trình SGK)


Ví dụ 6. Tính day tha của N số tự nhiên đầu tiên.
(Chơng trình SGK)


<b>4. Củng cố:</b>


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


- <b>HS đọc ghi nhớ SGK, giáo viên tổng kết đánh giá buổi học.</b>
<b>5. H ớng dẫn về nhà:</b>


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


- <b>Về nhà làm bài tập trang 60-61.</b>


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


<b></b>


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

<i><b>Ngy dy : 02/01/2009</b></i>


Bài tập



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


<i>1. Kiến thức Củng cố kiến thức vòng lặp với số lần biết trớc và câu lệnh ghép</i>


<i>2. K nng: Vn dng vòng lặp for …….to…….do và câu lệnh ghép viết một số bài </i>
toán đơn giản.


<i>3. Thái độ Thái độ học tập nghiêm túc, tích cực làm các dạng bài tập ng dng.</i>


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


- Sách giáo khoa, giáo án, tài liệu tin học có liên quan.
- Đọc tài liệu ở nhà trớc khi


<b>III. Tiến trình lên lớp:</b>
<b>1. Tổ chøc.</b>


<b>2. KiĨm tra .</b>


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



- ? Sử dụng vòng lặp for do viết chơng trình tính tổng của 10 số tự nhiên đầu tiên?
<b>3. Bài mới</b>:


<b>Hot ng ca giỏo viờn V HS</b> <b>Nơị dung</b>


Hoạt động 1: Bài tập dạng lí thuyết. (10’)
GV: Đa ra đề bài toán, yêu cầu học sinh nghiên


cøu theo nhãm.


-HS: Hoạt động theo nhóm tìm câu trả lời.
- HS: Đại diện của hai nhóm trình bày kết quả
của nhóm.


-GV: NhËn xÐt kÕt qu¶ ci cïng.


- GV: Đa bài tập 2 lên bảng, yêu cầu một học
sinh đứng tại chỗ trả lời.


- HS: Một học sinh đứng tại chỗ trả lời bài tập 2.
một học sinh khác đứng tại chỗ nhận xét.


- GV: KÕt luËn kết quả của bài 2.


-GV: GV: a ra bi tốn, u cầu học sinh
nghiên cứu theo nhóm.


-HS: Hoạt động theo nhóm tìm câu trả lời.
- HS: Đại diện của hai nhóm trình bày kết quả


của nhóm.


- GV: NhËn xÐt.


Bµi 1: SGK (T60)


<b>Bµi 2: SGK (T60)</b>


- Câu lệnh lặp có tác dụng chỉ dẫn cho máy tính
thực hiện lặp lại một câu lệnh hay một nhóm
câu lệnh vi mt s ln nht nh.


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


<b>Bài 3 SGK (T60)</b>


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


Hoạt động 2: Bài tập dạng thực hành (25’)
GV: Đa ra đề bài toán và yêu cầu một học sình


đứng tại vị trí để trả lời bài tập.


-HS: 1em đứng tại vị trí trả lời, 1 em khỏc nhn
xột.



- GV: Nhận xét kết quả câu trả lời của 2 bạn.
- GV: Đa bài tập


- HS: Suy luËn kÕt qu¶ theo lÝ thuyÕt
- GV: Ghi kÕt quả suy luận của học sinh


lên bảng


- HS: gừ chơng trình vào máy và chạy thử
- HS: So sánh kết quả nhận đợc với kết quả


đã suy lận


- 1 HS giải thích kết quả thu đợc
- GV Đa ra bài tập 6.


- HS: Làm việc theo nhóm, sau 5 phút đại


<b>Bµi 5 SGK (T61)</b>


Tất cả các câu lệnh đều khơng hợp lệ vì:
a) giá trị đầu lớn hơn giá trị cuối


b) giá trị đầu và giá trị cuối có kiểu là số thực
khơng cùng kiểu với biến đếm


c) sai cÊu tróc c©u lƯnh
d) sai cÊu tróc c©u lƯnh



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


<b>Bµi 4 SGK (T61)</b>


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


2, 4, 6, 8, 10, 12.


<b>Bµi 6 SGK (T 61)</b>


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

diện của 2 nhóm sẽ lên báo báo kết quả.
- Các nhóm khác nhận xét


- GV: Giúp các em hoàn thành thuật toán.


A<-0, i<-1
Bíc 2: A<- 2\i(i+2)
Bíc 3: i<-i+1


Bíc 4: nÕu i<=n quay về bớc 2


Bớc 5: ghi kết quả A ra màn hình và kết thúc
thuật toán.


<b>4. Củng cố:</b>


- Giáo viên hệ thống lại toàn bộ nội dung bài học.
- Giáo viên nhận xét tiết học, rút kinh nghiệm tiết häc.




<b>-5. H íng dÉn vỊ nhµ:</b>


- 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.
- <b>về nhà viết chơng trình pascal bµi 6 SGK (T61)</b>


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


******************************


<i><b>Ngày soạn :29/12/2008</b></i> <b>Tiết 40- tuần 20</b>


<i><b>Ngày dạy : 07/01/2009</b></i>


Bµi tập



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


<i>1. Kiến thức Củng cố kiến thức vòng lặp với số lần biết trớc và câu lệnh ghÐp</i>


<i>2. Kỹ năng: Vận dụng vòng lặp for …….to…….do và câu lệnh ghép viết một số bài </i>
toán đơn giản.


<i>3. Thái độ Thái độ học tập nghiêm túc, tích cực làm các dạng bài tập ứng dụng.</i>


<b>II/ ChuÈn bÞ: </b>



- Sách giáo khoa, giáo án, tài liệu tin học có liên quan.
- Đọc tài liệu ở nhà trớc khi


<b>III. Tiến trình lên lớp:</b>
<b>1. Tổ chức.</b>


<b>2. Kiểm tra .</b>


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

- ? Một em lên bảng viết chơng trình pascal cho bµi 6 SGK (T61).
<b>3. Bµi míi</b>:


<b>Hoạt động của giáo viên Và HS</b> <b>Nôị dung</b>


Hoạt động 1:Bài tập vận dụng
- Giáo viên đa ra nội dung bài tập,


- HS phân tích bài toán tìm hớng giải
quyết.


- Gv: hng dẫn học sinh cách làm và viết
chơng trình lên bảng và yêu cầu học sinh
đọc hiểu.


- HS: đọc lại chơng trình giáo viên đã viết
trên bảng và tìm hiểu từng câu lệnh
- GV: yêu cầu một học sinh ng ti v trớ


diễn tả tuần tự ý nghĩa của chơng trình
thông qua diễn tả công việc của từng


lệnh trong chơng trình.


- GV: din t li mt lần để học sinh hiểu
sâu hơn về chơng trình


- Giáo viên đa ra nội dung bài tập,
- HS phân tích bài toán tìm hớng giải


quyết.


- GV: Đa ra c«ng thøc tÝnh day thõa:
day thõa = 1*2*3*4*5*….*n


- HS: dựa vào bài tập 1 viết chơng trình
cho bài to¸n. (viÕt theo nhãm).


- Đại diện của nhóm đứng lên bảng trình
bày kết quả. Các nhóm khác nhận xét,
rút kinh nghiệm.


- GV: KÕt luËn kÕt qu¶ cuèi cïng.


- Yêu cầu một học sinh lên máy chính gõ
chơng trình vào máy, cả lớp sửa lỗi nếu
có, cho chơng trình chạy thử, học sinh
quan sát kết quả.


- HS: chép lại chơng trình đã chạy vào vởi.


<b>Bµi tËp 1: Nhập vào n số nguyên từ bàn phím, </b>



tìm sè lín nhÊt trong d·y sè võa nhËp
Program tim_max;


Uses crt;


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


Clrscr;


Writeln(‘nhap vao n’); readln(n);
Smax:=-23768;


For i:= 1 to n do
Begin


Writeln(‘nhap vao so thu ’,i); readln(A);
If smax<A then smax:=A;


End;


Writeln(so lon nhat la,A); readln
End.


<b>Bài tập 2: Viết chơng trình tính day thừa của n </b>


số tự nhiên đầu tiªn.
Program tinh_day_thua;
Uses crt;



Var i, n : integer; kq: longint;
Begin


Clrscr;


Writeln(‘nhap vao n’); readln(n);
Kq:=1;


For i:= 1 to n do
Kq:=kq*i;


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

<b>4. Củng cố:</b>


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


- Nhấn mạnh ý nghĩa và công dụng, cách sử dụng vòng lặp for do
- Nhận xét, rut kinh nghiƯm bi häc.


<b>5. H íng dÉn vỊ nhµ:</b>


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


<b> - Häc sinh vỊ nhµ lµm bµi tËp:</b>


1. tÝnh tỉng cđa n sè tự nhiên đầu tiên



2. Vit 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
Đọc bài mới để giờ sau học.


<b></b>


<i><b>---o0o---Ngày soạn :06/01/2009</b></i> <b>Tiết 41- tuần 21</b>


<i><b>Ngày dy : 12/01/2009</b></i>


<b>thực hành </b>


<b>sử dụng lệnh lặp for .. do</b>
<b>I/ Mơc tiªu:</b>


<i>1. Kiến thức Vận dụng kiến thức của vòng lặp for… do, câu lệnh ghép để viết chơng </i>
trỡnh.


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


Vit c chng trỡnh cú s dng 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>3. Thái độ: Thái độ học tập nghiêm túc, tích cực làm các bài tập thực hnh.</i>


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


- Sách giáo khoa, giáo án, tài liệu tin học có liên quan. Phòng máy.
- Đọc tài liệu ở nhà trớc khi



<b>III. Tiến trình lên lớp:</b>
<b>1. Tỉ chøc.</b>


<b>2. KiĨm tra .</b>


- KiĨm tra sù chn bÞ cđa häc sinh .
<b>3. Bµi míi :</b>


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.


<b>Hoạt động của giáo viên</b> <b>Hoạt động của học sinh</b>


Hoạt động 1: Viết chơng trình cho các bài tập đã cho về nhà. (15’)
- GV: yêu cầu mỗi dãy gõ một bài vào


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


Program tinh_tong;


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

máy (10)


- HS: gõ chơng trình, chạy thử chơng trình,
và báo cáo kết quả.


- GV: hỗ trợ học sinh trong quá trình 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.


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


Clrscr;
Tong:=0;


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.


2. ViÕt chơng trình tìm xem có bao nhiêu số
dơng trong n sè nhËp vµo tõ bµn phÝm


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.


Hoạt động 2: Bảng cửu chơng.
- GV: Đa ra nội dung của bài tốn.


- HS: Nghiªn cøu bài toán, tìm input và
output.


- GV: a ni dung chơng trình lên màn
hình, yêu cầu học sinh đọc hiểu chơng
trình.



- HS: đọc, phân tích câu lệnh tìm hiểu
hoạt động của chơng trình.


- GV: yêu cầu một học sinh đứng tại vị trí
trình bày hoạt động của chơng trình,
các nhóm khác cùng tham gia phân
tích.


- HS: tham gia hoạt động của giáo viên
- GV: yêu cầu học sinh lập bảng hoạt


động của chơng trình theo mẫu:
Giả sử N=2:


Bớc i i<=10 Writeln(n,’.’,i,’=’,n*i)
1 1 đúng 2.1=2


- HS: các nhóm lập bảng và đại diện
nhóm báo cỏo kt qu.


- GV: nhận xét.


- GV: cho chơng trình chạy trên máy, yêu
cầu học sinh quan sát kết quả.


<b>Bài 2: Viết chơng trình in ra màn hình bảng</b>


nhõn ca 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.


Nhận xét, rút kinh nghiệm tiết thực hành


<i><b>6. Dặn dò học sinh về nhà</b></i><b> (1) về nhà xem </b>


tr-ớc bài thực hành 2 SGK (T63) viết chơng trình
in ra màn hình bảng cửu chơng từ 2 đến


<b>4. Cđng cè:</b>



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



<b>-5. H íng dÉn vỊ nhµ:</b>


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


- Häc kĩ lí thuyết, viết chơng trình tính tông 100 số tự nhiên, N số tự nhiên đầu tiên.
- về nhà xem tríc bµi thùc hµnh 2 SGK (T63) viÕt chơng trình in ra màn hình bảng cửu


chng t 2 đến


<i><b>Ngày soạn :06/01/2009</b></i> <b>Tiết 42- tuần 21</b>


<i><b>Ngày dạy : 15/01/2009</b></i>


Thực hành



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


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


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


Viết chơng trình có sử dụng vòng lặp for do;
Sử dụng câu lệnh ghép trong chơng trình;


Rốn luyn k nng c hiu chơng trình có sử dụng vịng lặp for ….. do.
<i>3. Thái độ: Thái độ học tập nghiêm túc, tích cực lm cỏc bi thc hnh.</i>



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


- Sách giáo khoa, giáo án, tài liệu tin học có liên quan. Phòng máy
- Đọc tài liệu ở nhà trớc khi


<b>III. Tiến trình lên lớp:</b>
<b>1. Tổ chức.</b>


<b>2. Kiểm tra .</b>


- Kiểm tra sự chuẩn bị của học sinh .
<b>3. Bài mới</b>:


<b>Hot động của giáo viên</b> <b>Hoạt động của học sinh</b>


Hoạt động 1: Làm đẹp màn hình kết quả bằng lệnh gotoxy, where (20’)
- Giáo viên cho chạy kết quả của bài thc


hành Bang_cuu_chuong Yêu cầu học
sinh quan sát kết quả và nhận xét
khoảng cách giữa các hàng, cột.
- HS: quan sát và đa ra nhận xét.


- ? Cú cách nào để khoảng cách giữa các
hàng và các ct tng lờn?


- GV: Giới thiệu câu lệnh gotoxy và
where.



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


- GV: yêu cầu học sinh quan sát kết quả


Bài 2 sgk (T63)


a) Giíi thiƯu lƯnh gotoxy(), wherex
- Gotoxy(a,b)


Trong đó: a là chỉ số cột, b là chỉ số hàng


- ý nghĩa của câu lệnh là đa con trỏ về cét a hµng
b.


- Wherex: cho biÕt sè thø tù cđa cét, wherey cho
biÕt sè thø tù cđa hµng.


<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


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

và so sánh với kết quả của chơng trinh
khi cha dùng lệnh gotoxy(5, wherey)
- HS: quan sát và nhận xét.


Writeln(Nhap vao so n); 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.


Hoạt động 2: sử dụng lệnh For lồng trong for (28’)
- GV: giới thiệu cấu trúc lệnh for lồng,


h-íng dÉn häc sinh cách sử dụng lệnh.
- HS: ghi chép cấu trúc và lĩnh hội


- GV: đa nội dung chơng trình bài thực


hành 3 lên màn hình, yêu cầu học sinh
đọc chơng trình, tìm hiểu hoạt động của
chơng trình.


- 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ả thảo lun.


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


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


Bài 3 SGK (T64).


a) Câu lệnh for lång trong for


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


<b>For</b><i> <biến đếm 2:=giá 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


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


End;


Readln;


End.


Hoạt động 3: kết thúc (2’)


HS: tắt chơng trình ứng dụng, tắt máy, tắt
nguồn


<b>4. Củng cố:</b>


- Giáo viên hệ thống lại toµn bé néi dung bµi häc.
- NhËn xÐt rót kinh nghiƯm giê thùc hµnh.


<b>5. H íng dÉn vỊ nhµ:</b>


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


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

<i><b>Ngày soạn :15/02/2009</b></i> <b>Tiết 43+44+45- tuần 22+23</b>


<i><b>Ngày dy : 20/02/2009</b></i>


<b>học vẽ hình với phần mềm geogebra.</b>
<b>I/ Mục tiªu:</b>


 Học sinh biết đợc ý nghĩa của hình học geogebra. Làm quen với phần mềm này nh
khởi động, các thanh công cụ, các nút lệnh .. .


 Nắm đợc cách vẽ một hình nào đó khi sử dụng phần mềm geogebra này.
 Hứng thú và yêu thích mụn hc.


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


- Sách giáo khoa, giáo án, tài liệu tin học có liên quan.
- Đọc tài liệu ở nhà trớc khi


<b>III. Tiến trình lên lớp:</b>
<b>1. Tổ chøc.</b>


<b>2. KiĨm tra .</b>


- KiĨm tra sù chn bÞ cđa häc sinh .
<b>3. Bµi míi</b>:


<b>Hoạt động của giáo viên</b> <b>Hoạt động của học sinh</b>



Hoạt động 1: Giới thiệu phần mềm geogebra.
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


1. Em đã biết gì về GeoGebra?


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

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.
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ế nào?


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?


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 tợng điểm</i>


2. Lµm quen víi phÇn mỊm GeoGebra
tiÕng ViÖt


<b>a) Khởi động </b>


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


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


Mn hỡnh lm vic chính của phần mềm
bao gồm bảng chọn, thanh cơng cụ và
khu vực thể hiện các đối tợng.



 <i>Bảng chọn là hệ thống các lệnh</i>
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ú ý rằng các lệnh trên bảng chọn</b>
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ụ của phần mềm chứa</i>
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 việc với 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.


- Mi 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 dụng
của cơng cụ đó.


<b>c) Giíi thiệu các công cụ làm việc </b>
<b>chính </b>


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


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

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


<b>khác, nhấn phím ESC để chuyển về cơng </b>
cụ di chuyển.


 <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: chọn công cụ và nháy chuột </i>
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: chọn công cụ và lần lợt nháy </i>
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 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: chọn cơng cụ, chọn một điểm </i>
cho trớc, sau đó nhập một giá trị số vào
cửa sổ có dạng:


<b>Nháy nút áp dụng sau khi đã nhập xong </b>
độ dài on thng.


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

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


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


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


<i>- Thao tác: chọn cơng cụ, sau đó lần lợt </i>
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ụ 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: chọn cơng cụ, sau đó lần lợt </i>
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: chọn cơng cụ, sau đó chọn một </i>
đ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: chọn cơng cụ và sau đó lần lợt </i>
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>


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

- 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: chọn công cụ, chọn lần lợt hai</i>
đ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: Chọn cơng cụ, chọn tâm hình </i>
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 tt-ợng cho trớc
qua một trục là đờng hoặc đoạn thẳng.
<i>- Thao tác: Chọn công cụ, chọn đối tợng </i>
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 tt-ợ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'>(80)</span><div class='page_container' data-page=80>

đối xứng.


d) C¸c thao t¸c víi tƯp


Mỗi trang hình vẽ sẽ đợc lu lại trong một
<b>tệp có phần mở rộng là ggb. Để lu hình </b>
<b>hãy nhấn tổ hợp phím Ctrl+S hoặc thực </b>
<b>hiện lệnh Hồ sơ  Lu lại từ bảng chọn. </b>
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 vµ nháy chuột vào nút Save.</b>



m mt tp ó cú, nhấn tổ hợp phím


<b>Ctrl+O hoặc thực hiện lệnh Hồ sơ  </b>
<b>Mở. Chọn tệp cần mở hoặc gõ tên tại ơ </b>
<b>File name, sau đó nháy chuột vào nút </b>
<b>Open.</b>


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


<b>Nháy chuột chọn Hồ sơ Đóng hoặc </b>
<b>nhấn tổ hợp phím Alt+F4.</b>


<b>4. Củng cố:</b>


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


<b>-5. H íng dÉn vỊ nhµ:</b>


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


<i><b>Ngày soạn :19/02/2009</b></i> <b>Tiết 46+47+48 - tuần 23</b>


<i><b>Ngày dạy : 22/02/2009</b></i>


<b>Thực hành học vẽ hình với phần mềm geogebra</b>


<b>I/ Mục tiªu:</b>


 Học 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.


 Vận dụng đợc vào vẽ các hình trong thực t.


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


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


- Sách giáo khoa, giáo án, tài liệu tin học có liên quan.
- Đọc tài liệu ở nhà trớc khi


<b>III. Tiến trình lªn líp:</b>
<b>1. Tỉ chøc.</b>


<b>2. KiĨm tra .</b>


- KiĨm tra sù chuẩn bị của học sinh .
<b>3. Bài mới</b>:


<b>Hot ng ca giáo viên</b> <b>Hoạt động của học sinh</b>


Hoạt động1: Khái niệm đối tợng.


? Em hiểu thế nào là đối tợng hình học? <b>a) Khái niệm đối tợng hình học</b>


Một hình hình học sẽ bao gồm nhiều đối
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


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

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


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.


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>Em đã đợc làm quen với khái niệm quan hệ</i>
giữa các đối tợng.


Sau đây là một vài ví dụ:
 <i>Điểm thuộc đờng thẳng</i>
 <i>Đờng thẳng đi qua hai điểm</i>


Cho trớc 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.


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


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.


<b>Dïng lƯnh HiĨn thÞ  HiĨn thị danh sách </b>


<b>i tng hin/n khung thụng tin ny </b>


trên màn hình.


<b>d) Thay i thuc tớnh ca i tợng</b>


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


Sau đây là một vài thao tác thờng dùng để
thay đổi tính chất của đối tợng.



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


<b>1. Nháy nút phải chuột lên đối tợng;</b>
<b>2. Huỷ chọn Hiển thị đối tợng trong</b>


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. Nháy nút phi chut lờn i tng</b>


trên màn hình;


<b>2. Huỷ chọn Hiển thị tên trong bảng</b>


chọn.


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


<b>1. Nhỏy nỳt phi chut lờn i tng</b>


trên màn h×nh;


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

chän:



Sau đó nhập tên mới trong hộp thoại:


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


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


 <i>Đặt/huỷ vết chuyển động của đối </i>
<i>t-ợng: Chức năng đặt vết khi đối tợng chuyển</i>
độ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:


<b>1. Nháy nút phải chuột lên đối tợng;</b>
<b>2. Chọn Mở dấu vết khi di chuyển. </b>


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


<b>Ctrl+F.</b>


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



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


<b>2. Nháy nỳt phi chut lờn i tng</b>


<b>và thực hiện lệnh Xoá. </b>


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


<b>4. Cđng cè:</b>


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


<b>-5. H íng dÉn vỊ nhµ:</b>


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


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

Giảng ngày: <b>Tiết 41: Bài thực hành 5: </b>
<b>sử dụng lệnh lặp for .. do</b>
<b>I/ Mục tiêu:</b>


<i>1. Kin thức Vận dụng kiến thức của vòng lặp for</i>… do, câu lệnh ghép để viết chơng trình.
<i>2. 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>3. Thái độ: Thái độ học tập nghiêm túc, tích cực làm các bài tập thực hành.</i>
<b>II/ Chuẩn bị: </b>


- Sách giáo khoa, giáo án, tài liệu tin học có liên quan. Phòng máy.
- Đọc tài liệu ở nhà trớc khi


<b>III. Tiến trình lên lớp:</b>
<b>6.</b> <b>Tổ chức.</b>


7. <b>Kiểm tra .</b>


- KiĨm tra sù chn bÞ cđa häc sinh .
8. <b>Bµi míi :</b>


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.


<b>Hoạt động của giáo viên</b> <b>Hoạt động của học sinh</b>


Hoạt động 1: Viết chơng trình cho các bài tp ó cho v nh. (15)


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


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


báo cáo kết quả.


- GV: hỗ trợ học sinh trong quá trình 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µ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


Clrscr;
Tong:=0;


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.



2. Viết chơng trình tìm xem có bao nhiêu số
d-ơng trong n số nhập vào từ bµn phÝm


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.


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

- GV: Đa ra nội dung của bài toán.
- HS: Nghiên cứu bài toán, tìm input và



output.


- GV: Đa nội dung chơng trình lên màn
hình, yêu cầu học sinh đọc hiểu chơng
trình.


- HS: đọc, phân tích câu lệnh tìm hiểu hoạt
động của chơng trình.


- GV: yêu cầu một học sinh đứng tại vị trí
trình bày hoạt động của chơng trình, các
nhóm khác cùng tham gia phân tích.
- HS: tham gia hoạt động của giáo viên
- GV: yêu cầu học sinh lập bảng hot ng


của chơng trình theo mẫu:
Giả sử N=2:


Bớc i i<=10 Writeln(n,’.’,i,’=’,n*i)


1 1 đúng 2.1=2


- HS: các nhóm lập bảng và đại diện nhóm
báo cáo kết quả.


- GV: nhËn xét.


- GV: cho chơng trình chạy trên máy, yêu
cầu học sinh quan sát kết quả.



<b>Bi 2: Vit chng trỡnh in ra màn hình bảng </b>
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.


NhËn xÐt, rót kinh nghiƯm tiÕt thùc hµnh


<i><b>6. Dặn dị học sinh về nhà</b></i><b> (1 ) </b>’ về nhà xem trớc
bài thực hành 2 SGK (T63) viết chơng trình in ra
màn hình bảng cửu chơng từ 2 đến 9.



<b>9.</b> <b>Củng cố:</b>


- Giáo viên hệ thống lại toàn bộ néi dung bµi häc.
- NhËn xÐt, rót kinh nghiƯm tiÕt thùc hµnh




<b>-10.H íng dÉn vỊ nhµ:</b>


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


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


- v nh xem trc bi thc hnh 2 SGK (T63) viết chơng trình in ra màn hình bảng cửu chơng
từ 2 đến 9.


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

Ngày soạn :06/01/2009 <b>Tiết 51, 52- tuần 26</b>


Ngày dạy : 15/01/2009


<b>Bµi thực hành 5: </b>
<b>sử dụng lệnh lặp for .. do</b>
<b>I/ Mơc tiªu:</b>


<i>1. Kiến thức Vận dụng kiến thức của vịng lặp for</i>… 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 lồng trong for


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



Viết chơng trình có sử dụng vòng lặp for do;
Sử dụng câu lệnh ghép trong chơng trình;


Rốn luyn k nng c hiu chng trỡnh cú sử dụng vòng lặp for ….. do.
<i>3. Thái độ: Thái độ học tập nghiêm túc, tích cực làm các bài thực hành.</i>
<b>II/ Chuẩn bị: </b>


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

<b>III. TiÕn tr×nh lªn líp:</b>
<b>1.</b> <b>Tỉ chøc.</b>


<b>2.</b> <b>KiĨm tra .</b>


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


<b>3.</b> <b>Bài mới :</b>


<b>Hot ng của giáo viên</b> <b>Hoạt động của học sinh</b>


Hoạt động 1: Làm đẹp màn hình kết quả bằng lệnh gotoxy, where (20’)
- Giáo viên cho chạy kết quả của bài thực


hành Bang_cuu_chuong Yêu cầu học
sinh quan sát kết quả và nhận xét khoảng
cách giữa các hàng, cột.


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


- ? Cú cỏch no để 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.


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


- 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, wherey)
- HS: quan sát và nhận xét.


Bài 2 sgk (T63)


a) Giíi thiƯu lƯnh gotoxy(), wherex
- Gotoxy(a,b)


Trong đó: a là chỉ số cột, b là chỉ số hàng


- ý nghÜa cña câu lệnh là đa con trỏ về cột a hàng
b.


- Wherex: cho biÕt sè thø tù cña cét, wherey cho
biết số thứ tự của hàng.



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


Writeln(‘Nhap vao so n’); 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.


Hoạt động 2: sử dụng lệnh For lồng trong for (28’)
- GV: giới thiệu cấu trúc lệnh for lồng,



h-íng dÉn häc sinh c¸ch sư dơng lƯnh.
- HS: ghi chép cấu trúc và lĩnh hội
- GV: đa nội dung chơng trình bài thực


Bài 3 SGK (T64).


a) C©u lƯnh for lång trong for


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

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.


- 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ả thảo luận.


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


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


<b>For</b><i><bin m 2:=giỏ trị đầu> </i><b>to</b><i><giátrị </i>
<i>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.
Hoạt động 3: kt thỳc (2)


HS: tắt chơng trình ứng dụng, tắt máy, tắt nguồn


<b>4.</b> <b>Củng cố:</b>


- Giáo viên hệ thống lại toµn bé néi dung bµi häc.
- NhËn xÐt rót kinh nghiƯm giê thùc hµnh.


<b>5.</b> <b>H íng dÉn vỊ nhµ:</b>


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


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





---Ngày soạn :07/03/2009 <b>Tiết 53, 54- tuần 27</b>


Ngày dạy : 10/03/2009


<b> BÀI TẬP</b>
<b>I. Mơc tiªu:</b>


- Viết đợc chơng trình Pascal có sử dụng vòng lặp While ... do
- Biết sử dụng câu lệnh ghép.


- Rèn kỹ năng đọc hiểu chơng trình có sử dng vũng lp while ... do


<b>II. Chuẩn bị:</b>


<i><b>1. Giáo viên:</b></i>


- Chuẩn bị một số thuật toán và chơng trình .
- Chuẩn bị máy tính,.


<i><b>2. Học sinh:- Thực hiện nhiệm vơ vỊ nhµ cđa tiÕt tríc.</b></i>


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

<i><b>Bài 1: </b><b>Lập trình tính tổng dùng lệnh lặp While ...do. Trong đú n là số tự nhiên đợc</b></i>
<i><b>nhập từ bàn phím.</b></i>


1 1 1


1 ... ( )



2 3


<i>A</i> <i>n Z</i>


<i>n</i>


    


<b>GIẢI</b>


Program tinhA;
Uses CRT;
Var i, n: integer;
tong: real;


BEGIN
Clrscr;


write('cho so tu nhien n: '); Readln(n);tong:=0; i:=1;
while i<= n do


Begin


tong:= tong+ 1/i;
i: = i+1;


End;


writeln(' Tong can tim la: ', tong:12:6);


Readln;


END.


<i><b> Bài 2: Viết chương trình tìm ƯCLN(a,b). Biết a, b được nhập từ bàn phím. a,b</b></i><i>Z</i>


<i><b>Giải</b></i>
Program timUCLN;


Uses Crt;


Var a,b,r,a1,b1: integer;
BEGIN


ClrScr;


Write(‘Nhap so thu nhat, a= ‘); Readln(a); a1:= a;
Write(‘Nhap so thu hai, = ‘); Readln(b); b1:= b;
While a mod b <> 0 do


Begin


r:= a mod b;
a: = b; b: = r;
End;


Write (‘ Vay UCLN(‘, a1, ‘;’,b1,’)=’,b:2);
Readln; END.


<i><b>Bài 3: Viết chương trình tìm BCNN(a,b). Biết a, b được nhập từ bàn phím. a,b</b></i><i>Z</i>



<i><b>Giải</b></i>
Program timBCNN;


Uses Crt;


Var a,b,n,min,max,max1: integer;
BEGIN


ClrScr;


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

Write(‘Nhap so thu hai, = ‘); Readln(b); b1:= b;
If a>b then


Begin max: = a; min:=b; End
Else Begin max:=b; min:= a; End;
n:= 2; max1:=max;


While max mod min <> 0 Do
Begin


max:= max1*n;
inc(n); {n:=n+1}
End;


Write (‘ Vay BCNN(‘, a, ‘;’,b,’)=’,max:2);
Readln;END.


Ngày soạn :12/03/2009 <b>Tiết 55 - tuần 28</b>



Ngày dạy : 17/03/2009


<b> KIỂM TRA 1 TIẾT </b>
<b>I. Mơc tiªu:</b>


1. KiÕn thøc:


- Viết đợc chơng trình Pascal có sử dụng vòng lặp While ... do
- Hệ thống lại kiến thức ó hc


- Khắc sâu các nội dung cơ bản về vòng lặp
2. Kỹ năng:


- Nhn dng c mt s bi tập cụ thể
- Biết sử dụng câu lệnh ghép.


- Rèn kỹ năng đọc hiểu chơng trình có sử dụng vịng lặp
3. Thái độ:


- Nghiªm tóc trong häc tËp và làm bài.


<b>II. Chuẩn bị:</b>


<i><b>1. Giáo viên:</b></i>
- Đề kiểm tra


- Chuẩn bị máy tính,.


<i><b>2. Hc sinh:- Xem trc cỏc bi ó hc</b></i>



<b>III. Tiến trình KIểM TRA:</b>
<b>Đề thi:</b>


<b> 1:</b>


<b>Ho v Tên:……………</b> <b>Kiểm Tra 1 tiết </b>


<b>Lớp:8a………</b> <b>Tin học</b>


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

<i><b>Câu 1: Nêu sự khác nhau giữa lệnh lặp biết trước và lặp chưa biết trước, cho ví dụ cụ thể(3đ)</b></i>
<b>Cấu 2: Lập trình nhập vào số nguyên dương n tính tổng từ 1 đến n( có kiểm tra điều kiện </b>
<b>nhập)(5.5đ)</b>


<b>Đề 2:</b>



<i><b>Câu 1: Cho chương trình sau.(4.5đ)</b></i>
<b>Program Tinh_Chuvi;</b>


<b>Const Pi:= 3.1416;</b>
<b>Var cv: integer;</b>
r: real;
<b>Begin </b>
r = 5.5
cv =2*pi*r;


writeln (‘ Chu vi duong tron la:’,cv);
readln


<b>end.</b>



<i><b>a. Tìm các lỗi trong chương trình? (1.5đ)</b></i>


<i><b>………</b></i>
<i><b>………</b></i>
<i><b>………</b></i>
<i><b>………</b></i>
<i><b>………</b></i>
<i><b>………</b></i>
<i><b>b. Viết lại chương trình cho đúng (3đ</b></i>


<i><b>………</b></i>
<i><b>………</b></i>
<i><b>………</b></i>
<i><b>………</b></i>
<i><b>………</b></i>
<i><b>………</b></i>
<b>Cấu 2: Lập trình nhập vào số nguyên dương n tính tổng từ 1 đến n( có kiểm tra điều kiện </b>
<b>nhập)(5.5đ).</b>


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

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


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


Ngày soạn :12/03/2009 <b>Tiết 56 - tuần 28</b>


Ngày dạy : 21/03/2009


<b>TIẾT 56: </b>

<b>LÀM VIỆC VỚI DÃY SỐ</b>



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


- Học sinh 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;
- Hiểu thuật tốn tìm số lớn nhất, nhỏ nhất của một dãy số.


<b>II. Phương pháp:</b>


- Đặt vấn đề để học sinh trao đổi và đưa nhận xét. Tận dụng vốn hiểu biết “ một cách tự
nhiên của học sinh


- Học sinh đọc SGK, quan sát và tổng kết


<b>III. Chuẩn bị:</b>


- Giáo viên: Phấn màu, sách, chuẩn bị thêm các bài tập minh hoạ (nếu có)
- Học sinh: sách, tập, viết.


<b>IV. TIẾN TRÌNH DẠY HỌC</b>



1- Kiểm tra bài cũ: …
<i><b>2- Dạy bài mới: </b></i>
<i><b>3. Bai mới:</b></i>


<i><b>Hoạt động 1:Dãy số và biến mảng</b></i>


<b>Hoạt động của Thầy và trò</b> <b>Nội dung ghi bảng</b>


- Giới thiệu về dãy số và biến mảng liên quan
<i>đến hai nội dung quan trọng: Nhu cầu của biến</i>


<i>mảng trong ngơn ngữ lập trình và thuật tốn</i>
<i>tìm số lớn nhất của một dãy số.</i>


- HS nghe giảng


<i> Như các em đã biết về “thuật tốn tìm số lớn </i>
<i>nhất của một dãy số” đã được tìm hiểu ở bài 5 </i>
(ví dụ 6). Vì vậy, ta không đề cập đến việc giải
quyết nhiệm vụ này ntn.


- HS đọc ví dụ 1


Mục tiêu là Gv dẫn đến nhu cầu cần có biến


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

<i>mảng thơng qua ví dụ 1: Viết chương trình </i>
<i>nhập điểm kiểm tra của các HS trong một lớp </i>
<i>và sau đó in ra màn hình. </i>



- HS lắng nghe, theo dõi, ghi vở.


+ Vì mỗi biến chỉ có thể lưu một giá trị duy
nhất, để có thể nhập điểm và so sánh chúng, ta
cần sử dụng nhiều biến, mỗi biến cho một HS.
Trong Pascal ta cần nhiều câu lệnh khai báo và
nhập dữ liệu như: Mỗi câu lệnh tương ứng với
điểm của một HS. HS trả lời …


+ Nếu số HS 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 … rất khó tránh khỏi những nhầm lẫn, sai
sót.


- Vậy, 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 ntn ?


 Để giải quyết các vấn đề trên, hầu hết các
ngôn ngữ lập trình đều có một kiểu dữ liệu
<i>được gọi là kiểu mảng.</i>


<i>+ Dữ liệu kiểu mảng là gì ?</i>


<i><b>* Nhấn mạnh: Trong bài này, ta chỉ xét các</b></i>
mảng có các phần tử kiểu số nguyên hoặc số
thực.


<b>Ví dụ 1: (SGK)/ Tr 75</b>



- Khai báo và nhập dữ liệu mỗi câu lệnh
tương ứng với điểm của một HS:


<b>Var Diem_1, Diem_2, Diem_3, … : real;</b>


Read (Diem_1) ; Read (Diem_2) ; Read
(Diem_3) ; …


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


<i>+ Với i = 1 đến 100: Hãy nhập Diem_i;</i>
<i>+ Với i = 1 đến 100: Hãy so sánh Max với </i>
<i>Diem_i;</i>


<i>* Dữ liệu kiểu mảng:Là một tập hợp hữu hạn </i>
<i>các phần tử có thứ tự</i>


<i>+ Mọi phần tử đều có cùng một kiểu dữ liệu </i>
<i>gọi là kiểu của phần tử.</i>


<i> Việc sắp xếp thứ tự thực hiện bằng cách gán </i>
cho mỗi phần tử một chỉ số:


+ Biến mảng: Là khi khai báo một biến có
kiểu dữ liệu là kiểu mảng.


+ Giá trị của biến mảng là một mảng. (tức là
một dãy số: nguyên - thực có thứ tự)



- Cách khai báo biến mảng trong các ngôn ngữ
lập trình có thể khác nhau, nhưng ln cần chỉ
rõ những gì ?


- Cho HS đọc ví dụ, rồi hướng dẫn cách khai
báo trong ngôn ngữ Pascal:


<b>Var Chieucao : array [1..50] of real;</b>
<b>Var Tuoi : array [21..80] of integer;</b>


=> Cách khai báo mảng trong Pascal ntn ?


<b>2. Ví dụ về biến mảng:</b>


- Cách khai báo biến mảng trong các ngơn
ngữ lập trình có thể khác nhau, nhưng ln
<i>cần chỉ rõ: tên biến mảng, số lượng phần tử,</i>
<i>kiểu dữ liệu chung của các phần tử.</i>


Ví dụ: (SGK)/ Tr 76


<i><b>* Cách khai báo mảng trong Pascal:</b></i>


<i><b>Tên mảng : array [<chi số đầu>..<chi số</b></i>
<i><b>cuối>] of <kiểu dữ liệu >;</b></i>


<i> Trong đó: </i>


<i> + Chi số đầu và chi số cuối: là 2 số nguyên</i>


<i>hoặc biểu thức nguyên (Chi số đầu </i><i> chi số</i>


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

- Từ ví dụ 1, GV dẫn dắt HS cách khai báo
<i>biến mảng:</i>


<b> Var Diem : array [1..50] of real;</b>


+ Biến mảng có 50 phần tử được đánh từ 1 đến
50. Các phần tử được “đặt tên” ntn ?


=> Cách khai báo và sử dụng biến mảng như
trên có lợi gì ?


- Để thay rất nhiều câu lệnh nhập và in dữ liệu
<i>ra màn hình, ta dùng một câu lệnh nào ?</i>


<b>( For …do )</b>


- Để viết giá trị của các phần tử ra màn hình
<b>người ta kết hợp giữa For …do với lệnh nào ?</b>
- Để giúp tiết kiệm rất nhiều thời gian và cơng
sức viết chương trình, thay vì phải viết 50 câu
lệnh khai báo và 50 câu lệnh nhập, ta chỉ cần
viết 2 câu lệnh là đủ và kết quả đạt được như
nhau. Đưa ra 1 cách khai báo cho HS rõ.


=> HS tự khai báo nhiều biến mảng cho các
môn học ntn ?


- Sau khi một mảng đã được khai báo, chúng ta


có thể làm việc với các phần tử của nó như làm
việc với một biến thơng thường. Vậy làm việc
với một biến thông thường ntn ?


<i><b>* Lưu ý HS: Sử dụng cấu trúc For … do phù</b></i>
<i><b>hợp, dễ hiểu hơn cấu trúc While…do vì biết</b></i>
trước số lần lặp.


*


<i><b> + Kiểu dữ liệu: integer hoặc real</b></i>


<b>* Ví dụ 2: (SGK)/ Tr 76.</b>


<i><b> - Khai báo biến mảng Diem như sau:</b></i>
<b> Var Diem : array [1..50] of real;</b>




<i>- Dùng một câu lệnh lặp, có thể thay rất nhiều</i>
câu lệnh nhập và in dữ liệu ra màn hình, như:
<b> For i:= 1 to 50 do readln ( Diem [ i ] );</b>


- Để so sánh điểm của mỗi HS với một giá trị
nào đó, ta cũng chỉ cần một câu lệnh lặp, như:


<b>For i:= 1 to 50 do </b>


<b>If Diem [ i ] > 8.0 then writeln ( ‘ Gioi ‘ );</b>



- Để xử lí đồng thời các laọi điểm của từng
mơn học, ta có thể khai báo nhiều mảng:


<b>Var DiemToan : array [1..50] of real;</b>
<b>Var DiemVan : array [1..50] of real;</b>
<b>Var DiemLi : array [1..50] of real;</b>


<i><b>hoặc:</b></i>


<b>Var DiemToan, DiemVan, DiemLi : array</b>


<b>[1..50] of real;</b>


- Khi một mảng đã được khai báo, chúng ta có
<i>thể làm việc với các phần tử của nó như: gán</i>
<i>giá trị, đọc giá trị và thực hiện các tính tốn</i>
<i>với các giá trị đó. Ví dụ như:</i>


A[ 1 ]:= 5;
A[ 2 ]:= 8;


hoặc nhập dữ liệu từ bàn phím bằng câu lệnh:


<b>For i:= 1 to 5 do readln ( A [ i ] );</b>
<b>4-Củng cố: Giáo viên hệ thống lại bài học.</b>


<b>5. Dặn dò: - Về nhà học bài;</b>


- Làm các Câu hỏi và BTcòn lại: sgk/ Tr 79;
<i>- Chuẩn bị tiết sau: Bài thực hành 7.</i>





---Ngày soạn :12/03/2009 <b>Tiết 57 - tuần 28</b>


Ngày dạy : 21/03/2009


<b>LÀM VIỆC VỚI DÃY SỐ(tiết 2)</b>



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

- Học sinh 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;
- Hiểu thuật tốn tìm số lớn nhất, nhỏ nhất của một dãy số.


<b>II. Phương pháp:</b>


- Đặt vấn đề để học sinh trao đổi và đưa nhận xét. Tận dụng vốn hiểu biết “ một cách tự
nhiên của học sinh


- Học sinh đọc SGK, quan sát và tổng kết


<b>III. Chuẩn bị:</b>


- Giáo viên: Phấn màu, sách, chuẩn bị thêm các bài tập minh hoạ (nếu có)
- Học sinh: sách, tập, viết.


<b>IV. TIẾN TRÌNH DẠY HỌC</b>


1- Kiểm tra bài cũ: …
<i><b>2- Dạy bài mới: </b></i>


<i><b>3. Bai mới:</b></i>


<i><b>Hoạt động 1: Tìm giá trị lớn nhất và nhỏ nhất của dãy số: </b></i>


<b>Hoạt động của Thầy và trò</b> <b>Nội dung ghi bảng</b>


- GV hướng dẫn HS tìm hiểu lại thuật tốn tìm
giá trị lớn nhất, nhỏ nhất của dãy số nguyên ( đã
học ở Bài 5 ).


+ GV giải thích về thuật tốn tìm giá trị lớn
nhất của dãy số nguyên … Sau đó cho HS nhắc
lại.


+ Cho HS thảo luận, chỉnh sửa thuật tốn trên
để tìm ra số nhỏ nhất.


- GV cho HS đọc ví dụ 3:


+ Để nhập các số nguyên sẽ được nhập vào,
trước hết ta phải làm gì ?


+ Sau khi khai báo N, biến lưu các số được
nhập vào như là các phần tử của một biến mảng
A. Ngoài ra, cần khai báo thêm các biến nào
nữa ?


- GV: Trình bày phần khai báo chương trình …


- GV cho HS đọc phần ghi nhớ.



<b>3. Tìm giá trị lớn nhất và nhỏ nhất của dãy</b>
<b>số: </b>


* Thuật tốn tìm giá trị lớn nhất ( Max ) của
dãy số nguyên nhập từ bàn phím:


<i><b>Bước 1: Nhập N và dãy A</b></i><b>1, … , An;</b>
<i><b>Bước 2: Max  A</b></i><b>1;</b>


<i><b>Bước 3: Với i từ 2 đến N thực hiện: Nếu</b></i>


<b>Max < A1 thì Max  Ai;</b>


<i><b>Bước 4: Đưa ra màn hình giá trị Max rồi</b></i>


<b>kết thúc</b>


<b>Ví dụ 3: (SGK)/ Tr 78.</b>


* Phần khai báo chương trình có thể như sau:


<b>Program MaxMin;</b>
<b>Uses crt;</b>


<b>Var i, n, Max, Min : integer;</b>


<b> A : array [1..100] of integer;</b>


{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:
m’);


<b> For i:= 1 to n do </b>


Begin


Write ( ‘ a[ , i , ] = ‘); readln (a[ i ] );
End;


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

<b> For i:= 2 to n do </b>


<b> Begin if Max < a[ i ] then Max:=</b>
a[ i ];


<b> if Min < a[ i ] then Min:=</b>
a[ i ];


<b> End;</b>


Write ( ‘ So lon nhat la Max = ‘ Max);


Write ( ‘ So nho nhat la Min = ‘ Min);
readln (n);


<b>End. </b>


<b>** GHI NHỚ: (SGK)/ Tr 79.</b>


<i><b>4. Củng cố:Làm BT 1, 2/ SGK/ Tr 79</b></i>


<i><b>5. Dặn dò: Học Bài và làmBTVN: 3, 4/SGK/ Tr 79.</b></i>


Ngày soạn :21/03/2009 <b>Tiết 59 + 60 - tuần 30</b>


Ngày dạy : 06/04/2009


<b>THỰC HÀNH</b>
<b>I. Mục tiêu:</b>


- Học sinh 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;
- Hiểu thuật tốn tìm số lớn nhất, nhỏ nhất của một dãy số.


- HiỂU thêm về khai báo các biến trong mảng.
- Rèn luyện kỹnnăng hoạt động độc lập


<b>II. Chuẩn bị:</b>


- Giáo viên: Máy chiếu, mạng,các bài tập minh hoạ (nếu có)
- Học sinh: sách, tập, viết.



<b>III. TIẾN TRÌNH DẠY HỌC</b>


1-Ổn định: (1’).


2- Kiểm tra bài cũ: (không)
<i><b>3- Dạy bài mới: </b></i>


<i><b>Hoạt động 1: Cho học sinh trr lời các câu hỏi sau.</b></i>


<b>1. 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, nhng chỉ dới một tên</b>
duy nhất.” Phát biểu đó đúng hay sai?


<b>2. 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.</b>
<b>3. Các khai báo biến mảng sau đây trong Pascal đúng hay sai:</b>


<i>a)</i> <b>var X: Array[10,13] Of Integer;</b>


<i>b)</i> <b>var X: Array[5..10.5] Of Real;</b>


<i><b>c)</b></i> <b>var X: Array[3.4..4.8] Of Integer; </b>


<i><b>d)</b></i> <b>var X: Array[10..1] Of Integer; </b>


<i>e)</i> <b>var X: Array[4..10] Of Real;</b>


<b>4. Câu lệnh khai báo mảng sau đây có đợc máy tính thực hiện khơng?</b>


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



<b> A: array[1..N] of real;</b>


<b>5. Viết chơng trình Pascal sử dụng mảng để nhập từ bàn phím các phần tử của một dãy số. Độ</b>
dài của dãy cũng đợc nhập từ bàn phím.


<i><b>6. Đoạn chơng trình sau dùng để sắp xếp lại dãy số đợc ghi trong mảng A[i], i = 1,2,..., N, theo</b></i>
thứ tự tăng dần:


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

<b>For j:=i to N do</b>
<b>If A[i] > A[j] then </b>


<b>Begin Tg:=A[i]; A[i]:=A[j]; A[j]:=Tg; End;</b>


Hãy kiểm tra tính đúng đắn của đoạn chơng trình trên.
<i><b>Hoạt động 2: tiờ́n hành gỏ bài tập đó làm cho máy thực hiện.</b></i>


<i><b>Câu 1: đã làm ở tiết bài tập.</b></i>
<i><b>Câu 2:</b></i>


<i><b>Tiếp tục cho học sinh làm các bài tập sau:</b></i>


<i><b>Cõu 1: </b></i>Hãy viết chơng trình nhập 5 số ngn từ bàn phím và ghi ra màn hình số lớn nhất trong 5
số đó theo hai cách: không sử dụng biến mảng và sử dụng biến mảng.


<i><b>Cõu 2: Viết chơng trình sử dụng biến mảng để tính giá trị trung bình của tổng N số ngun đợc</b></i>
nhập vào từ bàn phím


<b>Giải:</b>


<i><b>1. a) NÕu kh«ng sư dụng biến mảng, chơng trình có thể dài nh sau:</b></i>



<b>uses crt;</b>


<b>var So_1, So_2, So_3, So_4, So_5, Max: integer;</b>
<b>begin</b>


<b>clrscr;</b>


<b>write('Nhap so thu nhat: '); readln(So_1);</b>
<b>write('Nhap so thu hai: '); readln(So_2);</b>
<b>write('Nhap so thu ba: '); readln(So_3);</b>
<b>write('Nhap so thu tu: '); readln(So_4);</b>
<b>write('Nhap so thu nam: '); readln(So_5);</b>
<b>Max:=So_1;</b>


<b>If Max<So_2 then Max:=So_2;</b>
<b>If Max<So_3 then Max:=So_3;</b>
<b>If Max<So_4 then Max:=So_4;</b>
<b>If Max<So_5 then Max:=So_5;</b>
<b>writeln('So lon nhat: ',Max);</b>
<b>end.</b>


<i>b) NÕu sö dụng biến mảng, chơng trình chỉ ngắn gọn nh sau:</i>


<b>uses crt;</b>


<b>var i, Max: integer;</b>


<b> A: array[1..5] of integer;</b>
<b>begin</b>



<b>clrscr;</b>


<b>for i:=1 to 5 do</b>


<b> begin write('Nhap so thu ',i,':'); readln(A[i]) end;</b>
<b>Max:=a[1];</b>


<b>for i:=2 to 5 do If Max<a[i] then Max:=a[i];</b>
<b>writeln('So lon nhat: ',Max);</b>


<b>end.</b>


<i>Lu ý. Xem cách viết chơng trình ngắn gọn hơn và không sử dụng biến mảng trong Bài tập 9, </i>
Bài 7. Tuy nhiên, cách viết đó sẽ không cho kết quả mong muốn nếu sau khi nhập giá trị của
các biến còn cần thực hiện các thao tác dữ liệu khác.


<i><b>2. Viết chơng trình sử dụng biến mảng để tính giá trị trung bình của tổng N số nguyên đợc nhập</b></i>
vào từ bàn phím.


<b>uses crt;</b>


<b>var N, i: integer;</b>
<b> TB: real;</b>


<b> A: array[1..100] of real;</b>
<b>begin</b>


<b>clrscr;</b>



<b>write(’Nhap so phan tu cua mang, n= ’); read(n);</b>
<b>for i:=1 to n do</b>


<b> begin </b>


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

<b> end;</b>
<b>TB:=0;</b>


<b>for i:=1 to n do TB:=TB+a[i];</b>
<b>TB:=TB/n;</b>


<b>write(’Trung binh bang ’,TB);</b>
<b>end.</b>


</div>

<!--links-->

Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×