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

tuaàn tröôøng thcs nguyeãn ñöùc öùng tin hoïc 8 tuaàn 1 ngaøy soaïn tieát 1 ngaøy daïy phaàn i laäp trình caên baûn baøi 1 maùy tính vaø chöông trình maùy tính i muïc tieâu 1 kieán thöùc bieát con ngö

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.66 MB, 101 trang )

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

<i>Tuần: 1</i> <i>Ngày soạn :</i>


<i>Tieát : 1</i> <i>Ngày dạy :</i>


<i><b>Phần I:</b></i>

<i><b> LẬP TRÌNH CĂN BẢN </b></i>



Bài 1:



MÁY TÍNH VÀ CHƯƠNG TRÌNH MÁY TÍNH


<b>I. Mục tieâu :</b>


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


- 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 giúp con người chỉ dẫn máy tính thực hiện nhiều cơng việc liên
tiếp một cách tự động để thực hiện các công việc hay giải một bài tốn cụ thể.


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


- Biết lấy ví dụ về một chương trình máy tính cơ bản.
<b>II. Đồ dùng dạy học:</b>


- Giáo án, SGK, sách tham khảo.
<b>III. Hoạt động dạy và học:</b>


<i><b>1. Ổn định nề nếp:</b></i>
<i><b>-</b></i> Giữ trật tự lớp học.
<i><b>-</b></i> Điểm danh sĩ số.
<i><b>2. Bài mới</b><b> :</b></i>



Giới thiệu bài mới:


<i><b>Hoạt động của giáo viên và học sinh</b></i> <i><b>Nội dung</b></i>
 <i><b>Hoạt động 1</b><b> : Con người ra lệnh cho máy tính</b></i>


<i>như thế nào?</i>


Gv: Chúng ta đã biết rằng máy tính là cơng cụ trợ
giúp con người để xử lý thông tin một cách rất
hiệu quả. Tuy nhiên máy tính thực chất chỉ là một
thiết bị đện tử vơ tri vơ giác. Để máy tính có thể
thực hiện một cơng việc theo mong muốn 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.


Gv lấy VD SGK.


Hs: Lấy thêm VD khác.


Hỏi: Để ra lệnh cho máy tính thực hiện cơng việc
nào đó ta phải làm gì?


Hs: Đưa ra một hoặc nhiều lệnh.
 <i><b>Hoạt động 2:</b><b> Ví dụ Robot quét nhà:</b></i>


Gv đưa ra hình vẽ như SGK, yêu cầu Hs thảo luận
nhóm đưa ra các lệnh để Robot đi nhặt rác.


<i><b>1. Con người ra lệnh cho máy tính như thế</b></i>
<i><b>nào?</b></i>



Vd: Nháy đúp chuột vào biểu tượng
phần mềm trên màn hình  ra lệnh cho
máy tính khởi động phần mềm.


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


<i><b>2. Ví dụ Robot quét nhà:</b></i>
B1: Tiến 2 bước


B2: Quay trái, tiến 1 bước
B3: Nhặt rác


B4: Quay phải, tiến 3 bước
B5: Quay trái, tiến 1 bước
B6: Bỏ rác vào thùng


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

Đại diện các nhóm trình bày.
Các nhóm khác nhận xét:


Gv nhận xét: Các cách làm có thể khác nhau
nhưng cùng chung mục đích: đi đến được vị trí
thúng rác và bỏ rác.


 <i><b>Hoạt động 3:</b><b> Viết chương trình ra lệnh cho máy</b></i>
<i>tính làm việc:</i>



Hs đọc mục 3 SGK, thảo luận nhóm để nhận xét
về cấu trúc một chương trình.


Gv: Để Robot làm việc nhanh chóng thay vì đi
theo chỉ dẫn từng việc 6 lệnh trên hình vẽ trên sẽ
được tập hợp thành một chương trình giả sử đặt
tên là “Nhặt rác”; “Hãy quét nhà” Robot sẽ tự
động thực hiện 6 lệnh trên.


<i>Chú ý: Tên chương trình doo người sử dung đặt ra</i>
để dễ nhớ.


Gv: Đưa ví dụ chương trình như SGK rồi giới thiệu
cách thành phần của chương trình SGK.


Hỏi: Máy tính thực hiện các lệnh trong chương
trình như thế nào? (tuần tự)


Gv: Để chương trình chạy được, máy tính phải
hiểu được các lệnh viết trong chương trình – do đó
ta phải sử dụng ngơn ngữ gọi là ngơn ngữ lập
trình. Người viết chương trình gọi là lập trình viên.


lệnh để thực hiện yêu cầu cụ thể: Nhặt
rác.


<i><b>3. Vieát chương trình – ra leänh cho máy</b></i>
<i><b>tính làm việc:</b></i>



 Chương trình máy tính là một dãy các
lệnh mà máy tính có thể hiểu và thực
hiện được.


 Khi thực hiện chương trình, máy tính sẽ
thực hiện các lệnh trong chương trình
một cách tuần tự.


 Cơng việc viết chương trình được gọi là
lập trình.


<i><b>3. Củng cố</b><b> :</b></i>


Gv nêu câu hỏi:


<i><b>Hỏi: Con người ra lệnh cho máy tính như thế nào?</b></i>
Hs suy nghĩa trả lời


<i><b>Hỏi: Viết chương trình máy tính để làm gì?</b></i>


Hs: Là một dãy các lệnh mà máy tính có thể hiểu và thực hiện được.
<i><b>4. Dặn do</b><b> ø:</b></i>


- Về nhà học bài.


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

<i>Tuần: 1</i> <i>Ngày soạn :</i>


<i>Tiết : 2</i> <i>Ngày dạy :</i>


Bài 1:




MÁY TÍNH VÀ CHƯƠNG TRÌNH MÁY TÍNH (tt)


<i><b>I.</b></i> <b>Mục tieâu :</b>


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


- 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 giúp con người chỉ dẫn máy tính thực hiện nhiều cơng việc liên
tiếp một cách tự động để 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.


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


- Biết lấy ví dụ về một chương trình máy tính cơ bản.
<i><b>II.</b></i> <b>Đồ dùng dạy học:</b>


- Giáo án, SGK, sách tham khảo.
<i><b>III.</b></i><b>Hoạt động dạy và học:</b>


<i><b>1. Ổn định nề nếp:</b></i>
<i><b>-</b></i> Giữ trật tự lớp học.
<i><b>-</b></i> Điểm danh sĩ số.
<b>2.</b> <i><b>Bài mới</b><b> :</b></i>


Giới thiệu bài mới:


<i><b>Hoạt động của giáo viên và học sinh</b></i> <i><b>Nội dung</b></i>


 <i><b>Hoạt động 1</b><b> : Chương trình và ngơn ngữ lập </b></i>


<i>trình:</i>


<b>Gv: Chúng ta đã biết rằng để máy tính có thể xử</b>
lý, thơng tin đưa vào máy phải được chuyển đổi
thành dạng dãy bit (tổ hợp các kí hiệu 0 hoặc 1).
Như vậy, khác với con người trao đổi thông tin
băng ngôn ngữ tự nhiên (tiếng việt, tiếng anh,…)
máy tính: “nói” và “hiểu” bằng một ngơn ngữ
riêng đó gọi là ngôn ngữ máy.


<i><b>Hỏi: Ngôn ngữ máy là ngôn ngữ như thế nào?</b></i>
<b>Hs: Sử dụng dãy tổ hợp các ký hiệu 0 hoặc 1.</b>
<b>Gv: Người ta mong muốn có thể sử dụng được </b>
các từ có nghĩa (thường là tiếng anh). Dễ hiểu và
dễ nhớ để viết các câu lệnh thay cho các dãy bit
khô khan. Các ngôn ngữ lập trìnhh đã ra đời để
phục vụ mục đích đó.


<b>Gv: Như vậy, để tạo chương trình máy tính, </b>
chúng ta phải viết chương trình theo một ngơn
ngữ lập trình nào đó. Có thể nói, ngơn ngữ lập
trình là cơng cụ giúp để tạo ra các chương trình
máy tính.


Tuy nhiên, máy tính vẫn chưa thể hiểu được các


<i><b>1. Con người ra lệnh cho máy tính như thế </b></i>
<i><b>nào?</b></i>



<i><b>2. Ví dụ Robot quét nhà:</b></i>


<i><b>3. Viết chương trình – ra lệnh cho máy tính </b></i>
<i><b>làm việc:</b></i>


 Máy tính trao đổi thông tin bằng ngôn
ngữ riêng gọi là ngôn ngữ máy.


 Ngơn ngữ lập trình là ngơn ngữ dùng để
viết chương trình máy tính.


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

chương trình viết bằng ngơn gnữ lập trình.
Chương trình cịn cần được chuyển đổi sang ngơn
ngữ máy bằng một chương trình dịch tương ứng.
Kết quả nhận được sau bước 1 là danh sách các
lệnh được lưu thành một tệp văn bản trong may
tính; cịn kết quả bước 2 là một tệp có thể thực
hiện trên máy tính. Các tệp kết quả đó được gọi
chung là chương trình.


<i><b>Củng cố: Ngơn ngữ lập trình là gì? Ngơn ngữ lập</b></i>
trình ra đời nhằm mục đích gì? Chương trình dịch
là gì? Tại sao cần viết chương trình máy tính?
(Các cơng việc con người muốn máy tính thực
hiện rất đa dạng và phức tạp. Một lênh đơn giản
không đủ để chỉ dẫn cho máy tính. Vì thế người
ta cần viết nhiều lệnh và tập hợp lại trong một
chương trình).



<i><b>Hỏi: Việc tạo ra chương trình máy tính gồm mấy</b></i>
bước và la những bước nào?


<b>Gv: Giới thiệu môi trường lập trình:</b>


Chương trình soạn thảo và chương tình dịch
thường được kết hợp vào một phần mềm, được
gọi là mơi trường lập trình.


Ví dụ với ngơn ngữ lập trình Pascal có hai mơi
trường làm việc phổ biến là Turbo Pascal và
Free Pascal.


<b>Gv: Có rất nhiều ngơn ngữ lập trình khác nhau. </b>
Có thể kể tên một số ngơn ngữ lập trình phổ
biến hiện nay như C, Java, Visual…Mỗi ngơn ngữ
lập trình được tạo ra với định hướng sử dụng
trong một số lĩnh vực cụ thể và có lịch sử phát
triển, điểm mạnh, điểm yếu riêng.


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


 Tóm lại: Việc tạo ra chương trình máy
tính thực chất gồm 2 bước sau:


 Viết chương trình theo ngơn ngữ lập
trình;



 Dịch chương trình thành ngơn ngữ
máy để máy tính hiể được.


<b>3.</b> <i><b>Củng cố</b><b> :</b></i>


Hướng dẫn Hs trả lời câu hỏi và bài tập SGK
<b>4.</b> <i><b>Dặn do</b><b> ø:</b></i>


- Về nhà học bài.


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

<i>Tuần: 2</i> <i>Ngày soạn :</i>


<i>Tiết : 3</i> <i>Ngày dạy :</i>


Bài 2:

LÀM QUEN VỚI CHƯƠNG TRÌNH



NGƠN NGỮ LẬP TRÌNH


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


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


- Làm quen với chương trình đơn giản được viết bằng ngơn ngữ lập trình Pascal.
- Biết các thành phần cơ bản của ngơn ngữ lập trình.


- Biết cấu trúc chung của chương trình.


- Nhận biết một số từ khố, tên trong chương trình.
<i><b>2. Kỹ năng</b><b> :</b></i>



- Biết soạn thảo một chương trình trong mơi trường lập trình Turbo Pascal.
<b>II. Đồ dùng dạy học:</b>


- Giáo án, SGK, sách tham khảo.
<b>III. Hoạt động dạy và học:</b>


<i><b>1. Ổn định nề nếp:</b></i>
<i><b>-</b></i> Giữ trật tự lớp học.
<i><b>-</b></i> Điểm danh sĩ số.


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


Giới thiệu bài mới:


<i><b>Hoạt động của giáo viên và học sinh</b></i> <i><b>Nội dung</b></i>
 <i><b>Hoạt động 1</b><b> : Ví dụ về chương trình.</b></i>


<b>Gv giới thiệu chương trình Pascal đơn giản như</b>
VD1, giải thích câu lệnh trong chương trình, kết
quả chạy chương trình.


<b>Gv: Chương trình trên chỉ có năm câu lệânh, mỗi</b>
câu lệnh gồm các cụm từ được tạo từ các chữ
cái khác nhau. Trong thực tế có những chương
trình có thể có đến hàng nghìn hoặc thậm chí
hàng triệu câu lệnh.


<b>Gv: Trong các phần tiếp theo chúng ta sẽ tìm</b>
hiểu các câu lệnh được viết như thế nào?



 <i><b>Hoạt động 2:</b><b> Ngơn ngữ lập trình gồm những</b></i>
<i>gì?</i>


<b>Gv: Giống như ngơn ngữ tự nhiên ngơn ngữ lập</b>
trình có các chữ cái, quy tắc để ghép các chữ
cái thành một từ có nghĩa gọi là từ khố, ghép
các từ thành một câu lệnh. Từ đó ta có thể hiểu
ngơn ngữ lập trình là một tập hợp các ký hiệu
và quy tắc sao cho nó có thể viết được các 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.


<i>Chú ý: cần tuân thủ theo nguyên tắc rất nghiêm</i>
ngặt của ngơn ngữ lập trình.


<i><b>1. Ví dụ về chương trình:</b></i>


VD1: Chương trình đơn giản được viết bằng
ngơn ngữ lập trình Pascal


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


<i><b>I.</b></i> 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 và
tạo thành một chương trình chạy được trên
máy tính.


<i><b>II.</b></i>Ngơn ngữ lập trình gồm:


 Bảng chữ cái: thường gồm các chữ cái


tiếng anh và một số kí hiệu khác như
dấu phép tốn (+,-,*,/,…), dấu đóng mở
ngoặc, dấu nháy,…


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

 <i><b>Hoạt động 3:</b><b> Từ khố và tên</b></i>


<b>Gv: Từ khố của một ngơn ngữ lập trình là từ</b>
dành riêng, nga mục đích sử dụng cho ngơn
ngữ lập trình quy định khơng được dùng cho bất
cứ mục đích nào khác.


<b>Gv: Khi viết chương trình để giải các bài toán,</b>
ta thường thực hiện tính tốn với những đại
lượng khác nhau, ví dụ như so sánh chiều cao,
tính điểm trrung bình,… Các đại lượng này đều
phải được đặt tên. Tên do người lập trình đặt và
phải tn thủ quy tắc của ngơn ngữ lập trình
cũng như của chương trình dịch.


Vd: CT_dau_tien 1 tên dùng để đặt cho tên
chương trình.


<b>Gv: Tên trong chương trình được dùng để phân</b>
biệt và nhận biết. Tuy có thể đặt tên tuỳ ý,
nhưng để dễõ sử dụng nên đặt tên sao cho ngắn
gọn. Dễ nhớ và dễ hiểu.


<b>Hs đọc VD2 để hiểu cách đặt tên hợp lệ không</b>
hợp lệ.



<b>Gv cho Hs điền vào ô lựa chọn nhằm củng cố</b>
cách nhận biết tên hợp lệ, khơng hợp lệ, giải
thích?


lệnh thành chương trình.
<i><b>3. Từ khố và tên:</b></i>


 <i>Từ khố: Program, uses, begin, end,…</i>
Trong đó:


<i><b>I.</b></i> Program: khai báo chương trình.
<i><b>II.</b></i>Uses: khai báo các thư viện.


<i><b>III.</b></i> Begin, end: Leänh


bắt đầu và kết thúc chương trình.
 <i>Sử dụng tên trong chương trình:</i>
VD2: CT_dau_tien; a, b


<i><b>I.</b></i> Hai đại lượng khác nhau phải có tên
khác nhau.


<i><b>II.</b></i>Tên khơng được trùng với các từ khố.


<i><b>III.</b></i> Tên bắt đầu bằng


kí tự, khơng bắt đầu bằng chữ số, khơng
có khoảng trắng.


<i><b>3. Củng cố:</b></i>



<i><b>-</b></i> Gv hướng dẫn học sinh trả lời câu hỏi và bài tập SGK.
<i><b>4. Dặn dị:</b></i>


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

<i>Tuần: 2</i> <i>Ngày soạn :</i>


<i>Tiết : 4</i> <i>Ngày dạy :</i>


Bài thực hành 1:



LÀM QUEN VỚI TURBO PASCAL


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


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


- Bước đầu làm quen với mơi trường lập trình Turbo Pascal, nhận diện màn hình soạn thảo,
cách mở các bảng chọn và chọn lệnh.


- Gõ đượ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ả.
<i><b>2. Kỹ năng:</b></i>


- Biết soạn thảo một chương trình trong mơi trường lập trình Turbo Pascal.
<b>II.Đồ dùng dạy học:</b>


- Giáo án, SGK, sách tham khảo, máy tính.
<b>III.</b> <b>Hoạt động dạy và học:</b>


<i><b>1. Ổn định nề nếp:</b></i>


- Giữ trật tự lớp học.
- Điểm danh sĩ số.
<i><b>2. Bài mới:</b></i>


Giới thiệu bài mới:


<i><b>Hoạt động của giáo viên và học sinh</b></i> <i><b>Nội dung</b></i>
<i><b>Gv: Thao tác cách khởi động TP, gọi vài Hs lên</b></i>


làm.


<i><b>Gv: mơ tả màn hình TP – liên hệ với màn hình</b></i>
soạn thảo Word.


- Thanh tiêu đề (hình màu xnh có dịng chữ
Turbo Pascal): cho biết ta đang làm việc với
chương trình TP.


- Thanh bảng chọn: Chứa hầu hết các lệnh của
TP.


- Màn hình chính để soạn thảo bài lập trình.
- Thanh trợ giúp: Nằm ơ ûphía dưới màn hình.
<i>Cách 1: </i>


<i><b>Gv: Lưu ý: khi nhấn F10 xuất hiện màu xanh ở</b></i>
bảng chọn File (mở bảng chọn File) ấn enter thì


<b>Bài 1: Làm quen với việc khởi động và</b>
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.
<b>a. Khởi động Turbo Pascal bằøng một</b>
<b>trong hai cách:</b>


<i>Cách 1: Nháy đúp chuột trên biểu tượng</i>
Trên màn hình nền.


<i>Cách 2: Nháy đúp chuột trên tên tệp</i>
Turbo.exe trong thư mục chứa tệp này
(thương là thư mục con TP\ Bin)


<b>b. Mơ tả màn hình của Turbo Pascal:</b>
- Thanh tiêu đề.


- Thanh bảng chọn.


- Màn hình chính để soạn thảo bài lập
trình.


- Thanh trợ giúp.


<b>c. Mở bảng chọn:</b>
<i>Cách 1:</i>


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

bảng chọn thực sự được mở.


Ta có thể sử dụng các phím  và  để mở bảng
chọn tiếp theo.


<i><b>Hỏi: Mở bảng chọn File? Edit? Mô tả màn hình.</b></i>


<i><b>Hs: Trả lời</b></i>


<i>Cách 2: Nhấn tổ hợp phím Alt và phím tắt của</i>
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 File là F, bảng chọn Run là
R,…).


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.


<i><b>Củng cố: thao tác cách chạy chương trình TP, mơ </b></i>
tả màn hình, thực hiện mở bảng chọn bằng các
cách, thốt khỏi chương trình.


- Nhấn phím  hoặc 
- Nhấn phím enter
<i>Cách 2:</i>


- Alt + Phím chữ màu đỏ


Vd: Alt + F (mở bảng chọn File)


<b>d. Thốt khỏi Turbo Pascal: Alt+X</b>


<i><b>3. Củng cố:</b></i>


- GV yêu cầu Hs nhắc lại một số điều cần lưu ý trong bài lập trình.
<i><b>4. Dặn dò:</b></i>


- Về nhà học bài.



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

<i>Tuần: 3</i> <i>Ngày soạn :</i>


<i>Tiết : 5</i> <i>Ngày dạy :</i>


Bài 2:



LÀM QUEN VỚI CHƯƠNG TRÌNH


NGƠN NGỮ LẬP TRÌNH (tt)


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


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


- Làm quen với chương trình đơn giản được viết bằng ngơn ngữ lập trình Pascal.
- Biết các thành phần cơ bản của ngơn ngữ lập trình.


- Biết cấu trúc chung của chương trình.


- Nhận biết một số từ khố, tên trong chương trình.
<i><b>2. Kỹ năng:</b></i>


- Biết soạn thảo một chương trình trong mơi trường lập trình Turbo Pascal.
<b>II. Đồ dùng dạy học:</b>


- Giáo án, SGK, sách tham khảo.
<b>III. Hoạt động dạy và học:</b>


<i><b>1. Ổn định nề nếp:</b></i>
<i><b>-</b></i> Giữ trật tự lớp học.
<i><b>-</b></i> Điểm danh sĩ số.


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


Giới thiệu bài mới:


<i><b>Hoạt động của giáo viên và học sinh</b></i> <i><b>Nội dung</b></i>


 <i><b>Hoạt động 4:</b><b> Cấu trúc chung của chương trình.</b></i>
Hs nhắc lại ví dụ 1 hình 6.


<b>Gv chỉ từng dịng lệnh nói rõ tác dụng từng dịng</b>
lệnh đó, rút ra nhận xét về cấu trúc chương trình.
<b>Gv: Phần khai báo gồm hai lệnh khai báo tên</b>
chương trình là CT_dau_tien với từ khoá program
và khai báo thư viện crt với từ khoá uses.


<b>Gv: Phần thân rất đơn giản và chỉ gồm các từ khoá</b>
<i><b>begin và end. Cho biết điểm bắt đầu và điểm kết</b></i>
thúc phần thân chương trình. Phần thân chương
trình chỉ có một câu lệnh thực sự là writeln(‘chao
<i><b>cac ban’); để in ra màn hình dịng chữ CHAO</b></i>
CAC BAN.


<b>Hỏi: Nhắc lại cấu trúc chung của chương trình?</b>
<b>Hs trả lời.</b>


<b>Gv chú ý cho Hs: Tuỳ chương trình có thể khơng</b>
có phần khai báo nhưng phần thân bắt buộc phải
có. Tuy nhiên, nếu có phần khai báo phải được đặït
trước phần thân chương trình.



<i><b>1. Ví dụ về chương trình:</b></i>


<i><b>2. Ngơn ngữ lập trình gồm những gì?</b></i>
<i><b>3. Từ khố và tên:</b></i>


<i><b>4. Cấu trúc chung của chương trình:</b></i>
Gồm 2 phần chính:


 <i>Phần khai báo:</i>


<i><b>I.</b></i>Khai báo tên chương trình.


<i><b>II.</b></i> Khai baùo caùc


thư viện (chứa các lệnh viết sẵn
cần sử dụng trong chương trình) và
một số khai báo khác.


 <i>Phân thân: gồm các câu lệnh mà máy</i>
tính cần thực hiện.


<i><b>Chú ý:</b></i>


<i><b>III.</b></i> Phần khai báo


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

 <i><b>Hoạt động 5:</b><b> Ví dụ về ngơn ngữ lập trình.</b></i>
Gv chuẩn bị bài mẫu sẵn, thực hiện các thao tác
giống hình 8,9,10 SGK.


Gv gọi vài học sinh lên bảng thao tác theo, từ đó


cho học sinh nhận xét rút ra các thao tác viết và
chạy chương trình cụ thể trong mơi trường lập trình
Turbo Pascal.


Hs lên thực hiện.


<i><b>IV.</b></i> Phần thân bắt


buộc phải có.


<i><b>5. Ví dụ về ngơn ngữ lập trình. Ngơn ngữ</b></i>
<i><b>Pascal.</b></i>


Các thao tác viết và chạy chương trình
trong mơi trường Turbo Pascal:


<i><b>I.</b></i>Soạn thảo chương trình.


<i><b>II.</b></i> Kiểm tra lỗi


chính tả và cú pháp lệnh:F9.


<i><b>III.</b></i> Chạy chương


trình: CTRL + F9


<i><b>IV.</b></i> Đọc thơng báo


hoặc kết quả trên màn hình.
<i><b>3. Củng cố:</b></i>



Gv hướng dẫn học sinh trả lời câu hỏi và bài tập SGK.
<i><b>4. Dặn dị:</b></i>


<i><b>V.</b></i> Về nhà học bài.


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

<i>Tuần: 3</i> <i>Ngày soạn :</i>


<i>Tiết : 6</i> <i>Ngày dạy :</i>


Bài thực hành 1:



LÀM QUEN VỚI TURBO PASCAL (tt)


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


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


- Bước đầu làm quen với mơi trường lập trình Turbo Pascal, nhận diện màn hình soạn thảo,
cách mở các bảng chọn và chọn lệnh.


- Gõ đượ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ả.
<i><b>2. Kỹ năng:</b></i>


- Biết soạn thảo một chương trình trong mơi trường lập trình Turbo Pascal.
<b>II. Đồ dùng dạy học:</b>


- Giáo án, SGK, sách tham khảo, máy tính.
<b>III. Hoạt động dạy và học:</b>



<i><b>1. Ổn định nề nếp:</b></i>
<i><b>-</b></i> Giữ trật tự lớp học.
<i><b>-</b></i> Điểm danh sĩ số.
<i><b>2. Bài mới:</b></i>


Giới thiệu bài mới:


<i><b>Hoạt động của giáo viên và học sinh</b></i> <i><b>Nội dung</b></i>
<i><b>Gv: Chú ý cho Hs: </b></i>


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


 Tương tự như soạn thảo văn bản, khi soạn
thảo cũng có thể sử dụng mũi tên hoặc dùng
chuột để di chuyển con trỏ, nhấn phím enter
để xuống dịng, nhấn phím delete hoặc
<b>Backspace để xoá.</b>


 Câu lệnh uses crt được dùng để khai báo thư
viện crt, cịn lệnh clrscr có tác dụng xố màn
hình kết quả. Chỉ có thể sử dụng câu lệnh
<b>clrscr sau khi đã khai báo thư viện crt.</b>
<i><b>Gv: Sau khi ấn F2 màn hình hiện ra hộp hội thoại</b></i>


<i><b>Gv: Sau khi ấn ATL+F9 màn hình hiện ra</b></i>


<i><b>Gv: Ấn phím bất kì để đóng hộp thoại trên lại.</b></i>


<i><b>Gv: Sau khi ấn Ctrl+F9 hoặc Alt+F5 màn hình hiện</b></i>


<b>Bài tập 2: Soạn thảo, lưu dịch và chạy một</b>
chương trình đơn giản.


<b>a. Khởi động lại Turbo Pascal và gõ các</b>
<b>dòng lệnh dưới đây:</b>


<i>program Ct_dau_tien;</i>
<i>uses crt;</i>


<i>begin</i>


<i> clrscr;</i>


<i> writeln(‘ Chao cac ban’);</i>
<i> writeln(‘Toi la Trubo Pascal’);</i>
<i>end.</i>


<b>b. Lưu chương trình:</b>


- F2 (hoặc File  Save).


- Gõ tên tệp trong ô Save File As.
- Enter (hoặc OK).


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

ra


<i>Lưu ý: Nếu trước end có lệnh Readln; thì chỉ cần </i>
chạy chương trình (ctrl+f9) là nhìn thấy kết quả


mà khơng cần ấn Alt + f5.


Nhấn phím bất kì để quay lại màn hình soạn thảo.
Như vậy chúng ta đã biết được một chương trình
hồn chỉnh và chạy được.


<i><b>Củng cố: Nhắc lại các bước soạn thảo, lưu, dịch và</b></i>
chạy một chương trình đơn giản.


<i><b>Hs đọc đề bài phần a, cả lớp làm trên máy tính.</b></i>
<i><b>Hỏi: Đây là lỗi gì?</b></i>


<i><b>Hs: Thiếu Begin</b></i>


<i><b>Hs đọc đề bài phần b, cả lớp làm trên máy tính.</b></i>
<i><b>Hỏi: Đây là lỗi gì?</b></i>


<i><b>Hs: Thiếu không tìm thấy kết thúc tệp</b></i>


<i><b>Gv: Yêu cầu HS phát hiện điều cần lưu ý trong bài </b></i>
tập lập trình thông qua các lỗi trên.


<i><b>Gv: Qua các thơng báo lỗi trên, ta thấy rằng phần </b></i>
thân của một chương trình Pascal bao giờ cũng bắt
đầu từ khoá begin. Dấu chấm phẩy được dùng để
phân cách các câu lệnh trong Pascal. Riêng từ
khoá end kết thúc phần thân chương trình ln có
một dầu chấm đi kèm.


<b>e. Quan sát kết quả: Alt + F5</b>



<b>Bài 3: Chỉnh sửa chương trình và nhận biết</b>
một số lỗi.


<b>a. Xố dịng lệnh Begin</b>
Dịch chương trình
Quan sát thơng báo lỗi


<b>b. Nhấn phím bất kì</b>
Gõ lại lệnh begin


Xố dấu chấm sau chữ end.
Dịch chương trình.


<b>c. Thốt khỏi chương trình Alt+X </b>


<i><b>3. Củng cố:</b></i>


GV yêu cầu Hs nhắc lại một số điều cần lưu ý trong bài lập trình.
<i><b>4. Dặn dò:</b></i>


<i><b>I.</b></i> Về nhà học bài.


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

<i>Tuần: 4</i> <i>Ngày soạn: </i>


<i>Tiết: 7</i> <i>Ngày dạy:</i>


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

<i>Tuần: 4</i> <i>Ngày soạn: </i>


<i>Tiết: 8</i> <i>Ngày dạy:</i>



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

<i>Tuần: 5</i> <i>Ngày soạn: </i>


<i>Tiết: 9</i> <i>Ngày dạy:</i>


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

<i>Tuần: 5</i> <i>Ngày soạn: </i>


<i>Tiết: 10</i> <i>Ngày dạy:</i>


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

<i>Tuần: 6</i> <i>Ngày soạn :</i>


<i>Tiết : 11</i> <i>Ngày dạy :</i>


Bài 3:



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


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


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


- Biết khái niệm điều khiển tương tác với máy tính.
<i><b>2. Kỹ năng</b></i>


- Nhận biết dữ liệu thuộc kiểu dữ liệu.


- Biết lấy ví dụ tương tác giữa người và máy tính.:


<b>II. Đồ dùng dạy học:</b>


- Giáo án, SGK, sách tham khảo, máy tính.
<b>III. Hoạt động dạy và học:</b>


<i><b>1. Ổn định nề nếp:</b></i>
<i><b>-</b></i> Giữ trật tự lớp học.
<i><b>-</b></i> Điểm danh sĩ số.
<i><b>2. Kiểm tra bài cũ:</b></i>


Câu 1:Ngơn ngữ lập trình bao gồm những gì?


Câu 2: Trình bày cấu trúc của chương trình lập trình.
<i><b>3. Bài mới:</b></i>


Giới thiệu bài mới: Máy tính là một sản phẩm trí tuệ của loại người, nó phục vụ cho rất
nhiều lĩnh vực của con người như giáo dục, y tế hay các ngành nghiên cứu khoa học….Vậy tại sao
máy tính lại được sử dụng rộng rãi như vậy nó phục vụ cho tất cả các lĩnh vực mà con người tham
gia. Để hiểu được điều này chung ta cùng học tiếp “Bài 3: Chương trình máy tính và dữ liệu”


<i><b>Hoạt động của giáo viên và học sinh</b></i> <i><b>Nội dung</b></i>
<i>Hoạt động 1: Tìm hiểu dữ liệu và kiểu dữ liệu.</i>


GV: Với mong muốn của con người thì ngày
càng muốn biến máy tính trở thành một sản
phẩâm trí tuệ cũng thơng minh như con người,
do đó con người đã đưa vào máy tính những
thơng tin rất đa dạng nên dữ liệu trong máy
tính cũng khác nhau.



GV: Để dễ dàng quản lí và tăng hiệu quả xử
lí của máy tính do đó các ngơn ngữ lập trình
thường phân chia dữ liệu thành các kiểu dữ
liệu khác nhau.


Hs: Laéng nghe.


GV: Để biết được trong ngơn ngữ lập trình
pascal. Dữ liệu được phân chia thành các kiểu
dữ liệu như thế nào? Thầy và các em cùng đi
vào “1. Dữ liệu và kiểu dữ liệu”


GV: Ghi bài lên bảng:


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


-Ngơn ngữ lập trình bao gồm các kí hiệu và các
quy tăc sao cho có thể “viết” được các câu 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>-Gồm 2 phần:</b>


+Phần khai báo: gồm: khai báo tên chương
trình, khai báo thư viện và một số khai báo khác.
+ Phần thân: Gồm các câu lệnh mà máy tính
cần thực hiện.


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



-Dịng chữ:”chao cac ban”.


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

GV: Máy tính là cơng cụ xử lí thơng tin, cịn
chương trình có tác dụng chỉ dẫn cho máy tính
cách thức xử lí thơng tin để có kết quả mong
muốn.


GV: Thơng tin rất đa dạng do đó dữ liệu trong
máy tính cũng rất đa dạng.


GV: Dữ liệu là gì?


GV: Dữ liệu là dịng chữ, số nguyên, số thực
vv..


GV: Vậy ai có thể cho ví dụ về dữ liệu trên.
Hs: 20007, 0,75,3.14..vv.


GV:Em đã được học trong chương trình Excel
dữ liệu có bao nhiêu kiểu dữ liệu cơ bản?
Hs: Kiểu dữ liệu số và dữ liệu ký tự.


GV: Nhận xét và chốt lại tương tự như Execl
ngơn ngữ lập trình cũng có 2 kiểu dữ liệu đó
là số, và kí tự. Trong kiểu dữ liêu số phân
chia thành dữ liệu số nguyên, số thực.--> Kiểu
dữ liệu.


GV: Hãy quan sát bảng sau và cho biết những


dữ liệu ở cột 2 thuộc dữ liêu kiểu gì?


Stt Dữ liệu Kiểu số Kiểu xâu


1 54321


2 ‘54321’


3 123,32


4 ‘8a’


Hs: dòng 1 dữ liệu số, dòng 2 dữ liệu chuổi,
dòng 3: số, dịng 4: kí tự.


GV: Nhận xét : Dịng 1 dữ liệu số, dòng 2 dữ
liệu dạng chuổi, dòng 3 dữ liệu số, dịng 4 dữ
liệu kí tự


GV: Giải thích tên, kiểu dữ liệu, kí hiệu,
phạm vi giá trị.


<i>Hoạt động 2 :Tìm Hiểu Các Phép Tốn Với</i>
<i>Dữ Liệu số:</i>


GV: Trong chương trìn tốn học của chúng ta
có các phép tốn cơ bản nào?


Hs: Trả lời.



GV: Tương tự như trong tốn học, trong ngơn
ngữ lập trình cũng có các phép tốn tương tự,
ngồi ra trong ngơn ngữ lập trình cịn có phép
tốn mod và phép tốn div.


GV: Cho học sinh ghi bảng


GV: Giải thích các phép toán div và phép toán
mod


chia 3 bằng 642,50000.
 <b>Kiểu dữ liệu:</b>


<b>- Số nguyên: vd: 12345; -12345.vvv</b>
- Số thực: vd: 3,14; -123,456…vvv


-Xâu kí tự: Là dãy các chữ cái lấy từ ngơn ngữ
lập trình.


Vd:Chào các ban. Hoặc ‘1234’;


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


Các phép toán số học, số ngun, số thực trong
ngơn ngữ lập trình pascal.


<b>Tªn</b>


<b>kiĨu</b> <b>Phạm vi giá trị</b>



<b>integer</b> S nguyờn trong khong 215<sub> đến</sub>
215<sub></sub><sub> 1.</sub>


<b>real </b> Số thực có giá trị tuyệt đối trong
khoảng 2,910-39<sub> đến 1,7</sub><sub></sub><sub>10</sub>38 <sub>v</sub>
s 0.


<b>char</b> Một kí tự trong bảng chữ cái.


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

GV: Phép toán div là phép tốn lấy phần
ngun, cịn phép tốn mod là phép tốn lấy
phần dư.


GV: Lấy ví dụ về phép tốn mod và phép
tốn div.


GV: Ngồi ra ta có thể kết hợp các phép tốn
trên để tính nhiều phép tốn phức tạp hơn.
GV: Lấy vídụ:


GV: u cầu học sinh lên bảng biểu diễn các
phép toán trên trong ngôn ngữ lập trình


pascal. <sub>.5mod 3=2; -19 mod 4=-3; 5 div 3=1</sub>


<i><b>3. Củng cố:</b></i>


<i><b>I.</b></i> Trong ngơn ngữ lập trình có bao nhiêu kiễu dữ liệu?
<i><b>II.</b></i> Trình bày các phép tốn với dữ liệu kiểu số?



<i><b>4. Dặn dò:</b></i>


<i><b>III.</b></i>Về nhà học bài.


<i><b>IV.</b></i>Học thuộc bài và làm bài tập sgk.


<i>ab  c + d</i>
15 5


2
<i>a</i>
 


2
5


( 2)


3 5


<i>x</i> <i>y</i>


<i>x</i>


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









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


<b>Tên phép toán</b> <b>Kiểu dữ liệu</b>


+ cộng sè nguyªn, sè thùc
 trõ sè nguyªn, sè thùc
* nhân số nguyên, số thực
/ chia số nguyên, số thực
div chia lấy phần


nguyên


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

<i>Tuần: 6</i> <i>Ngày soạn: </i>


<i>Tiết: 12</i> <i>Ngày dạy:</i>


BÀI thực hành 2:



VIẾT CHƯƠNG TRÌNH ĐỂ TÍNH TỐN


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


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


- Chuyển được biểu thức toán học sang biểu diễn trong Pascal.
- Biết kiểu dữ liệu khác nhau thì được xử lý khác nhau.


- Hiểu phép tốn div, mod



- Hiểu thêm về các lệnh in dữ liệu ra màn hình và tạm dừng chương trình
<i><b>3. Kỹ năng</b></i>


- Nhận biết dữ liệu thuộc kiểu dữ liệu.


- Biết lấy ví dụ tương tác giữa người và máy tính.
<b>II. Đồ dùng dạy học:</b>


- Giáo án, SGK, sách tham khảo, máy tính.
<b>III. Hoạt động dạy và học:</b>


<i><b>1. Ổn định nề nếp:</b></i>
<i><b>-</b></i> Giữ trật tự lớp học.
<i><b>-</b></i> Điểm danh sĩ số.
<i><b>2. Kiểm tra bài cũ:</b></i>
<i><b>3. Bài mới</b><b> :</b></i>


Giới thiệu bài mới:


<i><b>Phương pháp</b></i> <i><b>Nội dung</b></i>


GV: Đưa nội dung u cầu của bài thực
hành lên màn chiếu:


<i>Bài 1.</i> Luyện tập gõ các biểu thức số học
trong chương trình Pascal.


- HS quan sát trên màn chiếu và thực
hành



- Yêu cầu HS quan sát bảng các
phép tốn và ví dụ.


- HS quan sát trên màn chiếu và thực
hành




<i>-Bài 1.</i> Luyện tập gõ các biểu thức số học trong chương
trình Pascal.


<i><b>a)</b></i> Tìm hiểu cách viết các phép toán số học với các số
được cho trong bảng cho dưới đây:


Phép tốn Kí hiệu trong
Pascal


Ví dụ


Cộng + 10+2


Trừ - 54-23


Nhân * 2*3


Chia / 15/3


Chia phần dư mod 22 mod 4



Chia phần
nguyên


div 25 div 6


Hãy viết các biểu thức toán học sau đây dưới dạng biểu
thức trong Pascal:


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

- Hãy viết các biểu thức toán học sau
đây dưới dạng biểu thức trong Pascal:
<i>Lưu ý</i>: Chỉ được dùng dấu ngoặc đơn để
nhóm các phép tốn.


? Khởi động Turbo Pascal và gõ chương
trình sau để tính các biểu thức trên:


<i>Lưu ý</i>:<i> </i> Các biểu thức Pascal được đặt
trong câu lệnh writeln để in ra kết
quả. Em sẽ có cách viết khác sau khi làm
quen với khái niệm biến ở <i>Bài 5</i>.


HS quan sát và thực hành trên máy cá
nhân.


b) 10 5 18


3 1 5 1






  ;


c)


2
(10 2)


(3 1)


 ;


d)


2
(10 2) 24


(3 1)


 


 .


<i><b>b)</b></i> Khởi động Turbo Pascal và gõ chương trình sau
để tính các biểu thức trên:


begin


writeln('15*4-30+12=',15*4-30+12);


writeln('(10+5)/(3+1)+18/(5+1)=',
(10+5)/(3+1)+18/(5+1));


writeln('(10+2)*(10+2)/(3+1)=',
(10+2)*(10+2)/(3+1));


write('((10+2)*(10+2)-24)/(3+1)=',
((10+2)*(10+2)-24)/(3+1));


readln
end.


<i><b>c)</b></i> Lưu chương trình với tên CT2.pas. Dịch, chạy
chương trình và kiểm tra kết quả nhận được trên
màn hình.


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


Nhắc lại câu lệnh :


 In thơng báo ra màn hình.
 Nhập dữ liệu từ bàn phím.
 Thơng báo kết quả tính tốn
 Tạm ngưng…..


<i><b>5. Dặn dò.</b></i>


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

<i>Tuần: 7</i> <i>Ngày soạn :</i>


<i>Tiết : 13</i> <i>Ngày dạy :</i>



Bài 3:



CHƯƠNG TRÌNH MÁY TÍNH VAØ DỮ LIỆU (tt)


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


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


- Biết khái niệm điều khiển tương tác với máy tính.
<i><b>2. Kỹ năng</b></i>


- Nhận biết dữ liệu thuộc kiểu dữ liệu.


- Biết lấy ví dụ tương tác giữa người và máy tính.:
<b>II. Đồ dùng dạy học:</b>


- Giáo án, SGK, sách tham khảo, máy tính.
<b>III. Hoạt động dạy và học:</b>


<i><b>1. Ổn định nề nếp:</b></i>
<i><b>-</b></i> Giữ trật tự lớp học.
<i><b>-</b></i> Điểm danh sĩ số.
<i><b>2. Kiểm tra bài cũ:</b></i>


<b>Câu 1:Hãy trình bày các kiểu dữ liệu trong ngơn ngữ lập trình.</b>



<b>Câu2:Hãy trình bày thứ tự ưu tiên của các phép tốn trong ngơn ngữ lập trình pascal và hãy </b>
nêu sự khác nhau của các phép toán trong tốn học và các phép tốn trong ngơn ngữ lập
trình.


<b>Câu3:Thế nào là phép tốn div và phép tốn mod?</b>
<i><b>3. Bài mới:</b></i>


Giới thiệu bài mới:


<b>Phương pháp</b> <b>Nội dung</b>


<b>Hoạt động 1: Vào Bài Mới:</b>


<b>GV: Ơû tiết trước cô đã giới thiệu dữ liệu các kiểu dữ </b>
liệu và các phép toán, thứ tự ưu tiên của các phép
toán


<b>GV: Vậy đối với trong tốn học ngồi thứ tự ưu tiên </b>
cịn có các phép tốn gì?


<b>Hs: Trả lời.</b>
<b>GV: Nhận xét.</b>


<b>GV: Tương tự như trong tốn học đội vơi ngơn ngữ </b>
lập trình cịn có các phép tốn so sánh.


<b>GV: Để hiểu các phép tốn so sánh được sử dụng </b>
trong ngơn ngữ lập trình pascal như thế nào ta sẽ đi
qua phần “3 Các phép so sánh”



<b>GV: Vậy các phép toán so sánh trong toán học bao </b>
gồm những phép tốn gì?


<b>Hs: Trả lời.</b>


<b>3/ các phép tốn so sánh: Kết quả của so sánh </b>
chỉ có thể đúng hoặc sai.


<b>KÝ</b>


<b>hiƯu</b> <b>PhÐp so s¸nh</b> <b>VÝ dơ </b>


= b»ng 5 = 5


< nhá h¬n 3 < 5
> lín h¬n 9 > 6


 kh¸c 6  5


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

<b>GV: Tương tự như trong toán học các phép toán so </b>
sánh trong ngơn ngữ lập trình cũng như vậy.


<b>GV: Cho học sinh ghi bảng các phép toán so sánh.</b>
<b>GV: Ghi bảng phần 3 các phép so sánh.</b>


Hs: Ghi baøi.


<b>Hoạt động 3: Giao tiếp người –máy tính.</b>


<b>GV: con người ngày càng có nhu cầu can thiệp vào </b>


máy tính, thực hiện kiểm tra tính tốn, thực hiện
kiểm tra điều chỉnh, bổ sung.


<b>GV: Ngược lại máy tính cũng cho thơng tin về q </b>
trình tính tốn, thơng báo gợi ý.


<b>GV: Quá trình trao đổi qua lại như vậy gọi lga giao </b>
tiếp giữ người mà máy.


<b>GV: Giới thiệu một số ví dụ:</b>


<b>GV: Khi gặp câu lệnh writeln(‘ Ban hay nhap nam </b>
sinh NS=’);


Màn hình xuất hiện:


<b>GV: Sau đó con trỏ nhấp nháy chờ nhập năm sinh từ </b>
bàn phím.


<b>GV: Muốn nhập hai cạch hình chữ nhật ta làm như </b>
thế nào hãy mơ tả màn hình?


<b>Hs: Trả lời.</b>
<b>GV: Nhận xét.</b>


<b>4/ Giao tiếp người- máy tính.</b>
<b>a/ Thơng báo kết quả tính tốn:</b>
write(‘dien tich hinh tron la’, x);
mà hình hiện ra:



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


writeln(‘Ban hay nhap nam sinh NS:’);
readln(Ns);


Màn hình xuất hiên:


<b>c/ Chương trình tạm dừng cho đến khi ấn </b>
<b>phím </b>


Write(‘ cac ban cho 2 giay nhe’); delay(2000)
<b>d/ Chương trình tam ngưng cho đến khi nhấn </b>
<b>phím enter.</b>


Writeln(‘so pi=’,pi);
Read;


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


Nhắc lại câu lệnh in thơng báo ra màn hình , Nhập dữ liệu từ bàn phím, thơng báo kết quả
tính tốn, tạm ngưng…..


<i><b>5. Dặn dò.</b></i>


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

<i>Tuần: 7</i> <i>Ngày soạn: </i>


<i>Tiết: 14</i> <i>Ngày dạy:</i>


Bài thực hành 2:




VIẾT CHƯƠNG TRÌNH ĐỂ TÍNH TỐN (tt)


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


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


- Chuyển được biểu thức toán học sang biểu diễn trong Pascal.
- Biết kiểu dữ liệu khác nhau thì được xử lý khác nhau.


- Hiểu phép toán div, mod


- Hiểu thêm về các lệnh in dữ liệu ra màn hình và tạm dừng chương trình
<i><b>2. Kỹ năng</b></i>


- Nhận biết dữ liệu thuộc kiểu dữ liệu.


- Biết lấy ví dụ tương tác giữa người và máy tính.
<b>II. Đồ dùng dạy học:</b>


- Giáo án, SGK, sách tham khảo, máy tính.
<b>III. Hoạt động dạy và học:</b>


<i><b>1. Ổn định nề nếp:</b></i>
<i><b>-</b></i> Giữ trật tự lớp học.
<i><b>-</b></i> Điểm danh sĩ số.
<i><b>2. Kiểm tra bài cũ:</b></i>
<b>3.</b> <i><b>Bài mới</b><b> :</b></i>


Giới thiệu bài mới:


<i><b>Phương pháp</b></i> <i><b>Nội dung</b></i>



GV: Đưa nội dung yêu cầu của bài
thực hành lên màn chiếu:


<i>Bài 2.</i> Tìm hiểu các phép chia lấy phần
nguyên và phép chia lấy phần dư với
số nguyên. Sử dụng các câu lệnh tạm
ngừng chương trình.


- HS quan sát và thực hành trên máy cá
nhân.


<i>Bài 2.</i> Tìm hiểu các phép chia lấy phần nguyên và phép
chia lấy phần dư với số nguyên. Sử dụng các câu
lệnh tạm ngừng chương trình.


<i><b>a)</b></i> Mở tệp mới và gõ chương trình sau đây:


begin


writeln('16/3 =', 16/3);


writeln('16 div 3 =',16 div 3);
writeln('16 mod 3 =',16 mod 3);
end.


<i><b>b)</b></i> Dịch và chạy chương trình. Quan sát các kết quả
nhận được và cho nhận xét về các kết quả đó.
<i><b>c)</b></i> Thêm các câu lệnh thích hợp để có chương trình
sau:



uses crt;
begin


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

<i>Bài 3.</i> Tìm hiểu thêm về cách in dữ
liệu ra màn hình.


Mở lại tệp chương trình CT2.pas và
sửa ba lệnh cuối (trước từ khoá end.)
thành:


- HS quan sát và thực hành trên máy cá
nhân.


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


writeln('16 div 3 =',16 div 3);
delay(5000);


writeln('16 mod 3 =',16 mod 3);
delay(5000);


end.


<i>Lưu ý</i>: Câu lệnh uses crt; được dùng để khai báo
thư viện crt, còn lệnh clrscr; sẽ xóa màn hình.
Câu lệnh clrscr; chỉ sử dụng được sau khi khai báo
thư viện crt.



<i><b>d)</b></i> Dịch và chạy chương trình. Quan sát chương trình
tạm dừng 5 giây sau khi in từng kết quả ra màn hình.


<i><b>e)</b></i> Thêm câu lệnh readln vào chương trình (trước
từ khố end.). Dịch và chạy lại chương trình. Quan sát
kết quả hoạt động của chương trình. Nhấn phím Enter
để tiếp tục.


<i>Bài 3.</i> Tìm hiểu thêm về cách in dữ liệu ra màn hình.
Mở lại tệp chương trình CT2.pas và sửa ba lệnh cuối
(trước từ khố end.) thành:


writeln((10+5)/(3+1)+18/(5+1):4:2);
writeln((10+2)*(10+2)/(3+1):4:2);
writeln(((10+2)*(10+2)/4)/(3+1):4:2);


Dịch và chạy lại chương trình. Quan sát kết quả trên
màn hình và rút ra nhận xét của em.


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


Nhắc lại câu lệnh :


 In thơng báo ra màn hình.
 Nhập dữ liệu từ bàn phím.
 Thơng báo kết quả tính tốn
 Tạm ngưng…..


<i><b>5. Dặn dò.</b></i>



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

<i>Tuần: 8</i> <i>Ngày soạn: </i>


<i>Tiết: 15</i> <i>Ngày dạy:</i>


BÀI TẬP


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


Giúp học sinh:


- Ơn lại các kiến thức đã học.
- Giải quyết một số bài tập.
<b>II. Chuẩn bị:</b>


- Giáo viên: chuẩn bị giáo án tốt.


- Học sinh: học bài cũ và xem trước bài mới.
<b>III. Tiến trình hoạt động:</b>


<b>1. Ổn định lớp:</b>


- Giữ trật tự lớp học.
- Kiểm tra sĩ số.
<b>2. Kiểm tra bài cũ:</b>


<b>Câu 1: Vẽ bảng kí hiệu của các phép so sánh trong ngơn ngữ Pascal.</b>
<b>Đáp án: bảng kí hiệu của các phép so sánh trong ngơn ngữ Pascal:</b>


Kí hiệu
trong
Pascal



Phép so


sánh tốn họcKí hiệu


= Bằng =


<> Khác #


< Nhỏ hơn <
<= Nhỏ hơn


hoặc bằng



> Lớn hơn >
>= Lớn hơn


hoặc bằng



<b>Câu 2: Nêu các tương tác giữa người vá máy tính?</b>
<b>Đáp án: Các tương tác giữa người vá máy tính:</b>


- Thơng báo kết quả tính tốn:
- Nhập dữ liệu:


- Tạm ngừng chương trình:
- Hộp thoại:



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


<b>Giới thiệu: Hơm nay chúng ta sẽ ôn lại một số kiến thức đã học và làm bài tập.</b>
<b>HOẠT ĐỘNG CỦA GIÁO VIÊN VAØ HỌC SINH</b> <b>NỘI DUNG</b>


 Hoạt động 1: Câu 2 (SGK/26).


Dãy chữ số 2010 có thể thuộc những kiểu dữ liệu
nào?


<b>BÀI TẬP</b>
<b>1. Câu 2 (SGK/26):</b>


- Biểu diễn số 2010 có thể dùng
kiểu dữ liệu số nguyên, số thực
hoặc kiểu xâu kí tự.


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

 Hoạt động 2: Câu 3 (SGK/26).


- Hãy phân biệt ý nghóa của các câu lệnh của các câu
lệnh Pascalsau đây:


Writeln(‘5+20=’, ‘20+5’);
Và Writeln(‘5+20=’, 20+5’);


- Hai lệnh sau có tương đương với nhau khơng? Tại
sao?


Writeln(‘100’);
Và writeln(100);



 Hoạt động 3: Câu 3.


Viết chương trình in ra tổng của hai số 5 và 15.


 Hoạt động4: Câu 4.


Viết chương trình in ra nhãn tên của em.


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.


<b>2. Caâu 3 (SGK/26):</b>


- Lệnh writeln(‘5+20=’, ‘5+20’);
Màn hình hiện ra 5+20=20+5.(in ra
màn hình hai xâu kí tự ‘5+20=’ và
‘5+20’ liền nhau.


- Lệnh writeln(‘5+20=’, 5+20);
Màn hình hiện ra 5+20=5.(in ra
màn hình xâu kí tự ‘5+20=’ va tổng
của 5+20).


- Hai leänh Writeln(‘100’); và
writeln(100); có tương đương nhau
vì màn hình cùng xuất hiện số 100.
<b>3. Câu 3:</b>



Program intong;
Begin


Writeln(‘Tong 15+5= ‘,15+5);
End.


<b>4. Caâu 4:</b>


Program nhanten;
Begin


Writeln(‘---‘);
Writeln(‘| Truong: |‘);
Writeln(‘| Mon: |’);
Writeln(‘| Lop: |’);
Writeln(‘| Ten: |’);
Writeln(‘| Nam hoc: |’);
Writeln(‘---‘);
End.


<b>4. Củng cố:</b>
<b>5. Dặn dò:</b>


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

<i>Tuần: 8</i> <i>Ngày soạn: </i>


<i>Tiết: 16</i> <i>Ngày dạy:</i>


BÀI 4:



SỬ DỤNG BIẾN TRONG CHƯƠNG TRÌNH



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


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


- Biết khái niệm biến ,hằng.


- Biết cách khai báo, cách đặt tên và cách sử dụng biến, hằng.
- Biết vai trị của biến, hằng trong lập trình.


- Hiểu lệnh gán.


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


- Biết áp dụng câu lệnh gán và các lệnh tính tốn được thực hiện trên biến, hằng vào bài tập
đơn giản.


<b>II.</b> <b>Đồ dùng dạy học:</b>


- Giaùo aùn, SGK, sách tham khảo, máy tính.


<b>III.</b> <b>Hoạt động dạy và học:</b>
<i><b>1.</b></i> <i><b>Ổn định nề nếp:</b></i>


<i><b>-</b></i> Giữ trật tự lớp học.
<i><b>-</b></i> Điểm danh sĩ số.
<i><b>2.</b></i> <i><b>Kiểm tra bài cũ:</b></i>


<i><b>Câu 1: Có mấy kiểu dữ liệu? Đó là những kiểu nào? Lấy ví dụ từng kiểu.</b></i>
<i><b>Câu 2: Viết câu lệnh để in ra câu “ Dien tich hinh tron la 30”; </b></i>



Viết câu lệnh in ra dòng chữ “Ban hãy nhập năm sinh NS=” và máy tính chờ
người dùng nhập năm sinh từ bàn phím.


<b>3.</b> <i><b>Bài mới</b><b> :</b></i>
Giới thiệu bài mới:


<b>Phương pháp</b> <b>Nội dung</b>


<i><b>Gv yêu cầu Hs viết một chương trình tính diện </b></i>
tích hình tròn có bán kính r=2.


<i><b>Hs lên bảng.</b></i>


<i><b>Gv nhận xét: giả sử chương trình như sau:</b></i>


<i><b>Gv: Như vậy nếu muốn tính diện tích của một </b></i>
hình trịn khác thì lại phải vào chương trình để
chỉnh sửa lại. Như vậy sẽ rất tốn thời gian, đó là
chưa kể người sử dụng phải biết lập trình, hiểu
được chương trình thì mới sửa chương trình
được. Việc địi hỏi người sử dụng phải biết lập
trình, sửa được chương trình là khơng thực tế.
<i><b>Gv: Vậy để tránh chỉnh sửa chương trình mỗi </b></i>
khi sử dụng thì cần viết một chương trình cho
phép người sử dụng nhập từ bàn phím bán kính
của hình trịn, sau đó tính tồn diện tích và hiển
thị kết quả ra màn hình.


<b>1. Biến là một công cụ trong lập trình.</b>



<i><b>Ví dụ: Viết chương tình tính diện tích hình tròn</b></i>
<i>có bán kính r=2.</i>


Begin


Write(‘Dien tich hinh tron co ban kinh
r=2 la: ‘,3.14*2*2);


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

<i><b>Hỏi: Muốn nhập được dữ liệu vào ta sử dụng</b></i>
câu lệnh gì?


<i><b>Hs: Readln(r);</b></i>


<i><b>Gv: Với câu lệnh …readln(r); khi thực hiện</b></i>
chương trình, người sử dụng có thể nhập giá trị
bán kính bất kì. Điều đó có nghiã là ơ nhớ r có
thể nhận các giá trị khác nhau phụ thuộc vào
người sử dụng. Và r được gọi là biến.


<i><b>Hỏi: Bán kính r có phải là một giá trị nhất định</b></i>
và duy nhất không?


<i><b>Hs: Không.</b></i>


<i><b>Gv: Giá trị của biến có thể thay đổi.</b></i>
<i><b>Hỏi: Biến là gì?</b></i>


<i><b>Hs: Biến được dùng để lưu trữ dữ liệu và dữ </b></i>
liệu được biến lưu trữ có thể thay đổi trong khi


thực hiện chương trình.


<i><b>Gv: Nhận xét. Và dữ liệu do biến lưu trữ được </b></i>
gọi là giá trị của biến.


<i><b>Gv: Có thể so sánh vai trị của biến đối với </b></i>
người viết chương trình giống như chiếc cọ vẽ
của người hoạ sĩ, hay chiếc bút của học sinh.
Rất nhiều bài tốn khơng thể viết được chương
trình để giải, nếu khơng sử dụng biến.


<i><b>Gv: Xét VD1: Ta sử dụng hai biến X và Y để </b></i>
lưu các giá trị tương ứng a và b bằng các phép
gán X 5 và Y 4. Sau đó có thể sử dụng
lệnh writeln(X+Y); để ghi kết quả ra màn hình.
<i><b>Gv giải thích phép gán: X  5: gán giá trị 5 cho</b></i>
biến X.


<i><b>Hỏi: Tương tự phép gán Y 4 thì sao?</b></i>


<i><b>Hs: Phép gán: Y 4: gán giá trị 4 cho biến Y.</b></i>
<i><b>Hỏi: writeln(X+Y); Câu lệnh trên in giá trị nào</b></i>
ra màn hình?


<i><b>Hs: X+Y cũng là 5+4</b></i>


<i><b>Gv: Xét Vd 2: Ta có thể tính các biểu thức này </b></i>
một cách trực tiếp. Tuy nhiên, để ý rằng tử số
trong các biểu thứclà như nhau. Do đó có thể
tính giá trị tử số và lưu tạm thời trong một biến


trung gian, sau đó thực hiện các phép tính.
<i><b>Hỏi: Giá trị x in ra lần 1, lần 2 là bao nhiêu</b></i>


<i><b>Gv nhấn mạnh: Cần phải khai báo biến, kiểu </b></i>
của biến trước. Ví dụ trên có thể gán giá trị cho


<i>b. Khái niệm biến</i>


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


<i><b>Vd 1: In hai giá trị tổng hai số 5+4 ra màn hình.</b></i>
Gán: X5 và Yb.


Writeln(X+Y);


<i><b>Vd 2: Tính giá trị các biểu thức</b></i>
(100+50)/3; (100+50)/5;


Và ghi kết quả ra màn hình.
Gán:


X100+50
XX/3;
Write(x);
XX/5;


Writeln(x);
<b>2. Khai báo biến</b>


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

biến và sử dụng biến trong tính tốn. Giá trị của
biến có thể thay đổi.


<i><b>Gv: Quan sát chương trình trên</b></i>


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.


<i><b>Gv lấy Vd Sgk</b></i>


<i><b>Hỏi: Các em có nhận xét gì về cách khai báo </b></i>
biến (Từ khố, tên biến, kiểu dữ liệu)


Lưu ý:


<i><b>-</b></i> Tên biến phải tuân theo quy tắc đặt tên của
ngơn ngữ lập trình.


<i><b>-</b></i> Tuỳ theo ngơn ngữ lập trình, cú pháp khai
báo biến có thể khác nhau.


<i><b>Hỏi: Muốn khai báo biến x, y kiểu nguyên; a,b </b></i>
khiểu thực, hoten kiểu string làm như thế nào?
<i><b>Hs lên bảng.</b></i>


<i><b>Gv nhaän xét và tóm ý.</b></i>



<i><b>Gv: Quay lại ví dụ tính diện tích đường trịn. </b></i>
Nhưng bán kính r sẽ được nhập từ bàn phím.
Chương trình của chúng ta sẽ được viết lại như
thế nào?


<i><b>Hỏi: Giả sử biến r là bán kính đường trịn. Vậy </b></i>
khai báo biến này như thế nào?


<i><b>Hs: Var r:integer; </b></i>


<i><b>Hỏi: Muốn để người dùng có thể nhập bán vào </b></i>
ta sử dụng lệnh gì?


<i><b>Hs: Readln(r);</b></i>


<i><b>Gv: Yêu cầu một học sinh lên viết câu lệnh.</b></i>
<i><b>Hs lên bảng:</b></i>


Write(‘Nhap ban kinh r = ‘);
Readln(r);


<i><b>Gv: Yêu cầu hs lên viết lệnh thông báo kết quả </b></i>
tính diện tích hình tròn có bán kính R.


<i><b>Hs lên bảng</b></i>


Write(‘Dien tich hinh tron la:‘,3.14*r*r);


<i><b>-</b></i> Khai báo tên biến;



<i><b>-</b></i> Khai báo kiểu dữ liệu của biến
<i>VD 1: </i>


<i><b>-</b></i> Var: Từ khoá dùng để khai báo.
<i><b>-</b></i> M,n: các biến kiểu nguyên (integer);
<i><b>-</b></i> S, diện tích: biến kiểu thực (real);
<i><b>-</b></i> Thơng báo: biến kiểu xâu (string);
<i>VD 2:</i>


Var x,y:integer;
a,b:real;
Hoten:string;


<i><b>Ví dụ: Viết chương tình tính diện tích hình trịn</b></i>
<i>có bán kính r nhập từ bàn phím.</i>


Program vidu;
Var r:integer;
Begin


Write(‘Nhap ban kinh r = ‘);
Readln(r);


Write(‘Dien tich hinh tron la:‘,3.14*r*r);
Readln;


End.


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



Nhắc lại câu lệnh :


 Biến là gì? Biến dùng để làm gì? Giá trị của biến như thế nào?
 Nhắc lại cách khai báo biến.


<i><b>5.</b></i> <i><b>Dặn dò.</b></i>


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

<i>Tuần: 9 </i> <i>Ngày soạn: </i>


<i>Tiết: 17</i> <i>Ngày dạy:</i>


Bài thực hành 3:



KHAI BÁO VAØ SỬ DỤNG BIẾN


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


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


 Thực hiện được khai báo đúng cú pháp, lựa chọn được kiểu dữ liệu phù hợp cho
biến.


 Kết hợp được giữa lệnh write(), writeln() với read(), readln() để thực hiện việc nhập
dữ liệu cho biến từ bàn phím.


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


- Hiểu về các kiểu dữ liệu chuẩn: kiểu số nguyên, kiểu số thực.
- Sử dụng được lệnh gán giá trị cho biến.



- Hiểu cách khai báo và sử dụng hằng.


- Hiểu và thực hiện đựoc việc tráo đổi giá trị của hai biến.
<b>II. Đồ dùng dạy học:</b>


- Giáo án, SGK, sách tham khảo, máy tính.
<b>III.Hoạt động dạy và học:</b>


<i><b>1. Ổn định nề nếp:</b></i>


 Giữ trật tự lớp học.
 Điểm danh sĩ số.
<i><b>2. Kiểm tra bài cũ</b></i>


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


<b>Giới thiệu bài mới: </b>


<i><b>Phương pháp</b></i> <i><b>Nội dung</b></i>


<b>Gv đưa ra bảng các kiểu dữ liệu trong Pascal:</b>
Giải thích tên kiểu dữ liệu, phạm vi giá trị
(các giá trị biến có thể nhận).


<b>Gv nêu cách khai báo biến, giải thích.</b>


<b>Gv lấy Vd SGK, giải thích VD.</b>
<b>Hỏi: Nếu khai báo Var x,y:byte;</b>


<i><b>1.</b></i> Các kiểu dữ liệu trong pascxal và khai báo biến


với kiểu dữ liệu:


<i><b>a. Bảng các kiểu dữ liệu trong pascal</b></i>


<i><b>b. Cú pháp khai báo biến:</b></i>


Var <danh sách biến>:<kiểu dữ liệu>;
Trong đó:


<i><b>-</b></i> <danh sách biến> là danh sách một hoặc
nhiều tên biến và được cách nhau bởi dấu
phẩy (,).


<i><b>-</b></i> <Kiểu dữ liệu> là một trong các kiểu dữ liu
ca pascal.


<i><b>Vớ duù:</b></i>


<i><b>-</b></i> Var x,y:byte;
<b>Tên kiểu</b>


<b>dữ liệu</b> <b>Phạm vi giá trÞ</b>


<b>Byte</b> Các số nguyên từ 0 đến 255.
<b>Integer</b> <sub>Các số nguyên từ </sub><sub></sub><sub>2</sub>15<sub> đến 2</sub>15 <sub></sub> 1.


<b>Real</b> Số thực có giá trị tuyệt đối trong khoảng
2,910-39<sub> đến 1,7</sub><sub></sub><sub>10</sub>38 <sub>và số 0.</sub>


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

Trong chương trình có các lệnh gán x:=256;


hay x:=-5; có được khơng?


<b>Hs: Khơng vì các giá trị đó nằm ngồi phamï</b>
vi dữ liệu Byte.


Tương tự với các kiểu dữ liệu khác.
Từ đó cho Hs rút ra nhận xét:


<i><b>-</b></i> Khai báo biến kiểu nàot hì giá trị của
biến nhận được phải nằm trong phạm
vi kiểu dữ liệu của biến đó.


<i><b>-</b></i> Hs lấy Vd cách khai báo biến, giải
thích Vd, lưu ý giá trị của biến ó thể
nhận được.


a. Hs đọc đề bài tốn. Soạn thảo bài lập
trình.


<b>Cơng thức: </b><i><b>tiền thanh tốn = đơn giá * số</b></i>
<i><b>lượng +phí dịch vụ</b></i>


b. Lưu chương trình với tên Tinhtien.pas.
Dịch và chỉnh sửa các lỗi gõ, nếu có.


c.Hs làm việc nhóm thực hành làm các câu
a,b,c,d.


<b>Hỏi: </b>



Nhóm 1: giải thích ý nghĩa từng câu lệnh.
Nhóm 2: Chạy chương trình với các bộ dữ liệu
(đơn giá và số lượng) như sau (1000,20);
(3500, 200); (18500, 123). Kiểm tra tính đúng
của các kết quả in ra.


Nhóm 3: Chaỵ chương trình với bộ dữ liệu (1,
35000). Quan sát kết quả nhậ được. Hãy thử
đoán lý do tại sao chương trình cho kết quả
sai?


<b>Hs: Khi nhập bộ số liệu (1, 35000), kết quả</b>
khơng cịn đúng nữa, ngun nhân của hiện
tượng này là do tràn số. Biến số lượng có kiểu
integer nên chỉ cho phép chứa giá trị trong
khoảng từ -32768 đến 32767, giá trị 35000
nằm ngoài phạm vi giá trị cho phép.


<b>Gv: Lưu ý giá trị biến có thể nhận được trong</b>
phạm vi giá trị kiểu dữ liệu của biến đó.


<i><b>-</b></i> Var songuyen:integer;
<i><b>-</b></i> Var chieucao,cannang:real;
<i><b>-</b></i> Var hovaten:string;


<i><b>Bài 1: Viết chương trình pascal có khai báo và sử</b></i>
dụng biến.


a. Chương trình:



<b>program </b>Tinh_tien;


<b>uses </b>crt;


<b>var</b>


<b> </b>soluong: integer;


dongia, thanhtien: real;
thongbao: string;


<b>const </b>phi=10000;


<b>begin</b>


clrscr;


thongbao:='Tong so tien phai thanh
toan : ';


{Nhap don gia va so luong hang}
write('Don gia = ');


readln(dongia);


write('So luong =
');readln(soluong);


thanhtien:= soluong*dongia+phi;
(*In ra so tien phai tra*)



writeln(thongbao,thanhtien:10:2);
readln


<b>end. </b>


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


Nhắc lại câu lệnh :


 In thơng báo ra màn hình.
 Nhập dữ liệu từ bàn phím.
 Thơng báo kết quả tính tốn
 Tạm ngưng…..


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

 Học thuộc bài và làm bài tập sgk.


<i>Tuần: 9</i> <i>Ngày soạn: </i>


<i>Tiết: 18</i> <i>Ngày dạy:</i>


BÀI 4:



SỬ DỤNG BIẾN TRONG CHƯƠNG TRÌNH (TT)


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


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


- Biết khái niệm biến ,hằng.



- Biết cách khai báo, cách đặt tên và cách sử dụng biến, hằng.
- Biết vai trị của biến, hằng trong lập trình.


- Hiểu lệnh gán.
<i><b>1. Kỹ năng</b></i>


- Biết áp dụng câu lệnh gán và các lệnh tính tốn được thực hiện trên biến, hằng vào bài tập
đơn giản.


<b>II. Đồ dùng dạy học:</b>


- Giáo án, SGK, sách tham khảo, máy tính.
<b>III. Hoạt động dạy và học:</b>


<i><b>1. Ổn định nề nếp:</b></i>


<i><b>-</b></i> Giữ trật tự lớp học.
<i><b>-</b></i> Điểm danh sĩ số.
<i><b>2. Kiểm tra bài cũ:</b></i>
<i><b>3. Bài mới:</b></i>


Giới thiệu bài mới:


<i><b>Phương pháp</b></i> <i><b>Nội dung</b></i>


<i><b>Gv Sau khi khai báo, ta có thể sử dụng các</b></i>
biến trong chương trình.


<i><b>Gv gới thiệu cách sử dụng biến: Tồn bộ các</b></i>
thao tác được thực hiện trên các biến nhớ là


gán giá trị cho biến và tính toán với các
biến.


Kiểu dữ liệu được gán cho biến phải trùng
với kiểu của biến và khi được gán một giá trị
mới, giá trị cũ của biến bị xố đi. Ta có thể
thực hiện việc gán giá trị cho biến lại bất kì
thời điểm nào, do đó giá trị của biến có thể
thay đổi.


Tuỳ theo ngơn ngữ lập trình, cách viết lệnh
gán cũng có thể khác nhau.


Ví dụ: Trong ngôn ngữ Pscal, người ta dùng
phép gán là dấu kép “:=” để phân biệt với
các phép so sánh là dấu bằng (=)


Lưu ý:


<i><b>-</b></i> Trong câu lệnh gán ta ghi := nghiã là gán
giá trị biểu thức ở bên phải dấu kép “:=”


<i><b>1.</b></i>
<i><b>2.</b></i>


<i><b>3. Sử dụng biến trong chương trình.</b></i>


Các thao tác được thực hiện trên các biến là:
<i><b>-</b></i> Gán giá trị cho biến.



<i><b>-</b></i> Tính tốn với các biến


Câu lệnh gán giá trị cho biến có dạng:


<i><b>Tên biến  Biểu thức cần gán giá trị cho biến</b></i>
Trong đó, dấu  biểu thị phép gán.


<i>Vd:</i>


X-c/d (biến x nhận giá trị bằng –c/b);
XY (biến X được gán giá trị của biến Y);
II+5 (biến I được gán giá trị hiện tại của
phép công thêm 5 đơn vị)


Trong NNLP Pascal phép gán kí hiệu laø :=
<i>Vd: </i>


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

cho biến ở bên trái dấu kép “:=”. Giá trị
ở biểu thức có thể là số, ký tự, phép tính.
<i><b>-</b></i> Biến và biểu thức phải cùng kiểu dữ liệu.
<i><b>Hỏi: Nêu cách khai báo biến? Cách sử dụng</b></i>
biến trong chương trình? Mơ tả lệnh gán?
Nêu chú ý?


<i><b>Gv: Ngồi cơng cụ chính để lưu trữ dữ liệu là</b></i>
biến, các ngơn ngữ lập trình cịn có cơng cụ
khác là hằng.


<i><b>Gv: Khác với biến, hằng là đại lượng có giá</b></i>
trị khơng đổi trong suốt q trình thực hiện


chương trình.


<i><b>Gv: Giống như biến, muốn sử dụng hằng, ta</b></i>
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. Giá trị này sẽ được sử dụng trong
suốt chương trình.


Vd: khi tính diện tích chu vi hình trịn ta
thường hay sử dụng hằng số Pi, khi bán kính
hình trịn thay đổi số Pi, khi bán kính hình
trịn thay đổi số Pi không thay đổi để đỡ tốn
thời gian phải gõ lại số Pi dạng hằng số. Quy
tắc đặt tên hằng giống quy tắc đặt tên biến.
Khai báo hằng Pi, bán kính.


Trong chương trình có các câu lệnh thay đổi
giá trị Pi, bán kính thì các câu lệnh đó khơng
hợp lệ.


<i><b>4. Hằng</b></i>


Là đại lượng có giá trị khơng thay đổi trong
suốpt chương trình;


Khai báo hằng:


<i><b>Const tên_hằng=giá_trị;</b></i>
<i>Vd: Const pi=3.14</i>



Bankinh=2;
Trong đó:


<i><b>-</b></i> Const: Từ khoá để khai báo.
<i><b>-</b></i> Pi, bankinh:tên hằng.


<i><b>-</b></i> 3.14 và 2 là các giá trị được gán ngay
cho các hằng đó.


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


Nhắc lại câu lệnh :


 Nêu cách khai báo biến?
 Nêu cách mô tả lệnh gán?
 Hằng là đại lượng như thế nào?
 Nêu cách khai báo hằng?


 Nêu sự giống và khác nhau giữ biến và hằng.
<i><b>5. Dặn dị.</b></i>


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

<i>Tuần: 10</i> <i>Ngày soạn:</i>


<i>Tiết: 19</i> <i>Ngày dạy:</i>


<b>Bài thực hành 3: KHAI BÁO VÀ SỬ DỤNG BIẾN (tt)</b>


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


Giúp học sinh:



- Hiểu về các kiểu dữ liệu chuẩn: kiểu số nguyên, kiểu số thực.
- Sử dụng được lệnh gán giá trị cho biến.


- Hiểu cách khai báo và sử dụng hằng.


- Hiểu va thực hiện được việc tráo đổi giá trị của hai biến.
<b>II. Chuẩn bị:</b>


- Giáo viên: chuẩn bị giáo án tốt.
- Học sinh: xem bài trước.


<b>III. Tiến trình hoạt động:</b>
<b>1. Ổn định lớp:</b>


- Giữ trật tự lớp học.
- Kiểm tra sĩ số.
<b>2. Kiểm tra bài cũ:</b>


<b>Câu 1: Các thao tác có thể thực hiện với biến là những thao tác nào?</b>
<b>Câu 2: Hãy nêu sự khác nhau giữa biến và hằng?</b>


<b>3. Bài mới:</b>
<b>Giới thiệu:</b>


<i><b>Hoạt động của giáo viên và học sinh</b></i> <i><b>Nội dung</b></i>


<b>? Giải thích nghĩa từng câu lệnh.</b>
<b>HS: Trả lời.</b>


<b>? Chạy chương trình với các bộ dữ liệu (đơn giá và</b>


số lượng) như sau (100,20), (3500,200),
(18500,123). Kiểm tra tính đúng của các kết quả in
ra màn hình.


<b>HS: Trả lời.</b>


<b>? Chạy chương trình với các bộ dữ liệu (1, 35000).</b>
Quan sát kết quả nhận được. Hãy đốn lí do tại sao
chương trình cho ra kết quả sai.


<b>HS: Trả lời.</b>


<b>GV: Lưu ý giá trị biến có thể nhận được trong</b>
phạm vi giá trị kiểu dữ liệu của biến đó.


HS đọc đề bài.


GV lấy ví dụ: có hai cốc nước A chứa mực đỏ, B
chứa mực xanh, hãy tráo đổi sao cho A chứa mực
xanh, B chứa mực đỏ.


<b>? Cách làm.</b>


Dùng cốc C khơng chứa gì làm trung gian.


<b>Bài thực hành 3: KHAI BÁO VÀ SỬ</b>
<b>DỤNG BIẾN (tt)</b>


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



Program hoan_doi;
Var x,y,z: integer;
Begin


Read(x,y);
Writeln(x,’ ‘,y);
z:=x;


x:=y;
y:=z;


writeln(x,’ ‘,y);
readln


end.
Bổ sung:


Program hoan_doi;
Var x,y,z: integer;
Begin


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

Caùch 1: A  C; B  A; C  B.
Caùch 2: B  C; A  B; C  A.


HS soạn thảo bài 2, chạy chương trình.


GV hướng dẫn HS cách nhập dữ liệu: nhập hai số
nguyên (cách nhau bởi dấu cách) rồi nhấn Enter và
quan sát kết quả.



GV hướng dẫn học sinh bổ sung các câu lệnh in
thông báo, in giá trị x, y trước và sau khi tráo đổi
giá trị.


Readln(x);


Write(‘Nhập giá trị biến y = ‘);
Readln(y);


Writeln(‘Truoc trao doi, gia tri cua bien x:
‘,x);


Writeln(‘Truoc trao doi, gia tri cua bien y:
‘,y);


{Bat dau thuc hien trao doi)
z:=x;


x:=y;
y:=z;


{Ket thuc trao doi}


Writeln(‘Sau trao doi, gia tri cua bien x: ‘,x);
Writeln(‘Sau trao doi, gia tri cua bien y: ‘,y);
readln


end.
<b>4. Kiểm tra, đánh giá:</b>



- Nhận xét kết quả thực hành.
- GV kiểm tra một số máy.
<b>5. Dặn dị:</b>


- Về nhà học bài.


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

<i>Tuần: 10</i> <i>Ngày soạn:</i>


<i>Tiết: 20</i> <i>Ngày dạy:</i>


BÀI TẬP


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


Giúp học sinh:


- Ơn lại các kiến thức đã học.
- Giải quyết một số bài tập.
<b>II. Chuẩn bị:</b>


- Giáo viên: chuẩn bị giáo aùn toát.


- Học sinh: học bài cũ và xem trước bài mới.
<b>III. Tiến trình hoạt động:</b>


<b>1. Ổn định lớp:</b>


- Giữ trật tự lớp học.
- Kiểm tra sĩ số.
<b>2. Kiểm tra bài cũ:</b>


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


<b>Giới thiệu: Hôm nay chúng ta sẽ ôn lại một số kiến thức đã học và làm bài tập.</b>
<i><b>Hoạt động của giáo viên và học sinh</b></i> <i><b>Nội dung</b></i>


Trong Pascal, khai báo nào sau đây là đúng?
a) var tb: real;


b) var 4HS: integer;
c) const x: real;
d) var R=30;


Hãy liệt kê các lỗi nếu có trong chương trình dưới đây
và sửa lại cho đúng:


Var a,b: integer; (1)
Const c:=3; (2)
Begin (3)


a:=200 (4)
b:=a/c; (5)
write(b); (6)
readln (7)
end. (8)


Hãy cho biết kiểu dữ liệu của các biến cần khai báo


<b>BÀI TẬP</b>
<b>1. Bài 4: SGK/33</b>



a) đúng.


b) tên biến sai (không được bắt đầu bằng
số.


c) cú pháp khai báo hằng sai (thay : bằng
=).


d) cú pháp khai báo sai (thay var bằng
const).


<b>2. Bài 5: SGK/33</b>
(1): dư dấu=
(2): dư dấu :
(3): đúng
(4): thiếu dấu ;
(5): sai kiểu dữ liệu
(6): đúng


(7): đúng
(8): đúng


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

dùng để viết chương trình để giải các bài tốn sau
đây:


a) Tính diện tích S của 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 từ bàn phím).


b) Tính kết quả c của phép chia lấy phần nguyên và


kết quả d của phép chia lấy phần dư của hai số
nguyên a và b.


a) var S: real;
a,h: integer;
b) var a,b,c,d: integer;
<b>4. Củng cố:</b>


<b>5. Dặn dò:</b>


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

<i>Tuần: 11</i> <i>Ngày soạn:</i>


<i>Tiết: 21</i> <i>Ngày dạy:</i>


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



<b>Ph</b>


<b> ầ n I : Trắc nghiệm: (4 điểm)</b>
<b>Câu 1</b>: Phát biểu nào sau đây <i>sai</i>? (0.5 đ)


a. Cấu trúc của chương trình gồm 2 phần chính: phần khai báo và phần thân chương trình.
b. Phần thân chương trình gồm các câu lệnh mà máy tính cần thực hiện.


c. Phần khai báo có thể khác nhau và phải đặt trước phần thân chương trình.
d. Phần khai báo và phần thân chương trình có thể có hoặc khơng.


<b>Câu 2:</b> Máy tính có thể <i>hiểu trực tiếp</i> ngơn ngữ nào trong các ngôn ngữ sau? (0.5 đ)
a. Ngôn ngữ tự nhiên b. Ngơn ngữ máy



c. Ngơn ngữ lập trình d. Ngơn ngữ lập trình và ngơn ngữ máy.


<b>Câu 3:</b> Hãy <i>ghép tên kiểu dữ liệu</i> (cột A) với phạm vi giá trị (cột B) cho phù hợp: (0.5 đ)


<b>Tên kiểu dữ liệu (cột A)</b> <b>Phạm vi giá trị (cột B)</b>


1. Byte a. Các kí tự trong bảng chữ cái


2. Integer b. Số thực trong khoảng -10-38 <sub>đến 10</sub>38
3. Real c. Các dãy gồm tối đa 255 kí tự


4. Char d. Số nguyên trong khoảng -32768 đến 32767.
5. String e. Các số nguyên từ 0 đến 255


Trả lời: 1. _______ 2________ 3_________ 4_________ 5
...


<b>Câu 4:</b> Trong các khai báo biến sau: (0.5 đ)
Var songuyen: integer;


3x: real;


So_thuc: real;
kitu:char;
Biến khai báo <i>không hợp lệ</i> là:


a. kitu: char; b. 3x: real;


c. so_thuc: real; d. songuyen: integer;



<b>Câu 5:</b> Cho chương trình sau: (0.5 đ)
Program CT4;


const a= 5;
begin
a:=3;
writeln(a+a);
readln;


end.


<i>Kết quả</i> khi thực hiện chương trình là:


a. 10 b. 8 c. 6 d. chương trình thơng báo lỗi.


<b>Câu 6:</b> Trong PasCal lệnh gán nào sau đây là <i><b>hợp lệ</b></i>? (0.5 đ)


a. x=100 b. x=x+1 c. x=x d. x:=x+1


<b>Câu 7:</b> Để <i>dịch chương trình</i> Pascal ta thực hiện thao tác sau: (0.5 đ)


a/ Nhấn Alt+F9 c/ Nhấn Alt+X


b/ Nhấn Alt+F5 d/ Nhấn Ctrl+F9


<b>Câu 8.</b> Các phép toán “+”, ”-“ ,“*” ,“/”, div và mod thực hiện được <i>trên dữ liệu kiểu</i>: (0.5 đ)
a/ Số thực b/ Số nguyên


c/ Xâu kí tự d/ Kí tự
e/ Tất cả các kiểu dữ liệu trên



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

<b>Câu 1:</b> Nêu các quy tắc đặt tên trong chương trình? (1 đ)


<b>Câu 2:</b> Cấu trúc chương trình gồm mấy phần? Gồm những phần nào? Phần nào là quan trọng
nhất? (1 đ)


<b>Câu 3:</b> So sánh sự giống nhau và khác nhau giữa biến và hằng trong chương trình?(2đ)


<b>Câu 4:</b> Viết biểu thức tốn học


3
2
2
3
2
1
5
2
4
3























 bằng các kí hiệu trong Pascal:(1 đ)


<b>Câu 5:</b> Hãy chỉ ra các câu có lỗi sai trong chương trình sau: (1đ)
Var x,y,z: integer; (1)


Const c:=10; (2)
Begin (3)
x:=2.5; (4)
y:=5; (5)


write ( ‘ z+ c =’, z +c); (6)
Readln; (7)


End (8)
<b>ĐÁP ÁN:</b>


<b>Ph</b>



<b> ầ n I : Trắc nghiệm: </b>


Caâu 1: d
Caâu 2: b


Caâu 3: 1.e, 2.d, 3.b, 4.c, 5.a
Caâu 4: b


Caâu 5: d
Caâu 6: d
Caâu 7: a
Caâu 8: b
<b>Ph</b>


<b> ầ n II: Tự luận:</b>


Câu 1: Quy tắc đặt tên trong chương trình:


Tên do người lập trình đặt phải tuân thủ các quy tắc của ngôn ngữ lập trình cũng như của
chương trình dịch và thỏa mãn:


- Tên khác nhau tương ứng với những đại lượng khác nhau.
- Tên khơng được trùng với từ khóa.


Câu 2: - Cấu trúc chương trình gồm hai phần.
- Gồm phần khai báo và phần thân.
- Phần thân quan trọng nhất.


Câu 3: Sự giống nhau và khác nhau giữa biến và hằng trong chương trình:
Giống nhau: - Đều là cơng cụ trong lập trình.



- Dùng để lưu trữ dữ liệu.


- Muốn sử dụng được đều phải khai báo.
Khác nhau:


Biến Hằng


- Giá trị của biến có thể thay đổi . - Giá trị của hằng không thay đổi.
- Từ khoá khai báo biến là Var. - Từ khoá khai báo hằng là Const.


- Biến phải khai báo kiểu dữ liệu của biến - Giá của hằng phải gán ngay trong phần khai
báo


Câu 4: ((3/4+2/5)-(1/2-3/2))*2/3
Câu 5: (1): đúng


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

(3): đúng


(4): sai kiểu dữ liệu( phải khai báo x là kiểu real)
(5): đúng


(6): chưa gán giá trị
(7): đúng


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

<i>Tuần: 11</i> <i>Ngày soạn:</i>


<i>Tiết: 22</i> <i>Ngày dạy:</i>


Bài 5: TỪ BÀI TỐN ĐẾN CHƯƠNG TRÌNH



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


Giúp học sinh:


- HS biết khái niệm bài tốn, thuật tốn.
- Biết các bước giải bài tốn trên máy tính.


- Xác định được Input, Output của một bài toán đơn giản.


- 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ể.
<b>II. Chuẩn bị:</b>


- Giáo viên: chuẩn bị giáo án tốt.


- Học sinh: học bài cũ và xem trước bài mới.
<b>III. Tiến trình hoạt động:</b>


<b>1. Ổn định lớp:</b>


- Giữ trật tự lớp học.
- Kiểm tra sĩ số.
<b>2. Kiểm tra bài cũ:</b>
<b>3. Bài mới:</b>


<b>Giới thiệu: Để biết được giải một bài toán ta phải hiện những thao tác nào.</b>
Những bước đó là gì, ta sẽ đi tìm hiểu bài hơm nay.


<i><b>Hoạt động của giáo viên và học sinh</b></i> <i><b>Nội dung</b></i>


Gv lấy ví dụ bài tốn như SGK.



- Tính tổng 100 số tự nhiên từ 1 đến 100.
- Tính tổng 2 số a, b.


HS lấy thêm VD khác.
? Bài tốn là gì.


Để giải quyết được một bài toán cụ thể, người ta cần
xác định bài táon, tức phát biểu rõ các điều kiện cho
trước và kết quả cần thu được.


? Tính tổng hai số a, b. Bài tốn cho ta điếu gì.
<b>HS: Trả lời.</b>


? Đáp số là gì.
<b>HS: Trả lời.</b>


<b>GV: muốn giải được bài tốn thì việc xác định bài</b>
tốn là rất quan trọng.


Mặc dù có nhiều tính năng ưu việt, song máy tính vẫn
chỉ là một cơng cụ trợ giúp con người trong xử lí
thơng tin. Máy tính chỉ có thể thực hiện các cơng việc
tiếp nhận, xử lí, biến đổi, tính tốn, lưu trữ và biểu
diễn thơng tin thành dạng cần thiết dưới sự chỉ dẫn


<b>Bài 5: TỪ BAØI TỐN ĐẾN CHƯƠNG</b>
<b>TRÌNH</b>


<b>1. Bài tốn và xác địng bài tốn:</b>



- Bài tốn là một cơng việc hay một nhiệm
vụ cần giải quyết.


- Để xác định một bài toán cụ thể ta cần
xác định rõ các điều kiện cho trước và kết
quả thu được.


VD: 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 đó.


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

của con người thơng qua các câu lệnh.


Do vậy việc dùng dùng máy tính giải một bài táon
nào đó chính là hướng dẫn cho máy tính dãy hữu hạn
các thao tác đơn giản mà nó có thể thực hiện được kết
qảu cần thu được.


Quá trình giải bài tốn trên máy tính gồm các bước
sau:


- Xác định bài toán: xác định rõ điều kiện cho trước
của bài tốn (thơng tin vào – INPUT) và kết quả cần
nhận được (thơng tin ra – OUTPUT).


- Xây dựng thuật tốn: Bao gồm việc lựa chọn và mô
tả các thao tác cùng trình tự thực hiện các thao tác đó
để giải bài tốn đã cho (tức mơ tả thuật tốn).



- Viết chương trình (lập trình): là diễn đạt (thể hiện)
thuật tốn bằng một ngơn ngữ lập trình cụ thể sao cho
máy tính có thể hiểu và thực hiện.


HS đọc, thảo luận VD 1, 2 SGK.


Nhiều công việc thường nhật chúng ta làm gần như
không cần phải suy nghĩ. Tuy nhiên, nếu hệ thống lại
ta có thể thấy thực chất đó là những thuật toán.


Cách liệt kê các bước như VD 1, 2 là một phương
pháp thường dùng để mô tả thuật tốn. Trong các
thuật tốn được trình bày tiếp theo, nếu khơng có các
u cầu nào khác , các bước của thuật tốn được thực
hiện một cách tuần tự theo trình tự như đã được chỉ ra.
Mặc dù không được nêu rõ trong khái niệm thuật
toán, song thuật toán phải được mơ tả đủ cụ thể để
bất kì đối tượng nào thực thi thuật toán, với cùng khả
năng và điều kiện như nhau, cũng đều thu được kết
quả như nhau.


VD 3: GV lấy VD bài toán cụ thể như 2*x+3=0 
x=-3/2.


Sau đó lấy ví dụ các trường hợp đặc biệt b=0; c#0
hoặc b=0; c=0. Từ đó đưa ra thuật tốn giải PT bậc
nhất


<b>2. Q trình giải bài tốn trên máy tính:</b>


Q trình giải bài tốn trên máy tính gồm
các bước sau:


- Xác định bài tốn.
- Xây dựng thuật tốn.


- Viết chương trình (lập trình).


<b>3. Thuật tốn và mơ tả thuật tốn:</b>


VD: Giải phương trình bậc nhất dạng tổng
quát b + c = 0.


Input: Các số b và c.


Output: Nghiệm của phương trình bậc nhất.
Thuật tốn:


- Bước 1: Nếu b = 0 chuyển tới bước 3.
- Bước 2: Tính nghiệm của phương trình x
= -c/b và chuyển tới bước 4.


- Bước 3: Nếu c # 0, thơng báo phương
trình đã cho vơ nghiệm. Ngược lại (c=0),
thơng báo phương trình cho vơ số nghiệm.
- Bước 4: Kết thúc.


* Thuật toán là dãy hữu hạn các thao tác
cần thực hiện theo trình tự xác định để thu
được kết qảu cần thiết từ những điều kiện


cho trước.


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


1. Bài tốn là gì? Để giải quyết một bài toán ta cần xác định những gì?


2. Q trình giải bài tốn trên máy tính gồm những bước nào? Thuật tốn là gì?
<b>5. Dặn dị:</b>


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

<i>Tuần: 12</i> <i>Ngày soạn:</i>


<i>Tiết: 23</i> <i>Ngày dạy:</i>


Bài 5: TỪ BÀI TỐN ĐẾN CHƯƠNG TRÌNH (tt)


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


Giúp học sinh:


- Biết mơ tả thuật tốn bằng phương pháp liệt kê các bước.


- Hiểu thuật tốn tính tổng n số tự nhiên đầu tiên, tìm số lớn nhất của một dãy số.
<b>II. Chuẩn bị:</b>


- Giáo viên: chuẩn bị giáo aùn toát.


- Học sinh: học bài cũ và xem trước bài mới.
<b>III. Tiến trình hoạt động:</b>


<b>1. Ổn định lớp:</b>



- Giữ trật tự lớp học.
- Kiểm tra sĩ số.
<b>2. Kiểm tra bài cũ:</b>


1. Bài tốn là gì? Để giải quyết một bài tốn ta cần xác định những gì?


2. Q trình giải bài tốn trên máy tính gồm những bước nào? Thuật tốn là gì?
<b>3. Bài mới:</b>


<b>Giới thiệu: Để biết được giải một bài toán ta phải hiện những thao tác nào.</b>
Những bước đó là gì, ta sẽ đi tìm hiểu bài hơm nay.


<i><b>Hoạt động của giáo viên và học sinh</b></i> <i><b>Nội dung</b></i>


<b>GV: </b> Đưa ví dụ lên màn hình.


<b>HS: </b>Đọc bài tốn và xác định đầu vào, đầu ra của bài
toán viết bảng phụ.


<b>GV: </b> Nhận xét và đưa ra input, output trên màn hình.


<b>HS: </b>Nghiên cứu SGK để hiểu thuật toán


<b>GV: </b> Chiếu thuật tốn lên màn hình và phân tích


<b>GV: </b> Đưa bài tốn lên màn hình, u cầu HS đọc và
nghiên cứu.


<b>HS: </b>Xác định Input, Output.



<b>GV: </b>Cách đơn giản nhất để tính được tổng SUM là gì?


<b>HS: </b>Nêu cách của mình.


<b>GV: </b> Phân tích cách cộng dồn.


<b>GV: </b> Đưa màn hình :


+ Mơ phỏng thuật tốn tính tổng N số tự nhiên đầu tiên,


<b>Bài 5: TỪ BÀI TỐN ĐẾN</b>
<b>CHƯƠNG TRÌNH (tt)</b>
<b>4. Một số ví dụ về thuật tốn:</b>


<b>a. Ví dụ 2:</b> Tính diện tích của hình


(SGK)


<b>b. Ví dụ 3 :</b> Tính tổng của 100 số
tự nhiên đầu tiên.


* Xác định bài toán :


INPUT: Dãy 100 số tự nhiên đầu
tiên (từ 1 đến 100).


OUTPUT: Giá trị SUM = 1 + 2
+ ...+ 100


* Mơ tả thuật tốn :



Bước 1: Gán SUM  1; i  1.
Bước 2: Gán i  i + 1.


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

với N = 5 (trong SGK, N= 100).


Bước 1 2 3 4 5


i 1 2 3 4 5 6


i≤ N Đúng Đúng Đúng Đúng Đúng Sai


SUM 1 3 6 10 15 Kết


thúc


<b>HS: </b>Nghiên cứu SGK để đưa ra từng bước thuật toán.


<b>GV: </b> Đưa bài toán so sánh hai số lên màn hình.


<b>HS: </b>Nghiên cứu SGK và xác định bài tốn.
H: Mơ tả từng bước thuật toán.


<b>GV: </b> Nhận xét và chốt kiến thức trên màn hình.


<b>GV: </b> Đưa ví dụ lên màn hình.


<b>HS: </b>Đọc bài tốn và xác định đầu vào, đầu ra của bài
toán viết bảng phụ.



<b>GV: </b> Nhận xét và đưa ra input, output trên màn hình.


<b>HS: </b>Nghiên cứu SGK để hiểu thuật toán


<b>GV: </b> Chiếu thuật tốn lên màn hình và phân tích


<b>GV: </b> Đưa ví dụ


<b>HS: </b>Đọc và phân tích bài tốn -> tìm INPUT, OUTPUT.


<b>GV: </b> Nêu ý tưởng để sắp xếp x, y, z tăng dần?


<b>HS: </b>Nêu theo ý hiểu.


<b>GV: </b> Chiếu thuật tốn và phân tích.


<b>HS: </b>Đọc bài tốn và phân tích


<b>GV: </b> Yêu cầu H viết INPUT, OUTPUT của bài tốn?


<b>HS: </b>Viết giấy


<b>GV: </b> Thu và chiếu màn hình , nhận xét.


<b>HS: </b>Nghiên cứu SGK để hiểu mô tả thuật tốn


<b>GV: </b> Đưa màn hình :


+ Mơ phỏng thuật tốn tìm số lớn nhất trong dãy số cho
trước (SGK)



<b>HS: </b>Nghiên cứu để đưa ra từng bước thuật toán.


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 tốn.


<b>c. Ví dụ 4: </b>


Đổi giá trị của hai biến x và y cho
nhau.


(SGK)


<b>d. Ví dụ 5:</b> Cho hai số thực a và b.
Hãy ghi kết quả so sánh hai số đó,
chẳng hạn “a > b”, “a < b”, hoặc “a
= b”.


(SGK)


<b>e. Ví dụ 6 :</b>


Tìm số lớn nhất trong dãy A các số
a1, a2, ..., an cho trước.


* Xác định bài toán :


INPUT: Dãy A các số a1, a2, ..., an
(n  1).



OUTPUT: Giá trị MAX = MAX
{a1, a2, ..., an }.


* Mơ tả thuật tốn :


Bước 1: Nhập số n và dãy A; gán
MAX  a1; i  0.


Bước 2: i  i + 1.


Bước 3: Nếu i > n, kết thúc thuật
tốn (khi đó MAX là giá trị phần tử
lớn nhất của dãy A). Trong trường
hợp ngược lại (i ≠ n), thực hiện
bước 4.


Bước 4: Nếu ai > MAX, thay đổi
giá trị MAX: MAX  ai rồi chuyển
về bước 2. Trong trường hợp
ngược lại (MAX  ai), giữ nguyên
MAX và chuyển về bước 2.


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


Qua tiết học em đã được làm quen với những bài toán nào ?
<b>5. Dặn dò:</b>


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

<i>Tuần: 12</i> <i>Ngày soạn:</i>



<i>Tiết: 24</i> <i>Ngày dạy:</i>


BÀI TẬP


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


Giúp học sinh:


- Ơn lại các kiến thức đã học.
- Giải quyết một số bài tập.
<b>II. Chuẩn bị:</b>


- Giáo viên: chuẩn bị giáo án toát.


- Học sinh: học bài cũ và xem trước bài mới.
<b>III. Tiến trình hoạt động:</b>


<b>1. Ổn định lớp:</b>


- Giữ trật tự lớp học.
- Kiểm tra sĩ số.
<b>2. Kiểm tra bài cũ:</b>
<b>3. Bài mới:</b>


<b>Giới thiệu: Hôm nay chúng ta sẽ ôn lại một số kiến thức đã học và làm bài tập.</b>
<i><b>Hoạt động của giáo viên và học sinh</b></i> <i><b>Nội dung</b></i>


Em hãy xác định Input, Output và mơ tả thuật tốn
tìm giá trị tuyệt đối của một số cho trước.


Trong thuật toán trên, chúng ta đã sử dụng một biến


trung gian là b để lưu giá trị tuyệt đối của a. tuỳ thuộc
vào mục đích sử dụng, ta có thể dùng ngay biến a để
lưu giá trị đó. Khi đó có thể “tiết kiệm” được một
biến, thuật toán như sau:


- Bước 1: Nhập số a.


- Bước 2: Nếu a < 0, gán a  -a


- Bước 3: In giá trị của a (giá trị tuyệt đối của a).
Hãy xác định Input, Output, mơ tả thuật tốn tìm số
lớn nhất trong ba số a, b, c và mơ phỏng thuật tốn
trên với bộ dữ liệu (3, 5, 7).


<b>BÀI TẬP</b>
<b>1. Bài 1:</b>


Input: Soá a.


Output: b(=|a|, giá trị tuyệt đối của
số a).


- Bước 1: Nhập số a.


- Bước 2: Nếu a < 0, gán b  -a;
ngược lại, gán b  a.


- Bước 3: In giá trị của b (giá trị
tuyệt đối của a).



<b>2. Baøi 2: </b>
Input: Ba soá a, b, c.


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

- Bước 1: Nhập ba số a, b, c.
- Bước 2: Gán Max  a.


- Bước 3: Nếu b> Max, gán
Maxb.


- Bước 4: Nếu c> Max, gán
Maxc.


- Bước 5: Thông báo kết qảu Max
và kết thúc thuật tốn.


Mơ phỏng thuật tốn trên với bộ
dữ liệu (5, 7, 4):


Bước a b c Số lớn


nhaát


1 3 5 7


2 3 5 7 3


3 3 5 7 5


4 3 5 7 7



5 3 5 7 7


<b>4. Củng cố:</b>
<b>5. Dặn dò:</b>


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

<i>Tuần: 13</i> <i>Ngày soạn:</i>


<i>Tiết: 25</i> <i>Ngày dạy:</i>


TÌM HIỂU THỜI GIAN VỚI PHẦN MỀM SUN TIMES


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


Giúp học sinh:


Biết được các thao tác để sử dụng phần mềm Sun Times.
<b>II. Chuẩn bị:</b>


- Giáo viên: chuẩn bị giáo án tốt.
- Học sinh: xem trước bài mới.
<b>III. Tiến trình hoạt động:</b>


<b>1. Ổn định lớp:</b>


- Giữ trật tự lớp học.
- Kiểm tra sĩ số.
<b>2. Kiểm tra bài cũ:</b>
<b>3. Bài mới:</b>


<i><b>Hoạt động của giáo viên và học sinh</b></i> <i><b>Nội dung</b></i>



Các thành phố được đánh dấu bởi các HCN màu trắng
tâm đỏ.


GV chỉ một địa điểm trên hình , giải thích các thông tin
hiện trên màn hình.


HS đọc, giải thích các thơng tin tại một vài địa điểm


<b>TÌM HIỂU THỜI GIAN VỚI PHẦN</b>
<b>MỀM SUN TIMES</b>


<b>1. Giới thiệu phần mềm:</b>


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.


<b>2. Màn hình chính của phần mềm:</b>
a. Khởi động phần mềm:


nháy đúp chuột vào biểu tượng
để khởi động phần mềm.


b. Màn hình chính:


màn hình chíh của phần mềm là bản
đồ các nước trên tồn thế giới:



- Vùng sáng – tối: Ban ngày – Ban
đêm.


- Đường vạch liền: ranh giới giữa ngày
và đêm còn gọi là đường phân chia
thời gian sáng tối.


- nhiều vị trí được đánh dấu: các thành
phố – thủ đơ các quốc gia.


c. Thốt khỏi phần mềm:
File  Exit hoặc Atl + F4
<b>3. Hướng dẫn sử dụng:</b>


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

khaùc.


HS đọc SGK, GV chỉ trên màn hình.
Hướng dẫn HS cách thay đổi thời gian.


GV giải thích đêm trắng, ngày đen, mô tả cụ thể trên
màn hình.




- Đánh dấu vùng cần quan sát.


- Nhấn giữ chuột phải nháy chuột và
kéo thả tại hai đỉnh của hình chữ nhật
này.



 Vùng bàn đồ đánh dấu được phóng
to.


b. Quan sát và nhận biết thời gian:
ngày và đêm:


- Vùng sáng: ban ngày.
- Vùng tối: ban đêm.


- Đường phân chia thời gian.


- Quan sát thời gian hiện thời các vị trí
trên trái đất theo đúng chiều thời gian
chuyển động.


c. Quan và xem thông tin chi tiết thời
gian của một thành phố:


nháy chuột lên vị trí đã đánh dấu trên
bản đồ.


d. Quan sát vùng đệm giữa ngày và
đêm:


- Vùng đệm sáng – tối: thời gian hiện
thời đang chuyển đổi sáng – tối.


- Giữa vùng đệm có đường vạch liền:
đường chỉ ra thời gian hiện thời mặt
trời mọc và mặt trời lặn tại đường


chân trời.


e. Đặt thời gian quan sát:


- Thay đổi thời gian: nháy chuột lên
nút lệnh trạng thái thời gian.


- Đêm trắng: mặt trời chưa kịp lặn hết
đã mọc.


- Ngày đen: mặc trời chưa kịp mọc đã
lặn.


<b>4. Một số chức năng chính khác:</b>
a. n/hiện hình ảnh bầu trời theo thời
gian:


Option  Maps  huỷ/chọn Show sky
color.


b. Cố định vị trí và thời gian quan sát:
Option  Maps  huỷ/chọn tại Hovers
Update.


c. Xem các vị trí có cùng thời gian
trong ngày giống nhau:


- Chọn 1 vị trí.


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

HS tìm các vị trí khác có cùng thời gian giống Hà Nội.


HS chọn vị trí khác – xem các vị trí khác có cùng thời
gian.


rise/Sunset.


d. Tìm kiếm và quan sát các vị trí Nhật
thực trên trái đất:


- Chọn vị trí muốn tìm nhật thực.
- View  Eclipse  cửa sổ sau hiện ra:


Find(future)/Find(past)


e. Quan sát chuyển động của thời gian:
<b>4. Kiểm tra, đánh giá:</b>


- Nhận xét kết quả thực hành.
- GV kiểm tra một số máy.
<b>5. Dặn dị:</b>


- Về nhà học bài.


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

<i>Tuần: 13</i> <i>Ngày soạn:</i>


<i>Tiết: 26</i> <i>Ngày dạy:</i>


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

<i>Tuần: 14</i> <i>Ngày soạn:</i>


<i>Tiết: 27</i> <i>Ngày dạy:</i>



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

<i>Tuần: 14</i> <i>Ngày soạn:</i>


<i>Tiết: 28</i> <i>Ngày dạy:</i>


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

<i>Tuần: 15</i> <i>Ngày soạn :</i>


<i>Tiết : 29</i> <i>Ngày dạy</i> <i>:</i>


<b>Bài 6 : CÂU LỆNH ĐIỀU KIỆN</b>



<b>I - MỤC TIÊU. </b>
<b>1. Kiến thức</b>


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


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


 Vận dụng được: Câu lệnh điều kiện dạng khuyết và dạng đủ


 Vận dụng thành thạo: Câu lệnh điều kiện vào việc giải bài tốn trong ngơn ngữ lập


trình Pascal.


<b>3. Tư duy và thái độ</b>


 Cẩn thận, chính xác trong việc xác định điều kiện trong câu lệnh.


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


 Phát triển tư duy suy luận logic, trí tưởng tượng và tạo được hứng thú trong học tập.
<b>II - CHUẨN BỊ :</b>


 <b>GV : Giáo án, bảng phụ tranh vẽ hình 32, máy tính(nếu có).</b>
 <b>HS : chuẩn bị bài cũ thật tốt, xem trước bài mới.</b>


<b>III - HOẠT ĐỘNG DẠY VAØ HỌC:</b>
<i><b>1. Ổn định nề nếp:</b></i>


<i><b>-</b></i> Giữ trật tự lớp học.
<i><b>-</b></i> Điểm danh sĩ số.


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


<i><b>Hỏi: Nêu q trình giải bài tốn trên máy tính?</b></i>
<i><b>3. Bài mới:</b></i>


Giới thiệu bài mới:


<i><b>Hoạt động của giáo viên và học sinh</b></i> <i><b>Nội dung</b></i>


<b>1.</b> <b>Hoạt động phụ thuộc vào điều</b>
<b>kiện</b>


- GV: Cho ví dụ về một hoạt động phụ
thuộc điều kiện ?


- HS: Nếu chiều nay trời không mưa, em


sẽ đi chơi bóng.


HS: Nếu em bị ốm, em sẽ nghỉ học .
- GV: Từ “nếu” trong các câu trên được
dùng để chỉ một “điều kiện” và các hoạt
động tiếp theo sau sẽ phụ thuộc vào điều
kiện đó .


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


Các điều kiện : chiều nay trời không
mưa, em bị ốm.


- GV: Các hoạt động phụ thuộc điều
kiện : em sẽ đi chơi bóng, em sẽ nghỉ


<b>1. Hoạt động phụ thuộc vào điều kiện</b>
- Ví dụ: SGK trang 46


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

học. khi một điều kiện cụ thể được xảy ra. Điều kiện
thường là một sự kiện được mô tả sau từ "<i>nếu</i>".
<b>2.Tính đúng sai của các điều kiện</b>


- GV: Mỗi điều kiện nói trên đượ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 kiết quả kiểm tra
có thể là gì ?



<b>Điều</b>
<b>kiện</b>


<b>Kiểm tra</b> <b>Kết</b>
<b>quả</b>
<b>Hoạt</b>
<b>động</b>
<b>tiếp</b>
<b>theo</b>
Trời
mưa?


Long nhìn ra
ngồi trời và
thấy trời mưa.


Đúng Long ở
nhà
(không
đi đá
bóng).
Em bị


ốm?


Buổi sáng thức
dậy, em thấy
mình hồn toàn
khoẻ mạnh.



Sai Em tập
thể dục
buổi
sáng
như
thường
lệ.


<b>2.Tính đúng sai của các điều kiện</b>


 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 diều kiện
khơng thoả mãn.


 Ví dụ :


 Nếu nháy nút ở góc trên, bên phải cửa


sổ, (thì) cửa sổ sẽ được đóng lại.


 Nếu X>5, (thì hãy) in giá trị X ra màn


hình.


 Nếu nhấn phím Pause/Break, (thì) chương


trình (sẽ bị) ngưng.



<b>3. Điều kiện và phép so sánh</b>


- GV : Hãy cho biết kết quả của các
khẳng định (phép so sánh) sau đây :
* 1235 = 2463;


* 34 ≠ 3.4;


* - x2<sub> < 0 (với mọi x </sub>
 R);


* - x2<sub> ≤ 0 (với mọi x </sub>
 R);


* x ≥ 0 (với mọi x  R)


* 5 < 5;


- GV : Để 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 nào ? Các
phép so sánh có kết quả như thế nào?.
- HS: Trả lời


- GV : Trong việc mô tả thuật tốn và
lập trình, các phép so sánh thường
được sử dụng để biểu diễn các điều
kiện. 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 được thoả mãn.
- GV lấy ví dụ như sách giáo khoa.
- Tương tự, khi giải phương trình bậc
nhất dạng tổng quát bx + c = 0, để tính


<b>3.Điều kiện và phép so sánh</b>
<b> </b>


Trong việc mơ tả thuật tốn và lập trình, các
phép so sánh thường được sử dụng để biểu diễn
các điều kiện. 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 được thoả mãn.


<i><b>Ví dụ 1. Ta muốn chương trình in ra màn hình</b></i>
giá trị lớn hơn trong số hai giá trị của các biến <i>a</i>
và <i>b</i>. Khi đó giá trị của biến <i>a</i> hoặc <i>b</i> được in ra
phụ thuộc vào phép so sánh <i>a </i>> <i>b </i>là đúng hay
sai:


"Nếu <i>a </i>> <i>b</i>, in giá trị của biến <i>a </i>ra màn
hình;


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

nghiệm của phương trình chúng ta cần
kiểm tra các điều kiện được cho bằng
các phép so sánh b = 0 và c  0.


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


- Bài tập 2 SGK trang 50


<i><b>5. Dặn dò</b></i>


- Qua bài học HS cần:


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


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

<i>Tuần: 15</i> <i>Ngày soạn :</i>


<i>Tiết : 30</i> <i>Ngày dạy</i> <i>:</i>


Bài thực hành 4:



SỬ DỤNG CÂU LỆNH ĐIỀU KIỆN IF…THEN


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


Giúp học sinh:


- Viết được câu lệnh điều kiện if…then trong chương trình.


- Rèn được kĩ năng ban đầu về đọc các chương trình đơn giản và hiểu được ý nghĩa của thuật toán
sử dụng trong chương trình.


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


- Giáo viên: chuẩn bị giáo án tốt, phòng máy.
- Học sinh: học bài cũ và xem trước bài mới.


<b>III. Tiến trình hoạt động:</b>


<b>1. Ổn định lớp:</b>


- Giữ trật tự lớp học.
- Kiểm tra sĩ số.
<b>2. Kiểm tra bài cũ:</b>
<b>3. Bài mới:</b>


<i><b>Hoạt động của giáo viên và học sinh</b></i> <i><b>Nội dung</b></i>


GV đưa nội dung bài tập yêu cầuHS đọc và nêu u
cầu bài tốn.


<b>? Hãy mơ tả thuật toán để giải bài toán đã cho.</b>


<b>Bài thực hành 4: SỬ DỤNG</b>
<b>CÂU LỆNH ĐIỀU KIỆN IF…</b>


<b>THEN</b>


- Có thể sử dụng các câu lệnh if…
<i>then lồng nhau.</i>


- Sử dụng từ khoá and có thể kết
hợp nhiều phép so sánh đơn giản
thành một phép so sánh phức
hợp. Giá trị của phép so sánh này
là đúng khi và chỉ khi tất cả các
phép so sánh đơn giản đều đúng.


Ngược lại, nó có giá trị sai.


Ví dụ: (a>0) and (a<=5)


Từ khóa or cũng được sử dụng để
kết hợp nhiều phépso sánh đơn
giản. Giá trị của phép so sánh
này chỉ sai khi tất cả các phép so
sánh thành phần đều sai. Ngược
lại, nó có giá trị đúng.


<b>1. Bài 1:</b>


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

<b>HS: Trả lời.</b>


GV chốt lại và đưa ra thuật tốn.


GV yêu cầu HS quan sát và tìm hiểu ý nghóa chương
trình sắp xếp.


GV u cầu HS gõ chương trình vào máy.
<b>? Làm thế nào để dịch và chạy chương trình.</b>
<b>HS: Trả lời.</b>


<b>? Lưu chương trình như thế nào.</b>
<b>HS: Trả lời.</b>


GV yêu cầu HS dịch và chạy chương trình. Nhập các
bộ dữ liệu để thử chương trình, lưu chương trình với tên
Sap_xep.



phím.


Bước 2: nếu a<=b thì hiển thị ra
màn hình giá trị biến a trước rồi
đến giá trị biến b.


Bước 3: nếu b<a thì hiển thị ra
màn hình giá trị biến b trước rồi
đến giá trị biến a.


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


<b>4. Kiểm tra, đánh giá:</b>


- Nhận xét kết quả thực hành.
- GV kiểm tra một số máy.
<b>5. Dặn dị:</b>


- Về nhà học bài.


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

<i>Tuần: 16 </i> <i>Ngày soạn :</i>


<i>Tiết : 31</i> <i>Ngày dạy</i> <i>:</i>


<b>Bài 6 : CÂU LỆNH ĐIỀU KIỆN (tt)</b>



<b>I - MỤC TIÊU. </b>
<b>1. Kiến thức</b>



 Hiểu cấu trúc rẽ nhánh có hai dạng : Dạng thiếu và dạng đủ.


 Biết mọi ngơn ngữ lập trình 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à dạng đủ trong Pascal.
 Bước đầu viết được câu lệnh điều kiện trong Pascal.


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


 Vận dụng được: Câu lệnh điều kiện dạng khuyết và dạng đủ


 Vận dụng thành thạo: Câu lệnh điều kiện vào việc giải bài tốn trong ngơn ngữ lập


trình Pascal.


<b>3. Tư duy và thái độ</b>


 Cẩn thận, chính xác trong việc xác định điều kiện trong câu lệnh.
 Tập trung cao độ, nghiêm túc trong giờ học.


 Phát triển tư duy suy luận logic, trí tưởng tượng và tạo được hứng thú trong học tập.
<b>II - CHUẨN BỊ :</b>


 <b>GV : Giáo án, bảng phụ tranh vẽ hình 32, máy tính(nếu có).</b>
 <b>HS : chuẩn bị bài cũ thật tốt, xem trước bài mới.</b>


<b>III - HOẠT ĐỘNG DẠY VAØ HỌC:</b>
<i><b>1. Ổn định nề nếp:</b></i>


<i><b>-</b></i> Giữ trật tự lớp học.


<i><b>-</b></i> Điểm danh sĩ số.
<i><b>2. Kiểm tra bài cũ:</b></i>
<i><b>3. Bài mới:</b></i>


Giới thiệu bài mới:


<b>Hoạt động của giáo viên và học sinh</b> <b>Nội dung</b>
<b>4.Cấu trúc rẽ nhánh</b>


<b>- Chiếu hoặc treo ví dụ 2 SGK trang 48</b>
- GV: Gọi HS đọc đề và giải ví dụ 2
- HS giải ví dụ 2


- GV: Minh họa sơ đồ khối


<b>- Chiếu hoặc treo ví dụ 3 SGK trang 48</b>
- GV: Gọi HS đọc đề và giải ví dụ 3
- HS giải ví dụ 3


- GV: Minh họa sơ đồ khối


<b>4.Cấu trúc rẽ nhánh</b>
<i><b>Ví dụ 2. SGK trang 48 </b></i>


 <i>Cấu trúc rẽ nhánh dạng thiếu</i>.


<i><b>Ví dụ 3. SGK trang 48 </b></i>


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

- GV: Mọi ngơn ngữ lập trình đề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à đủ. Cấu trúc rẽ
nhánh giúp cho việc lập trình được linh
hoạt hơn.


<b>5. Câu lệnh điều kiện </b>
- GV:Từ ví dụ 2


<i><b>Nếu T ≥ 100 000 thì số tiền phải thanh </b></i>
tốn là 70%*T;


Tương ứng với câu lệnh trong TP
<i><b>If T ≥ 100 000 then 70%*T;</b></i>


 <i><b><sub>If < điều kiện > then < câu lệnh >;</sub></b></i>


- GV: Khi gặp câu lệnh này, chương
trình sẽ kiểm tra <i>điều kiện</i>. Nếu <i>điều</i>
<i>kiện</i> được thoả mãn, chương trình sẽ
thực hiện <i>câu lệnh</i> sau từ khoá then.
Ngược lại, câu lệnh đó bị bỏ qua.


<b>- Chiếu hoặc treo ví dụ 4 SGK trang 49</b>
- Chiếu hoặc treo ví dụ 5 SGK trang 49
- GV: Gọi HS đọc đề và giải ví dụ 5
- HS giải ví dụ 5


- Chiếu hoặc treo ví dụ 6 SGK trang 50
- GVHD HS giải ví dụ 6


- GV: Câu lệnh điều kiện <b>if…then…</b>


<b>else…</b> mơ tả trong ví dụ này là câu lệnh
điều kiện dạng đầy đủ.


 Câu lệnh điều kiện dạng đầy đủ của
Pascal có cú pháp:


<b>if </b><<i>điều kiện</i>> <b>then</b> <<i>câu lệnh 1</i>>


<b>else</b> <<i>câu lệnh 2</i>><b>;</b>


- GV: Lưu ý HS sau trước từ khóa else
khơng có dấu “;”


-GV: Với câu lệnh này, chương trình sẽ
kiểm tra <i>điều kiện</i>. Nếu <i>điều kiện</i> được
thoả mãn, chương trình sẽ thực hiện <i>câu</i>


<b>5. Câu lệnh điều kiện </b>


Trong Pascal, câu lệnh điều kiện dạng thiếu
được viết với các từ khoá if và<i>then như sau:</i>


<b>if</b> <<i>điều kiện</i>><b>then </b><<i>câu lệnh</i>><b>;</b>


<i><b>Ví dụ 4. SGK trang 49</b></i>


<b>if </b>a > b<b> then </b>write(a);


<i><b>Ví dụ 5. SGK trang 49</b></i>



readln(a);


<b>if </b>a>5<b> then </b>write('So da nhap khong hop le.');


<i><b>Ví dụ 6. SGK trang 50</b></i>
<b>Nếu </b>b  0 <b>thì tính kết quả</b>


<b> ngược lại thì thơng báo lỗi</b>


Dưới đây là câu lệnh Pascal thể hiện cấu trúc
rẽ nhánh dạng đủ nói trên:


<b>if </b>b<>0<b> then </b>x:=a/b


<b>else </b>write('Mau so bang 0, khong chia
duoc');


Câu lệnh điều kiện dạng đầy đủ của Pascal có
cú pháp:


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

<i>lệnh 1</i> sau từ khoá then. Trong trường
hợp ngược lại, <i>câu lệnh 2</i> sẽ được thực
hiện.


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


- Bài tập 5 SGK trang 51


- Bài tập 6 SGK trang 51
<i><b>5. Dặn dò</b></i>



- Qua bài học HS cần:


 Hiểu cấu trúc rẽ nhánh có hai dạng : Dạng thiếu và dạng đủ.


 Biết mọi ngơn ngữ lập trình 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à dạng đủ trong Pascal.
 Bước đầu viết được câu lệnh điều kiện trong Pascal.


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

<i>Tuần: 16</i> <i>Ngày soạn :</i>


<i>Tiết : 32</i> <i>Ngày dạy</i> <i>:</i>


Bài thực hành 4:



SỬ DỤNG CÂU LỆNH ĐIỀU KIỆN IF…THEN (TT)


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


Giuùp hoïc sinh:


- Viết được câu lệnh điều kiện if…then trong chương trình.


- Rèn được kĩ năng ban đầu về đọc các chương trình đơn giản và hiểu được ý nghĩa của thuật tốn
sử dụng trong chương trình.


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


- Giáo viên: chuẩn bị giáo án tốt, phòng máy.
- Học sinh: học bài cũ và xem trước bài mới.


<b>III. Tiến trình hoạt động:</b>


<b>1. Ổn định lớp:</b>


- Giữ trật tự lớp học.
- Kiểm tra sĩ số.
<b>2. Kiểm tra bài cũ:</b>
<b>3. Bài mới:</b>


<i><b>Hoạt động của giáo viên và học sinh</b></i> <i><b>Nội dung</b></i>
<b>? Nêu yêu cầu bài tập 2.</b>


<b>HS: Trả lời.</b>


<b>? Hãy nêu thuật tốn.</b>
<b>HS: Trả lời.</b>


GV đưa ra chương trình của bài 2 và yêu cầu HS tìm
hiểu ý nghóa các câu lệnh trong chương trình.


<b>? Theo em chương trình có lỗi gì khơng.</b>
<b>HS: Trả lời.</b>


HS thực hành gõ và lưu chương trình vào máy, cho dịch
và chạy.


HS cho chạy chương trình với các bộ dữ liệu mà SGK
yêu cầu.


<b>? Qua kết quả nhận được em thấy chương trình viết đã</b>


được chưa?


<b>HS: Trả lời.</b>


<b>? Hãy tìm chỗ chưa đúng để sữa chương trình.</b>
<b>HS: trả lời.</b>


<b>1. Baøi 2: </b>


Program ai_cao_hon;
Uese crt;


Var Long, Trang: real;
Begin


Clrscr;


Write9’Nhap chieu cao cua ban
Long: ’);


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

GV đưa ra nội dung bài tập 3.
<b>? Hãy nêu yêu cầu bài toán.</b>
<b>HS: Trả lời.</b>


<b>? Ba số dương có thể là độ dài ba cạnh của tam giác</b>
khi thoả mãn điều kiện gì.


<b>HS: Trả lời.</b>


GV đưa ra chương trình bài 3, yêu cầu các nhóm thảo


luận và tìm ý nghĩa các câu lệnh trong chương trình,
cho dịch và chạy với các bộ số tùy ý.


Write(‘Nhap chieu cao cua Trang:
‘);


Readln(Trang);


If Long>Trang than writeln(‘Ban
Long cao hon’);


If Long<Trang then writeln(‘Ban
Trang cao hon’)


Else writeln(‘Hai ban cao bang
nhau’);


Readln
End.


<b>2. Baøi 3:</b>


Program Ba_canh_tam_giac;
Uses crt;


Var a, b, c: real;
Begin


Clrscr;



Write(‘Nhap ba so a, b vaø c: ‘);
Readln(a,b,c);


If (a+b>c) and (b+c>a) and
(c+a>b) then


Writeln(‘a, b va c la 3 canh cua
mot tam giac!’)


Else writeln(‘a, b, c khong la 3
canh cua 1 tam giac’);


Readln
End.


<b>4. Kiểm tra, đánh giá:</b>


- Nhận xét kết quả thực hành.
- GV kiểm tra một số máy.
<b>5. Dặn dị:</b>


- Về nhà học bài.


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

<i>Tuần: 17</i> <i>Ngày soạn :</i>


<i>Tiết : 33</i> <i>Ngày dạy</i> <i>:</i>


KIỂM TRA 1 TIẾT


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



Kiểm tra việc lĩnh hội kiến thức của HS.
<b>II. Chuẩn bò:</b>


- Giáo viên: Đề kiểm tra.
- Học sinh: Học bài cũ, ơn tập.
<b>III. Tiến trình hoạt động:</b>


<b>GV phát đề cho HS:</b>


Khoa hằng ngày đi làm bằng xe máy, nếu xăng có giá 14500 đồng /lít tháng Khia chi x đồng
mua xăng. Khi xăng tăng giá lên 19000 đồng/lít, hỏi Khoa sẽ phải chi thêm một khoản tiền để mua
xăng là bao nhiêu? Hãy viết chương trình tính số tiền mà Khoa phải chi thêm để mua xăng.


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


Program muaxang;
Var x, y: real;
Begin


Write(‘So tien Khoa mua xang voi gia cu la: ‘);
Readln(x);


y:=19000*x/14500;


Writeln(‘So tien bo mua xang voi gia moi la: ‘,y:15:0);
writeln(‘So tien bo phai chi them mua xang la: ‘,y-x:115:0);
readln


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

<i>Tuần: 17</i> <i>Ngày soạn :</i>



<i>Tiết : 34</i> <i>Ngày dạy</i> <i>:</i>


ÔN TẬP


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


- Ơn lại các kiến thức đã học.
- Giải quyết một số bài tập.
<b>II. Chuẩn bị:</b>


- Giáo viên: chuẩn bị giáo án tốt.


- Học sinh: học bài cũ và xem trước bài mới.
<b>III. Tiến trình hoạt động:</b>


<b>1. Ổn định lớp:</b>


- Giữ trật tự lớp học, kiểm tra sĩ số.
<b>2. Kiểm tra bài cũ:</b>


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


<i><b>Hoạt động của giáo viên và học sinh</b></i> <i><b>Nội dung</b></i>
Hãy viết thuật tốn tìm số lớn nhất


trong 3 số a, b, c. em hãy mơ phỏng q
trình thực hiện thuật toán với các bộ dữ
liệu (3, 6, 10).


Em hãy xác định Input, Output và mô tả
thuật tốn tìm giá trị tuyệt đối của một


số cho trước.


<b>ÔN TẬP</b>
<b>Câu 1:</b>


Input: Ba số a, b, c.


Output: Max (=max{a, b, c}, là số lớn nhất trong ba số a,
b và c).


Bước 1. Nhập 3 số a, b, c.
Bước 2. Gán Maxa.


Bước 3. Nếu b>Max, gán Maxb.
Bước 4. Nếu c>Max, gán Maxc.


Bước 5. Thông báo kết quả Max và kết thúc thuật tốn.
Mơ phỏng:


Bước a b c Số lớn<sub>nhất</sub>


1 3 6 10


2 3 6 10 3


3 3 6 10 6


4 3 6 10 10


5 3 6 10 10



Caâu 2:
Input: Soá a;


Output: b(=|a|, giá trị tuyệt đối của số a).
Bước 1. Nhập số a.


Bước 2. Nếu a<0, gán b-a; ngược lại, gán ba.
Bước 3. In giá trị của b (giá trị tuyệt đối của a).
<b>4. Củng cố:</b>


<b>5. Dặn dò:</b>


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

<i>Tuần: 18</i> <i>Ngày soạn :</i>


<i>Tiết : 35</i> <i>Ngày dạy</i> <i>:</i>


ÔN TẬP


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


Giúp học sinh:


- Ơn lại các kiến thức đã học.
- Giải quyết một số bài tập.
<b>II. Chuẩn bị:</b>


- Giáo viên: chuẩn bị giáo aùn toát.


- Học sinh: học bài cũ và xem trước bài mới.
<b>III. Tiến trình hoạt động:</b>



<b>1. Ổn định lớp:</b>


- Giữ trật tự lớp học.
- Kiểm tra sĩ số.
<b>2. Kiểm tra bài cũ:</b>
<b>3. Bài mới:</b>


<i><b>Hoạt động của giáo viên và học sinh</b></i> <i><b>Nội dung</b></i>
Hãy viết chương trình tính diện tích của hình phần


được tơ đậm (bán kính được nhập từ bàn phím).


<b>? Để tính diện tích phần tơ đậm ta làm như thế nào.</b>
<b>HS: Trả lời.</b>


<b>ÔN TẬP</b>


Program tinh;
Var S1, S2, S: real;
Begin


Writeln(‘Nhap ban kinh hinh tron
be: ‘);


Readln(S1);


Writeln(‘Nhap ban kinh hinh tron
lớn: ‘);



Readln(S2);
S:=S2-S1;


Writeln(‘Dien tich can tich
la:’,S);


Readln
End.


<b>4. Củng cố:</b>
<b>5. Dặn dò:</b>


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

<i>Tuần: 18</i> <i>Ngày soạn :</i>


<i>Tiết : 36</i> <i>Ngày dạy</i> <i>:</i>


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

<i>Tuần: 20</i> <i>Ngày soạn :</i>


<i>Tiết : 37</i> <i>Ngày dạy</i> <i>:</i>


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


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


Biết nhu cầu cần có cấu trúc lặp trong ngơn ngữ lập trình.


Biết ngơn ngữ lập trình dùng cấu trúc lặp để chỉ dẫn máy tính thực hiện lặp đi lặp lại cơng
việc nào đó một số lần.


Hiểu hoạt động của câu lệnh với số lần biết trước for...do trong Pascal.
Viết đúng được lệnh for...do trong một số tình huống đơn giản.



Hiểu lệnh ghép trong Pascal
Thái độ nghiêm túc cẩn thận.
<i><b>II. Chuẩn bị</b><b> : </b></i>


Gv: Giáo án, máy tính, SGK tin 8
HS: Học bài và xem bài trước.
<i><b>III. Tiến trình bài dạy</b><b> :</b></i>


<i><b>1. Ổn định nề nếp:</b></i>
<i><b>-</b></i> Giữ trật tự lớp học.
<i><b>-</b></i> Điểm danh sĩ số.
<i><b>2. Kiểm tra bài cũ:</b></i>
<i><b>3. Bài mới:</b></i>


Giới thiệu bài mới:


<i><b>Hoạt động của giáo viên và học sinh</b></i> <i><b>Nội dung</b></i>
<i><b>Hoạt đợng 1: Các cơng việc phải thực hiện </b></i>


<i><b>nhiều lần</b></i>


Trong cuộc sống hằng ngày, nhiều hoạt động
được thực hiện lặp đi lặp lại nhiều lần. ví dụ:


- Các ngày trong tuần các em đều lặp đi
lặp lại hoạt động buổi sáng đến trường
và buổi trưa trở về nhà


Các em học bài thì phải đọc đi đọc lại nhiều


lần cho đến khi thuộc bài.


Hs lắng nghe


Hãy cho thêm một vài ví dụ trong thực tế
trong đời sống hằng ngày mà ta phải thực
hiện các thao tác được lặp đi lặp nhiều lần?
Hs cho ví dụ


Gv: Khi viết chương trình máy tính cũng vậy,
trong nhiều trường hợp ta cũng phải viết lặp
lại nhiều câu lệnh chỉ để thực hiện 1 phép tính


nhất định.


<i><b>Hoạt động 2: Câu lệnh lặp – một lệnh thay </b></i>
<i><b>cho nhiều lệnh</b></i>


Gv: Gọi 1 hs lên bảng vẽ một hình vuông
cạnh 1 đơn vị độ dài (20cm) và yêu cầu cả lớp
theo dõi bạn thực hiện các thao tác trên bảng.
1 hs lên bảng vẽ, cả lớp theo dõi


Yêu cầu 1 hs mô tả các bước bạn vẽ trên
bảng.


Vậy khi bạn vẽ 1 hình vng đã thực hiện bao
nhiêu thao tác? (hs có thể chỉ trả lời 4 thao tác


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


SGK trang 56


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

là vẽ 4 đoạn thẳng)
HS: 4 thao tác


GV: Gợi ý thêm thao tác quay thước.
Các thao tác đó như thế nào?


HS: Các thao tác giống nhau.


Gv: Như vậy khi vẽ hình vng có những
thao tác lặp đi lặp lại. Thuật toán sau sẽ mơ tả
các bước để vẽ hình vng.


Gv: Mơ tả thuật tốn trên bảng


Gv: Mơ tả thuật tốn tính tổng các số tự nhiên
từ 1→ 100


Cấu trúc mơ tả thuật tốn như trên gọi là cấu
trúc lặp.


<i>Vd1: Thuật tốn mơ tả các bước để vẽ hình </i>
<i>vng.</i>


Bước 1: k ← 0 (k là số đoạn thẳng đã vẽ
được).


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



Bước 3: Nếu k<4 thì quay lại bước 2; ngược
lại kết thúc.


<i>k là biến đếm</i>
<i>Vd2: Thuật tốn tính</i>
S= 1+2+3+ … + 100
Bước 1: S ← 0; i ← 0.
Bước 2: i← i + 1


Bước 3: nếu i ≤ 100, thì S ← S + i và quay lại
bước 2; ngược lại kết thúc.


<i>i là biến đếm</i>


Mơ tả thuật tốn trên gọi là cấu trúc lặp.
Mọi ngơn ngữ lập trình đều có cách chỉ thị
cho máy tính thực hiện cấu trúc lặp chỉ với 1
câu lệnh. Đó là câu lệnh lặp


<i><b>4. Củng cố:</b></i>


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


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


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

<i>Tuần: 20</i> <i>Ngày soạn :</i>


<i>Tieát : 38</i> <i>Ngày dạy :</i>



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


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


Biết nhu cầu cần có cấu trúc lặp trong ngơn ngữ lập trình.


Biết ngơn ngữ lập trình dùng cấu trúc lặp để chỉ dẫn máy tính thực hiện lặp đi lặp lại cơng
việc nào đó một số lần.


Hiểu hoạt động của câu lệnh với số lần biết trước for...do trong Pascal.
Viết đúng được lệnh for...do trong một số tình huống đơn giản.


Hiểu lệnh ghép trong Pascal
Thái độ nghiêm túc cẩn thận.
<i><b>II. Chuẩn bị: </b></i>


Gv: Giáo án, máy tính, SGK tin 8
HS: Học bài và xem bài trước.
<i><b>III. Tiến trình bài dạy:</b></i>


<i><b>1. Ổn định nề nếp:</b></i>
<i><b>-</b></i> Giữ trật tự lớp học.
<i><b>-</b></i> Điểm danh sĩ số.
<i><b>2. Kiểm tra bài cũ:</b></i>


<i><b>1.</b></i> Cho một vài ví dụ về hoạt động được thực hiện lặp lại trong cuộc sống hằng ngày.
<i><b>2.</b></i> Nêu thuật tốn vẽ hình vng.


<i><b>3.</b></i> Nêu thuật tốn tính tổng s=1+2+3+…+100
<i><b>3. Bài mới:</b></i>



Giới thiệu bài mới:


<i><b>Hoạt động của giáo viên và học sinh</b></i> <i><b>Nội dung</b></i>
<i><b>Hoạt đợng 3:Ví dụ về câu lệnh lặp</b></i>


Gv: minh họa bẳng ngôn ngữ Pascal cú pháp câu
lệnh for … to … do


 Lưu ý cho hs:


- <i>biến đếm</i> là biến đơn có kiểu nguyên;


- <i>giá trị đầu</i> và <i>giá trị cuối</i> là các <i>biểu</i>
thức có cùng kiểu với <i>biến đếm</i> và <i>giá trị</i>
<i>cuối</i> phải lớn hơn <i>giá trị đầu</i>;


- <i>câu lệnh</i> có thể là câu lệnh đơn giản hay
câu lệnh ghép.


Cho hs nhận xét và so sánh sự khác nhau ở câu
lệnh lặp trong hai vd trên?


Gv: Giải thích cho học tại sao vd2 trong câu lệnh
lặp có begin … end


<i><b>1. Các công việc phải thực hiện nhiều lầ.</b></i>
<i><b>2. Câu lệnh lặp – mợt lệnh thay cho nhiều </b></i>
<i><b>lệnh.</b></i>



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


Cú Pháp câu lệnh lặp với số lần biết trước
trong Pascal.


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


trong đó: for, to, do là các từ khóa


<b>Vd 1:</b>Chương trình in ra màn hình thứ tự lần
lặp.


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


<i>for i:= 1 to 20 do</i>


<i>writeln(‘Day la lan lap </i>
<i>thu’,i);</i>
<i>readln;</i>


<i>end.</i>


<b>Vd2:</b> chương trình ghi nhận vị trí 10 chữ O
rơi từ trên xuống.


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

<i>clrscr;</i>


<i>for i:= 1 to 20 do</i>


<i>begin </i>


<i>writeln(‘O’);</i>
<i>delay(200);</i>
<i>end;</i>


<i>readln;</i>
<i>end.</i>


*Lưu ý: Câu lệnh có sử dụng câu lệnh ghép
thì phải đặt trong hai từ khóa begin … end.
<i><b>4. Củng cố:</b></i>


Cấu trúc lặp trong chương trình dùng để làm gì?


Trong ngơn ngữ lập trình Pascal cấu trúc lặp với số lần lặp cho trước được thể hiện với câu
lệnh nào?


<i><b>5. Dặn dò:</b></i>


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


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

<i>Tuần: 21</i> <i>Ngày soạn: </i>


<i>Tiết: 39</i> <i>Ngày dạy:</i>


BÀI thực hành 5:



SỬ DỤNG LỆNH LẶP FOR…DO


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


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


- Viết chương trính Pascal có câu lệnh lặp for…do
<i><b>2. Kỹ năng</b></i>


<i><b>-</b></i> Tiếp tục nâng cao kĩ năng đọc hiểu chương trình.
<b>II. Đồ dùng dạy học:</b>


<i><b>-</b></i> Giáo án, SGK, sách tham khảo, máy tính.
<b>III. Hoạt động dạy và học:</b>


<i><b>1. Ổn định nề nếp:</b></i>
<i><b>-</b></i> Giữ trật tự lớp học.
<i><b>-</b></i> Điểm danh sĩ số.
<i><b>2. Kiểm tra bài cũ:</b></i>
<b>3.</b> <i><b>Bài mới</b><b> :</b></i>


Giới thiệu bài mới:


<i><b>Phương pháp</b></i> <i><b>Nội dung</b></i>


<i><b>Hoạt động 1: Hướng dẫn bài 1</b></i>
Gv yêu cầu học sinh đọc yêu cầu bài
tốn.


Hs đọc đề bài.


? Nêu cú pháp của câu lệnh lặp
For...do



Hs trả lời


Gv giải thích ý nghĩa từng câu lệnh.
Gv chạy thử chương trình


Hs quan saùt


<i><b>Hoạt động 2: Thực hành bài 1</b></i>
Hs thực hành trên máy.


Gv quan sát hướng dẫn cho Hs


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


<i><b>a)</b></i> Gõ chơng trình sau đây:


<b>uses</b> crt;


<b>var</b> N,i:integer;


<b>begin</b>


clrscr;


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



writeln('Bang nhan ',N);
writeln;


<b>for</b> i:=1 <b>to</b> 10 <b>do</b> writeln(N,'x',i:2,'=',N*i:3);
readln


<b>end</b>.


<i><b>b)</b></i> T×m hiĨu ý nghĩa của các câu lệnh trong chơng
trình, dịch chơng trình và sửa lỗi, nếu có.


<i><b>c)</b></i> Chy chng trỡnh vi các giá trị nhập vào lần lợt
bằng 1, 2,.., 10. Quan sát kết quả nhận đợc trên
màn hình.


<i><b>Bài 2</b></i>. Chỉnh sửa chơng trình để làm đẹp kết quả trên
màn hình.


Kết quả của chơng trình nhận đợc trong bài 1 có hai
nhợc điểm sau đây:


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

<i><b>Hoạt động 1: Hướng dẫn bài 2</b></i>
Gv yêu cầu học sinh đọc u cầu bài
tốn.


Hs đọc đề bài.


Gv giải thích ý nghĩa từng câu lệnh.
Lưu ý cho hs về câu lệnh ghép
Gv chạy thử chương trình


Hs quan sát


<i><b>Hoạt động 2: Thực hành bài 2</b></i>
Hs thực hành trên máy.


Gv quan sát hướng dẫn cho Hs


tiêu đề.


Nên sửa chơng trình bằng cách chèn thêm một
hàng trống giữa các hàng kết quả và đẩy các
hàng này sang phải một khoảng cách nào ú.


<i><b>a)</b></i> Chỉnh sửa câu lệnh lặp của chơng trình nh sau:


<b>for</b> i:=1 <b>to</b> 10 <b>do</b>
<b>begin </b>


GotoXY(5,WhereY); writeln(N,' x
',i:2,' = ',N*i:3); writeln


<b>end</b>;
<i>Lu ý</i>:


 Chỉ sử dụng đợc các lệnh <i>GotoXY</i>, <i>WhereX</i> và
<i>WhereY</i> sau khi khai báo th viện <i>crt</i> của Pascal.
 Câu lệnh <i>GotoXY(a, b)</i> có tác dụng đa con trỏ về


<i>céta</i>, <i>hµngb</i>.



WhereX cho biÕt sè thø tù cđa cét vµ WhereY
cho biết số thứ tự của hàng đang có con trỏ. Ví
dụ GotoXY(5,WhereY) đa con trỏ về vị trí cột 5
của hàng hiện tại.


Dch v chy chng trỡnh vi các giá trị gõ vào từ
bàn phím. Quan sát kết quả nhận đợc trên màn
hình.


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


Nhắc lại câu lệnh : For…do
<i><b>5. Dặn dò.</b></i>


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

Tuần: 21 <i>Ngày soạn: </i>


<i>Tiết: 40</i> <i>Ngày dạy:</i>


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



<b>I. Mục tieâu:</b>


- Biết được cấu trúc lặp được sử dụng để hướng dẫn cho máy tính thực hiện lặp lại một cơng việc
nào đó một số lần.


- Biết nhu cầu cần có cấu trúc lặp trơng ngơn ngữ lập trình


- Hiểu hoạt động của câu lệnh với số lần biết trước for – do trong ngơn ngữ lập trình pascal..
- Biết kết hợp lệnh for và điều kiện if để giải những bài tốn có tính phức tạp



<b>II. Đồ dựng dy hc:</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. Hoạt động dạy và học:</b>


 <i><b>Ổn định nề nếp:</b></i>


<b>6.</b> Giữ trật tự lớp học.
<b>7.</b> Điểm danh sĩ số.


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


- ?1:Trình bày cú pháp lệnh lặp for …do, hãy cho ví dụ về lệnh lặp


- ?2: Thế nào là lệnh lặp, em hãy cho ví dụ và những điều lưu ý khi viết câu lệnh lặp.
- Gv: Gọi học sinh lên trả bài, nhận xét và cho điểm.


 <i><b>Bài mới</b><b> :</b></i>


Giới thiệu bài mới:


<i><b>Phương pháp</b></i> <i><b>Nội dung</b></i>


<i><b>Bài 1:</b></i> Viết chương trình tính tổng dãy số:
s:=1+3+5+7+…+ n.


-Gv: Với các số lẽ muốn tính được tổng của chúng
ta cần phải làm gì?



-Hs: suy nghĩ liên hệ những kiến thức đã học.
-Gv:Yêu cầu học sinh đứng lên trả lời.


Hs: Với những số trên cho vịng lặp từ 1-n và gặp
những số lễ thì sẽ cộng vào dãy số.


-Gv: Chốt lại và đưa ra đáp án.


-Gv: Trong trường này ta sẽ cho vòng lặp for chạy
từ đầu đến cuối và nếu gặp số lẽ ta sẽ cộng vào còn
nếu gặp số chẳn thì dữ nguyên.


-Gv: Muốn làm được chỉ cho máy tính biết được
đâu là số chẳn đâu là số lẽ ta cần phải làm gì?
-Hs: sẽ xét điều kiện if…. Then


-Gv: Vậy cách làm sẽ như thế nào?
-Hs: lên bảng trình bày cách làm.


-Gv: Nhận xét và cho điểm , đưa ra đáp án.
<i><b> Bài 2:</b></i> Cho đoạn chương trình sau.


J:=2; k:=3;


For i:=1 to 5 do j:=j+1
K:=k+j;


Write(i,’cach’,j);



Hãy mơ phỏng thuật toán trên và cho biết kết quả.


<i><b>Bài 1:</b></i> Viêt chương trình tính tổng dãy số
s=1+3+5+7+…+n.


<b>Program tong;</b>


Var i,n: integer;
S:real;


Begin


Write(‘nhap n=’);
Readln(n);
S:=0;


For i:=1 to n do


If i mod 2 then s:=s+i else s:=s;
Writeln(‘Tong la=’,s);


Readln;
End.


<i><b>Bài 2:</b></i> Cho đoạn chương trình sau.
J:=2; k:=3;


K:=k+j;


Write(I,’cach’,j);



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

-Gv: Yêu cầu học sinh lên bảng mơ phỏng lại
chương trình và cho biết kết quả sau cùng.
-Hs: Lên bảng thực mô phỏng thuật toán ( chạy
từng bước).


-Gv: Nhận xét và cho điểm.


-Gv: Trong chương trình trên với j=2 ; k=3 là hai
ban đầu được khởi tạo.


-Gv: khi i:=1; j:=j+1=2+1=3; k:=k+j=3+3=6
i:=2; j:=j+1=3+2=5; k:=k+j=6+5=11;


i=3; j:=j+1=5+3=8; k:=k+j=11+8=19
i=4; j:=j+1=8+1=9; k=k+j=19+9=28;
i=5; j:=j+1=9+1=10;k=k+j=28+10=38;
-Vậy sau khi thực hiện 5 lần tính tốn kết quả cuối
cùng là.


J:=10; k=38;


<i><b>Bài 3</b></i>: Cho đoạn chương trình sau.
J:=2; k:=3;


For i:=1 to 5 do


If i mod 2=0 then j:=j+1;
K:=k+j;



Writeln(j,’cach’,k);


-Gv: yêu cầu học sinh lên bảng thực hiện mô phỏng
chương trình trên và cho biết kết quả cuối cùng.
-Gv: Tương tự như bài 2 ta cũng thực hiện các thao
tác mô phỏng như trên nhưng ở bài này ta thấy rằng
muốn thực hiện câu lệnh j:=j+1 thì phải xét I có
chia hết cho 2 khơng. Nếu chia hết thì cơng 1 và j
ngược lại dữ ngun.


Gv: u cầu học sinh thực hiện tương tự yêu cầu
như bài 2.


-Hs: thực hiện lại mơ phỏng chương trình.
-Gv: Nhận xét và cho điểm, đưa ra đáp án.


<i><b>Bài giải</b></i>.
Khi:


i:=1; j:=j+1=2+1=3; k:=k+j=3+3=6


i:=2; j:=j+1=3+2=5; k:=k+j=6+5=11;
i=3; j:=j+1=5+3=8; k:=k+j=11+8=19
i=4; j:=j+1=8+1=9; k=k+j=19+9=28;
i=5; j:=j+1=9+1=10;k=k+j=28+10=38;
-Vậy sau khi thực hiện 5 lần tính tốn kết
quả cuối cùng là.


J:=10; k=38;



<i><b>Bài 3</b></i>: Cho đoạn chương trình sau.
J:=2; k:=3;


For i:=1 to 5 do


If i mod 2=0 then j:=j+1;
K:=k+j;


Writeln(j,’cach’,k);


<i><b>Giải:</b></i>
J=2; k=3;


I=1; j:=j+1=2+1=3
I=2; j:=j+1=3+1=4
I=3; j:=j+1=4+1=5
I=4; j:=j+1=5+1=6
I=5; j:=j+1=6+1=7


 <i><b>Củng cố</b></i>


- Gv: u cầu học sinh mơ phỏng lại thuật tốn đối với các bài tốn đã giải.


 <i><b>Dặn dò.</b></i>


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

<i>Tuần: 21</i> <i>Ngày soạn :</i>


<i>Tiết : 41</i> <i>Ngày dạy :</i>


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



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


Biết nhu cầu cần có cấu trúc lặp trong ngơn ngữ lập trình.


Biết ngơn ngữ lập trình dùng cấu trúc lặp để chỉ dẫn máy tính thực hiện lặp đi lặp lại cơng
việc nào đó một số lần.


Hiểu hoạt động của câu lệnh với số lần biết trước for...do trong Pascal.
Viết đúng được lệnh for...do trong một số tình huống đơn giản.


Hiểu lệnh ghép trong Pascal
Thái độ nghiêm túc cẩn thận.
<i><b>Chuẩn bị: </b></i>


Gv: Giáo án, máy tính, SGK tin 8
HS: Học bài và xem bài trước.
<i><b>Tiến trình bài dạy:</b></i>


<i><b>Ổn định nề nếp:</b></i>


<b>8.</b> Giữ trật tự lớp học.
<b>9.</b> Điểm danh sĩ số.
<i><b>Kiểm tra bài cũ:</b></i>


a. Nêu thuật tốn vẽ hình vng.


b. Nêu thuật tốn tính tổng s=1+2+3+…+100


c. Cấu trúc lặp trong chương trình dùng để làm gì?



d. Trong ngơn ngữ lập trình Pascal cấu trúc lặp với số lần lặp cho
trước được thể hiện với câu lệnh nào?


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


Giới thiệu bài mới:


<i><b>Hoạt động của giáo viên và học sinh</b></i> <i><b>Nội dung</b></i>


<i><b>Hoạt động 4: Tính tổng và tích bằng câu lệnh lặp</b></i>
Gv: trình bày đoạn chương trình tính tổng N số tự
nhiên, với N là số tự nhiên được nhập từ bàn phím
(Pascal)


Theo cơng thức tính tổng ta cần khai bao nhieu
biến? kiểu biến?


Trong 2 biến thì biến nào có giá trị được nhập từ
bàn phím?


<i><b>1. Các cơng việc phải thực hiện nhiều lầ.</b></i>
<i><b>2. Câu lệnh lặp – một lệnh thay cho nhiều </b></i>
<i><b>lệnh.</b></i>


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


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


<b>Vd 1:</b> chương trình tính tổng N số tự nhiên
đầu tiên, với N là số tự nhiên được nhập từ


bàn phím.


S = 1+2+3+ … + N
<i>program Tinh_tong;</i>
<i>var </i> <i>N,i:integer;</i>


<i>S:longint;</i>
<i>begin</i>


<i>write(‘Nhap so N = ‘);</i>
<i>readln(N);</i>


<i>S:= 0;</i>


<i>for i:= 1 to N do</i>
<i>S:= S+i;</i>


<i>writeln(‘Tong cua’, N, ‘so tư </i>
<i>nhien dau tien S = ‘, S);</i>
<i>readln;</i>


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

Trong trường hợp dữ liệu có kiểu nguyên rất lớn ta
dùng longint


*Kiểu longint có phạm vi từ -231<sub> đến 2</sub>31<sub> – 1.</sub>


<b>Vd 2:</b> chương trình tính tích N số tự nhiên,
với N là số tự nhiên được nhập từ bàn phím.
N! = 1.2.3….N



<i>program Tinh_Giai_Thua;</i>
<i>var </i> <i>N,i:integer;</i>


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


<i>write(‘Nhap so N = ‘);</i>
<i>readln(N);</i>


<i>P:= 1;</i>


<i>for i:= 1 to N do</i>
<i>P:= P*i;</i>
<i>writeln( N, ‘! = ‘, P);</i>
<i>readln;</i>


<i>end.</i>
<i><b>Củng cố:</b></i>


Cấu trúc lặp trong chương trình dùng để làm gì?


Trong ngơn ngữ lập trình Pascal cấu trúc lặp với số lần lặp cho trước được thể hiện với câu
lệnh nào?


<i><b>Dặn dò:</b></i>


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


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

<i>Tuần: 22</i> <i>Ngày soạn: </i>



<i>Tiết: 42</i> <i>Ngày dạy:</i>


BÀI thực hành 5:



SỬ DỤNG LỆNH LẶP FOR…DO (tt)


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


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


<b>10.</b> Viết chương trính Pascal có câu lệnh lặp for…do


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


<b>11.</b> Tiếp tục nâng cao kĩ năng đọc hiểu chương trình.
<b>Đồ dùng dạy học:</b>


<b>12.</b> Giáo án, SGK, sách tham khảo, máy tính.
<b>Hoạt động dạy và học:</b>


 <i><b>Ổn định nề nếp:</b></i>


<b>13.</b> Giữ trật tự lớp học.
<b>14.</b> Điểm danh sĩ số.


 <i><b>Kiểm tra bài cũ:</b></i>
 <i><b>Bài mới</b><b> :</b></i>


Giới thiệu bài mới:


<i><b>Phương pháp</b></i> <i><b>Nội dung</b></i>



<i><b>Hoạt động 1: Hướng dẫn</b></i>


Gv yêu cầu học sinh đọc yêu cầu bài toán.
Hs đọc đề bài.


? Nêu cú pháp của câu lệnh lặp For...do
Hs trả lời


Gv giải thích ý nghĩa từng câu lệnh.


<i><b>Bài 3</b></i>. Cũng nh câu lệnh <i>if</i>, có thể dùng câu lệnh <i>for</i>
lồng trong một câu lệnh <i>for</i> khác khi thực
hiện lặp. Sử dụng các câu lệnh <b>for…do</b> lồng
nhau để in ra màn hình các số từ 0 đến 99
theo dạng bảng nh hình sau:


<i>H×nh 38</i>
<i><b>a)</b></i> Tìm hiểu chơng trình sau đây:


<b>Program</b> Tao_bang;


<b>Uses</b> Crt;


<b>Var</b>


i: byte; {chi so cua hang}
j: byte; {chi so cua cot}


<b>Begin</b>



Clrscr;{xoa man hinh}


<b>For</b> i:=0 <b>to</b> 9 <b>do</b> {viet theo tung hang}


<b>begin </b>


<b>For</b> j:=0 <b>to</b> 9 <b>do</b> {viet theo tung cot
tren moi hang}


write(10*i+j:4); {viet cac so ij
ra man hinh}


writeln; {xuong hang moi}


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

Gv chạy thử chương trình
Hs quan sát


<i><b>Hoạt động 2: Thực hành</b></i>
Hs thực hành trên máy.


Gv quan sát hướng dẫn cho Hs


readln {dung chuong trinh de xem
ket qua}


<b>end</b>.


<i><b>b)</b></i> Gõ và chạy chơng trình, quan sát kết quả trên
màn hình. Sử dụng thêm các câu lệnh


<i>GotoXY(a,b) </i>để điều chỉnh (một cách tơng
đối) bảng kết quả ra giữa màn hình.


 <i><b>Củng cố</b></i>


Nhắc lại câu lệnh : For…do


 <i><b>Dặn dò.</b></i>


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

<i>Tuần: 23</i> <i>Ngày soạn: </i>


<i>Tiết: 44</i> <i>Ngày dạy:</i>


<b>HỌC VẼ HÌNH HỌC VỚI PHẦN MỀM </b>


<b>GEOGEBRA</b>



<b>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à u thích mơn học.


<b>Đồ dùng dạy học:</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>Hoạt động dạy và học:</b>



 <i><b>Ổn định nề nếp:</b></i>


<b>15.</b> Giữ trật tự lớp học.
<b>16.</b> Điểm danh sĩ số.


 <i><b>Kiểm tra bài cũ:</b></i>
 <i><b>Bài mới</b><b> :</b></i>


Giới thiệu bài mới:


<i><b>Phương pháp</b></i> <i><b>Nội dung</b></i>


<i><b>1.Hoạt động 1</b>:</i> Giới thiệu phần mềm
geogebra


Gv: giíi thiƯu l¹i cho häc sinh nghe


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


- Đặc điểm này giúp cho phần mềm có
thể vẽ đợc các hình rất chính xác và có
khả năng tơng tác nh chuyển động


nh-ng vẫn giữ đợc mối quan hệ giữa các
đối tợng.


<i><b>2.Hoạt động2:</b></i> Làm quen với phần mềm
Geogebra.


Gv: Để khổi động một chương trình ta phải
làm gì?


Hs: Để khởi động một ứng dụng thông
thường ta nháy chuột trên màn hình


Gv: Ngồi cách khởi động trên ta cịn có thể
khởi động bằng cách nào?


Hs: Trả lời.


Gv: chốt lại cho học sinh ghi bài.


Gv: Trong chương trình lớp 7 chúng ta đã
được học geogebra vậy chương trình được
phân chia thành bao nhiêu khu vực và đó là
những khu vực nào?


Hs: Gồm 3 khu vực đó là bảng chọn, thanh


<b>1. Em đã biết gỡ v GeoGebra?(sgk)</b>



<b>2. Làm quen với phần mềm </b>


<b>GeoGebra tiếng ViÖt</b>




<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 tiÕng </b>
<b>ViƯt</b>


-Màn hình làm việc chính của phần mềm
bao gồm bảng chọn, thanh công cụ và khu
vực thể hiện các đối tợng.


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

công cụ, và khu vực hiển thị.
Gv: Chốt lại cho học sinh ghi bài.


Gv: Giới thiệu phần chú ý.


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


Hs: Lắng nghe.


Gv: Geogebra chương trình lớp 7 thanh cơng
cụ làm việc gồm có những lệnh nào?


Hs:Quan sát sách giáo khoa và trả lời.



-công cụ di chuyển, công cụ liên quan đến đối
tượng điểm, công cụ liên quan đến đường
thẳng, đoạn thẳng,công cụ tạo mối quan hệ
hình học.cơng cụ liên quan đến hình trịn.
Cơng cụ biến đổi hình học.


Gv: Chốt lại: Để hiểu rõ các công cụ trên ta sẽ
đi tìm hiểu tầng cơng cụ thể.


Gv: Giới thiệu các cơng cụ cụ thể.
Hs: Lắng nghe và ghi bài.


b»ng tiÕng ViÖt.
 <i>Thanh c«ng cơ</i>


- Chứa các cơng cụ làm việc chính.
Đây chính là các cơng cụ dùng để vẽ, điều
chỉnh và làm 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>Chó ý(sgk)</b>



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


Cơng cụ liên quan đến đối tượng điểm:


<i><b>Cơng cụ liên quan đến đoạn , đường </b></i>
<i><b>thẳng</b></i>.


 <i><b>Củng cố</b></i>


Gv : Hãy trình bày cách khởi động phần mềm geogebra.
Hs : Nháy đúp biểu tượng trên màn hình


Gv: Phần mềm geogebra có những thành phân gì?
Hs: Gồm có bảng chọn và thanh cơng cụ.


 <i><b>Dặn dò.</b></i>


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

<i>Tuần: 23</i> <i>Ngày soạn: </i>


<i>Tiết: 43</i> <i>Ngày dạy:</i>


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



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



- Biết được cấu trúc lặp được sử dụng để hướng dẫn cho máy tính thực hiện lặp lại một cơng việc
nào đó một số lần.


- Biết nhu cầu cần có cấu trúc lặp trơng ngơn ngữ lập trình


- Hiểu hoạt động của câu lệnh với số lần biết trước for – do trong ngơn ngữ lập trình pascal..
- Biết kết hợp lệnh for và điều kiện if để giải những bài tốn có tính phức tạp


<b>Đồ dùng dạy học:</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>Hot động dạy và học:</b>


 <i><b>Ổn định nề nếp:</b></i>


<b>17.</b> Giữ trật tự lớp học.
<b>18.</b> Điểm danh sĩ số.


 <i><b>Kieåm tra bài cũ:</b></i>


- ?1:Trình bày cú pháp lệnh lặp for …do, hãy cho ví dụ về lệnh lặp


- ?2: Thế nào là lệnh lặp, em hãy cho ví dụ và những điều lưu ý khi viết câu lệnh lặp.
- Gv: Gọi học sinh lên trả bài, nhận xét và cho điểm.


 <i><b>Bài mới</b><b> :</b></i>


Giới thiệu bài mới:



<i><b>Phương pháp</b></i> <i><b>Nội dung</b></i>


<i><b>Bài 4(sgk 61).</b></i>
J:=0;


For i:=0 to 5 do j:=j+2;


Gv: với chương trình trên em hãy cho biết các bước
máy tính thực hiện và cho biết kết quả cuối cùng.
Gv: Gọi học sinh lên làm bài tập 4.


Hs: Lên bảng trình bày từng bước, và cho biết kết
quả cuối cùng.


Gv: Nhận xét bài làm và cho điểm học sinh.
<i><b>Bài 5(sgk 61)</b></i>


-Gv: gọi học sinh lên bảng làm bài.


-Hs; Làm bài và giải thích chọn đáp án và tại sao
chọn đáp án trên.


a) <b>for</b> i:=100 <b>to</b> 1 <b>do</b> writeln('A');
b) <b>for</b> i:=1.5 <b>to</b> 10.5 <b>do</b> writeln('A');
c) <b>for</b> i=1 to 10 <b>do</b> writeln('A');
d) <b>for</b> i:=1 to 10 <b>do</b>; writeln('A');
e)<b>var</b> x: real; <b>beginfor</b> x:=1 <b>to</b> 10 <b>do </b>


writeln('A'); <b>end.</b>



<i><b>Bài 6(sgk 61)</b></i>


1. Hãy mô tả thuật tốn để tính tổng sau đây:
<i>A=</i> 1 1 1 ... 1


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


-Gv: yêu cầu học sinh mô tả thuật tốn..
Hs: Mơ tả thuật tốn.


-Gv: Nhận xét và cho điểm. và chốt lại và đưa ra


<i><b>Bài 4(sgk 61).</b></i>
J:=0;


For i:=0 to 5 do j:=j+2;
Giải:


Khi i=1 ; j=j+2=0+2=2;
Khi i=2; j=j+2=2+2=4;
Khi i=3; j=j+2=4+2=6
Khi i=4; j=j+2=6+2=8
Khi i=5; j=j+2=8+2=10


Vây kết quả cuối cùng là i=5; j=10.
<i><b>Bài 5(sgk 61)</b></i>


a. Sai. Vì giá trị đầu phải nhỏ hơn giá trị
sau.



b. sai. Vì biến I phải có kiểu integer.
c. sai. Vì sau biến I phải có dấu hai chấm.
d. sai. Vì sau do khơng có dấu chấm phải(;)
e. sai. Vì x khơng có kiểu số thực(real).


<i><b>Bài 6(sgk 61)</b></i>
<i><b>Bước 1</b></i>: A=0; i=1;
<i><b>Bước 2</b></i>: I:=i+1;


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

đáp án.


-Gv: Yêu cầu học sinh đọc đề và cho nhận xét về
mẫu số của biểu thực.


-Gv: Với biểu thức trên ta có mẫu của từng hạng tử
-Hạng tử 1: 1.3=1(1+2)


-hạng tử 2: 2.4=2(2+2)
-Hạng tử 3: 3.5=3(3+2)
Cho đến hạng tủ n : n(n+2)


-Gv: Vây căn cứ vào những điều kiện trên ta có thể
sử dụng vịng for chạy từ 1 cho đến n cho mẫu sô,
với tử số ln khơng đổi đó là 1.


-Gv: em hãy căm cứ vào mơ tả thuật tốn em hãy
viết chương trình hồn chỉnh để tính tốn với n là
số nguyên được nhập từ bàn phím.



-Hs: Thực hiện


-Gv: Nhận xét và cho điểm, đưa ra đáp án.
-Gv: viết đề lên bảng với nội dung.


<i><b>Bước 4</b></i>: xuất kết quả và kết thúc thuật tốn.
Chương trình hồn chỉnh.


<b>Program</b> tong;
Var I,n: integer;
S:real;


<b>Begin</b>


Write(‘nhap n=’); readln(n);
S:=0;


For i:=1 to n do s:=s+1/(i*i+2);
Writeln(‘Tong la=’,s);


Readln;


<b>End.</b>


 <i><b>Củng cố</b></i>


- Gv: u cầu học sinh mơ phỏng lại thuật toán đối với các bài toán đã giải.


 <i><b>Dặn dò.</b></i>



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

<i>Tuần: 24</i> <i>Ngày soạn: </i>


<i>Tiết: 45+46</i> <i>Ngày dạy:</i>


<b>HỌC VẼ HÌNH HỌC VỚI PHẦN MỀM </b>


<b>GEOGEBRA (tt)</b>



<b>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 học.


<b>Đồ dùng dạy học:</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>Hoạt động dạy và học:</b>


 <i><b>Ổn định nề nếp:</b></i>


<b>19.</b> Giữ trật tự lớp học.
<b>20.</b> Điểm danh sĩ số.


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


<b>? </b>Màn hình làm việc Geogebra gồm bao nhiêu phần chính. Mơ tả nội dung những phần đó.



 <i><b>Bài mới</b><b> :</b></i>


Giới thiệu bài mới:


<i><b>Phương pháp</b></i> <i><b>Nội dung</b></i>


<i><b>Hoạt đợng 1:</b></i><b> Tìm hiểu các cơng tạo mối </b>
<b>quan hệ hình học.</b>


Gv: Trong thực tế khi vẽ hình học ngồi
những đường trịn hay đường phân giác hoặc
đường thẳng chúng ta còn phải vẽ những tính
chất khác như dt song song, trung trực, phân
giác, tiếp tuyến.


Gv: Đối với phần mềm geogbra cung cấp đầy
đủ cơng cụ để tạo mối quan hệ hình học.
Gv: Ngồi những cơng cụ kể trên cịn có
những cơng cụ nào khác?


Hs: Đường thẳng vng góc, ss,trung trực,
phân giác.


Gv: Ngồi những cơng cụ kể trên cịn cung
cấp cho ta những công cụ vẽ tiếp tuyến,
đường đối trực hoặc đường kính keo dài, quỹ
tích.


<i><b>Hoạt đợng 2:</b></i> Các cơng cụ liên quan đến hình


trịn.


Gv: Để vẽ được một hình trịn ta cần có


Các cơng cụ liên quan đến đối tượng
điểm.


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

những dữ kiện gì?


Hs: Biết tâm và Bán kính, tâm và một điểm
trên đường tròn, khi biết ba điểm.


Gv: Chốt lại để vẽ một đường trịn ta cần phải
có những dữ liệu như đã trình bày trên.


Gv: Ngồi những cơng cụ kể trên phần mềm
còn cung cấp cho người sử dụng một vài cơng
cụ khác như.


Ngồi những cơng cụ kể trên ta cịn
có.


 <i><b>Củng cố</b></i>


- Gv:Trình bày các cơng cụ liên quan đến đối tượng điểm.


 <i><b>Dặn dò.</b></i>


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

<i>Tuần: 25</i> <i>Ngày soạn: </i>



<i>Tiết: 46,47</i> <i>Ngày dạy:</i>


<b>HỌC VẼ HÌNH HỌC VỚI PHẦN MỀM </b>


<b>GEOGEBRA (tt)</b>



<b>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à u thích mơn học.


<b>Đồ dùng dạy học:</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>Hot động dạy và học:</b>


 <i><b>Ổn định nề nếp:</b></i>


<b>21.</b> Giữ trật tự lớp học.
<b>22.</b> Điểm danh sĩ số.


 <i><b>Kiểm tra bài cũ:</b></i>
 <i><b>Bài mới</b><b> :</b></i>


Giới thiệu bài mới:



<i><b>Phương pháp</b></i> <i><b>Nội dung</b></i>


? Đối tượng hình học là gì?


Hs: Một hình hình học sẽ bao gồm nhiều đối tợng cơ
bản. Các đối tợ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.
Gv nờu những vớ dụ quan hệ giữa cỏc đối tượng.
Hs lắng nghe


Gv giới thiệu màn hình và hướng dẫn Hs hiện ẩn danh
sác các đối tượng.


Gv hướng dẫn cho học sinh các thao tác thay đổi
thuộc tính đối tượng


<i><b>ẩn đối t</b><b> ợng: </b></i>


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


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


<b>3. Đối t</b>

<b> ợng hình học</b>


<i>a) Khái niệm đối tợng hình học</i>


<i>b) Đối tợng tự do và đối tợng phụ thuộc</i>
 Điểm thuộc đờng thẳng


 Đờng thẳng đi qua hai điểm
 Giao của hai đối tợng hình học



<i>c) Danh sách các đối tợng trên màn hình</i>
Dùng lệnh <b>Hiển thị </b><b> Hiển thị danh sách đối </b>
<b>tợng</b> để hiện/ẩn khung thông tin này trên
màn hình.


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


ẩn/hiện tên (nhãn) của đối tợng


Thay đổi tên của đối tợng


Khung danh
sách các đối t


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

<i><b>ẩn/hiửn tên (nhãn) của đối t</b><b> ợng:</b><b> </b></i>


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


<b>2.</b> Huỷ chọn <b>Hiển thị tên</b> trong bảng chọn.
<i><b>Thay đổi tên của đối t</b><b> ợng:</b></i><b>:</b><i><b> </b></i>


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


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


Sau đó nhập tên mới trong hộp thoại:



<b>3.</b> Nháy nút <b>áp dụng</b> để thay đổi, nháy nút Huỷ bỏ
nếu không muốn đổi tên.


<i><b>Đặt/huỷ vừt chuyún động của đối t</b><b> ợng: </b></i>


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


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


Để xố các vết đợc vẽ, nhấn tổ hợp phím <b>Ctrl+F</b>.
<i><b>Xố đối t</b><b> ợng: </b></i>


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


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


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


Hs quan sát.


Gv: yêu cầu một vài em lên thực hiện lại các thao tác.
Gv hướng dẫn


Hs mở máy thực hành


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



Xoá đối tợng


<i><b>4.</b></i> <i><b>Bài tập thực hành</b></i>


SGK trang 108


 <i><b>Củng cố</b></i>


Lên thực hiện lại các thao tác vừa học


 <i><b>Dặn dò.</b></i>


Về học bài và làm các bài tập SGK


<i>Tuần: 26</i> <i>Ngày soạn :</i>


<i>Tieát : 49,50</i> <i>Ngày dạy :</i>


<b>Bài 8: </b>


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

 Biết được nhu cầu có cấu trúc lặp với số lần chưa biết trước trong ngơn ngữ lập trình.
 Biết ngơn ngữ lập trình dùng cấu trúc lặp với số lần chưa biết trước để chỉ dẫn máy tính


thực hiện lặp đi lặp lại công việc đến khi một điều kiện nào đó được thoả mãn.


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


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



 Giáo viên: sách giáo khoa, sách giáo viên, máy chiếu, máy tính, một số chương trình ví dụ
trong SGK.


 Học sinh: học bài cũ, xem trước nội dung bài học.
<i><b>Tiến trình bài dạy:</b></i>


<i><b>Ổn định nề nếp:</b></i>


<b>23.</b> Kiểm tra sĩ số
<i><b>Kiểm tra bài cuõ:</b></i>


<i>Câu 1: </i>Nêu cú pháp của câu lệnh lặp với số bước lặp xác định.
<i>Câu 2:</i> Sử dụng lệnh lặp với số bước lặp xác định để tính


<i>S = 1 + 2 + …+ n</i>
<i><b>Bài mới:</b></i>


Giới thiệu bài mới:


<i><b>Hoạt động của giáo viên và học sinh</b></i> <i><b>Nội dung</b></i>
Gv: Để tính tổng các số nguyên từ 1 đến 100, em


cần viết câu lệnh để máy tính thực hiện bao nhiêu
lần?


Hs: 99 lần.


Gv: Trong thực tế có nhiều hoạt động được lặp
với sốl ần chưa thể biết trước. Đưa ra các ví dụ


thực tế về công việc phải thực hiện lặp lại với số
lần chưa xác định. Trong ví dụ 1 (SGK), điều kiện
để kết thúc hoạt động lặp của Long là gì?


Hs: Có người nhấc máy.


Gv: Yêu cầu học sinh lấy ví dụ về hoạt động được
lặp với số lần chưa được xác định?


Hs: Trả lời.


Gv: Đưa ví dụ 2 để giới thiệu thuật toán.


Gv: Việc thực hiện phép cộng trong thuật toán lặp
với số lần chưa xác định, hoạt động đó phụ thuộc
vào điều kiện gì? Phép cộng dừng khi nào?
Hs: Điều kiện S<= 1000 và chỉ dừng khi điề kiện
trên sai.


Gv: Vậy hoạt động lặp chỉ dừng lại khi nào?
Hs: Dừng lại khi thoả mãn một điều kiện nào đó.


Gv: Đưa sơ đồ hình vẽ 39 và phân tích.


Gv: Yêu cầu học sinh nhắc lại cấu trúc của câu
lệnh lặp với số lần biết trước.


Hs: Trả lời.


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


<b>trước:</b>


<b>Ví dụ 1:</b> SGK T 67


<b>Ví dụ 2:</b> Tính tổng của n số tự nhiên đầu tiên sao
cho Tn nhỏ nhất lớn hơn 1000.


Thuật tóan:
B1: S0, n0


B2: Nếu S<=1000, nn+1; Ngược lại, chuyển tới
B4.


B3: SS+n và quay lại bước 2.


B4: In kết quả: S và n là số tự nhiên nhỏ nhất sao
cho S>1000. Kết thúc thuật tóan.


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

Gv: Từ đó, giáo viên giới thiệu câu lệnh While…
do…. Hướng dẫn học sinh viết câu lệnh và giải
thích ý nghĩa các thành phần.


Gv: Yêu cầu học sinh nhận xét về cấu trúc câu
lệnh. Nhấn mạnh hoạt động của câu lệnh.
Gv: Từ thuật tóan ở ví dụ 2 chúng ta sẽ chuyển
thành đoạn chương trình Pascal hòan chỉnh sử
dụng câu lệnh lặp While…do


Gv vừa trình bày vừa hướng dẫn giải thích ý
nghĩa từng câu lệnh cho học nắm rõ.



B1  <b>S:= 0; n:= 1;</b>


B2+B3 <b>While S<= 1000 do</b>
<b> Begin</b>


<b> S:=S+n;</b>
<b> n:=n+1;</b>
<b> End;</b>


B4 <b>Write(‘n nho nhat de tong >1000 la’,n);</b>
<b> Write(‘Tong dau tien >1000 la’,n);</b>


GV: Chương trình sử dụng 2 biến S và n. Muốn
sử dụng được 2 biến đó thì phải khai báo cho
chúng


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


Gv: Từ đoạn chương trình Gv chạy chương trình
cho học sinh xem kết quả cuối cùng là n = 45


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


Cú pháp:


<b>While <Điều kiện> do < Câu lệnh>;</b>


Trong đó:



<b>24.</b>Điều kiện thường là phép so sánh;


<b>25.</b>Câu lệnh có thể là câu lệnh đơn giản hay
câu lệnh phức tạp


Câu lệnh được thực hiện như sau:


 Kiểm tra điều kiện


 Nếu điều kiện sai, câu lệnh sẽ bị bỏ qua và


việc thực hiện lệnh lặp kết thúc. Nếu điều
kiện đúng, thực hiện câu lệnh và quay về
bước 1.


Ví dụ 3: Viết chương trình tính tổn của n số tự
nhiên sao cho Tn nhỏ nhất lớn hơn 1000.


<b>Var S, n: integer;</b>
<b>Begin</b>


<b> S:= 0; n:= 1;</b>
<b> While S<= 1000 do</b>
<b> Begin</b>
<b> S:=S+n;</b>
<b> n:=n+1;</b>
<b> End;</b>


<b> Write(‘So n nho nhat de tong >1000 </b>
<b>la’,n);</b>



<b> Write(‘Tong dau tien >1000 la’,n);</b>
<b>End.</b>


<i><b>Củng cố:</b></i>


 Nêu cú pháp câu lệnh While…do


 Cho biết kết quả khi kết thúc câu lệnh sau:
<i><b>S:=0; n:=0;</b></i>


<i><b>While S<10 do</b></i>
<i><b>Begin</b></i>


<i><b> </b></i> <i><b>n:=n+2; S:=S+n;</b></i>
<i><b> End; </b></i>


<i><b>Dặn dò:</b></i>


Hướng dẫn về nhà, học bài xem lại các ví dụ, chuẩn bị thực hành


<i>Tuần: 27</i> <i>Ngày soạn :</i>


<i>Tiết :51</i> <i>Ngày dạy :</i>


Bài thực hành số 6



<b>SỬ DỤNG LỆNH LẶP WHILE…DO</b>


<b>Điều </b>



<b>kiện</b>
Câu lệnh


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

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


 Hiểu câu lệnh lặp <i>while…do</i> trong chương trình;


 Biết lựa chọn câu lệnh lặp while…do hoặc for…do phù hợp với tình huống cụ thể;
 Rèn luyện kỹ năng về khai báo, sử dụng biến;


 Rèn luyện khả năng đọc chương trình;


 Biết vai trò của việc kết hợp các cấu trúc điều khiển.
<i><b>Chuẩn bị: </b></i>


 Phòng thực hành, giáo án, SGK.
<i><b>Tiến trình bài dạy:</b></i>


<i><b>Ổn định nề nếp:</b></i>


<b>26.</b> Kiểm tra sĩ số
<i><b>Kiểm tra bài cũ:</b></i>


Câu 1: Nêu cú pháp câu lệnh While…do
<i><b>Bài mới:</b></i>


Giới thiệu bài mới:


<i><b>Hoạt động của giáo viên và học sinh</b></i> <i><b>Nội dung</b></i>
GV: Cho HS sử dụng ngơn ngữ Pascal để dịch và



chạy thử ví dụ 4 trên mày tính.
Yêu cầu HS đọc kết quả sau khi chạy
Chốt ý.


HS: Thực hành
HS: Đọc kết quả.


<b>Bài 1: </b>


GV: Yêu cầu HS đọc to đề bài


GV: Để tính trung bình n số thực x1, x2, x3, …,xn
với x1, x2, x3, …,xn đ ược nhập t ừ bàn phím.
Trước hết hãy xác định Input và Output.
GV: Hướng dẫn HS chọn biến và đưa ra thuật
toán.


<i>B1: dem</i><i>0; Tb</i><i>0;</i>


Gv: Sử dụng biến đếm để kiểm tra số số x được
nhập vào từ bàn phím. Biến Tb để cơng các giá trị
của x sau mỗi lần nhập.


<i>B2: Nhập n;</i>


Gv: Thực hiện việc nhập giá trị n từ bàn phím.
<i>B3: Nếu dem >=n thì chuyển sang bước 5</i>
<i>B4: dem:=dem+1; nhập x; Tb</i><i>Tb+1; Quay về </i>
<i>B3</i>



Gv: Bước 3 và bước 4 là bước thực hiện vịng lặp.
Trong khi dem<n thì vẫn tiếp tục nhập x và công
giá trị x vào biến trung bình. Vịng lặp này chỉ kết
thúc khi dem>=n.


<i>B5:Tb</i><i>Tb/n;</i>


Gv: Sau khi kết thúc vòng lặp giá trị tổng của n số
x được lưu trong biến Tb. Tính Tb=Tb/n.


<i>B6: Xuất kết qua Tb và kết thúc thuật tóan.</i>
GV: Cho HS sử dụng ngơn ngữ lập trình Pascal
dịch, chỉnh sửa, chạy và kiểm tra chương trình.
Sau khi HS thực hành xong GV yêu cầu HS làm
câu d thay lệnh while…do bằng lệnh for…do.


<b>Bài 1:</b> Viết chương trình sử dụng lệnh While…do
đế tính trung bình n số thực x1,x2,x3,…,xn với n
và x1,x2,x3…,xn được nhập từ bàn phím.


<b>b. Mơ tả thuật tóan</b>


<i>B1: dem</i><i>0; Tb</i><i>0;</i>
<i>B2: Nhập n;</i>


<i>B3: Nếu dem >=n thì chuyển sang bước 5</i>
<i>B4: dem:=dem+1; nhập x; Tb</i><i>Tb+1; Quay về </i>
<i>b3</i>



<i>B5:Tb</i><i>Tb/n;</i>


<i>B6: Xuất kết qua Tb và kết thúc thuật tóan.</i>


c. Gõ chương trình và lưu chương trình với tên
Tính_Tb


SGK trang 72


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

<i>Program Trungbinh;</i>
<i>Var n,i: integer;</i>
<i> x, TB: real;</i>
<i>Begin</i>


<i> Write (‘Nhap n =’);Readln(n);</i>
<i> TB:=0;</i>


<i> For i:= 1 to n do</i>
<i> Begin</i>


<i> Write (‘Nhap x: ’); readln(x);</i>
<i> TB:=TB+x</i>


<i> End;</i>
<i> TB:= TB/n;</i>


<i> Writeln(‘TB= ‘,TB:10:3);</i>
<i> Readln;</i>


<i>End.</i>


Chốt ý


Hs tiến hành thực hành trên máy.
Gv quan sát và hướng dẫn học sinh.


bàn phím và kiểm tra kết quả nhậ được.
e. Viết lại chương trình bằng cách sử dụng câu


lệnh For…do thay cho câu lệnh while …do
<i><b>….</b></i>


<i><b>Tb:=0;</b></i>


<i><b>For i:=1 to n do</b></i>
<i><b>Begin</b></i>


<i><b> Write(‘Nhap x: ‘);</b></i>
<i><b> Readln(x);</b></i>


<i><b> Tb:=Tb+x;</b></i>
<i><b>End;</b></i>


<i><b>….</b></i>


<i><b>Củng cố:</b></i>


 Nêu cú pháp câu lệnh While…do
 Nêu cú pháp câu lệnh for…do
<i><b>Dặn dò:</b></i>



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


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

<i>Tuần: 27</i> <i>Ngày soạn :</i>


<i>Tiết : 52</i> <i>Ngày dạy :</i>


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

<i>Tuần: 28</i> <i>Ngày soạn :</i>


<i>Tiết :53</i> <i>Ngày dạy :</i>


<b>Bài 8: </b>


<b>LẶP VỚI SỐ BƯỚC LẶP CHƯA BIẾT TRƯỚC (tt)</b>


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


 Biết được nhu cầu có cấu trúc lặp với số lần chưa biết trước trong ngôn ngữ lập trình.
 Biết ngơn ngữ lập trình dùng cấu trúc lặp với số lần chưa biết trước để chỉ dẫn máy tính


thực hiện lặp đi lặp lại cơng việc đến khi một điều kiện nào đó được thoả mãn.


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


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


 Giáo viên: sách giáo khoa, sách giáo viên, máy chiếu, máy tính, một số chương trình ví dụ
trong SGK.


 Học sinh: học bài cũ, xem trước nội dung bài học.
<i><b>Tiến trình bài dạy:</b></i>



<i><b>Ổn định nề nếp:</b></i>


Kiểm tra sĩ số.
<i><b>Kiểm tra bài cũ:</b></i>


<b>Câu 1:</b> Nêu cú pháp câu lệnh lặp với số bước lặo xác định;


<b>Câu 2:</b> Cho biết kết quả của câu lệnh sau:
<i>S:=1; n:=0;</i>


<i>While S<20 do</i>
<i>Begin</i>


<i>n:=n+5;</i>
<i>S:=S+n;</i>
<i>End;</i>


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


Giới thiệu bài mới:


<i><b>Hoạt động của giáo viên và học sinh</b></i> <i><b>Nội dung</b></i>


<i>Gv: </i>Đây là bài tốn tính tổng


100
1
...
3


1
2
1


1   


<i>S</i>


?. Để tính được tổng S thì vịng lặp phải thực
hiện bao nhiêu lần.


Hs: 100 lần.


? Vậy chúng ta có thể sử dụng vịng lặp gì để
giải quyết bài tốn này?


Hs: For…do


Gv: Nhắc lại cú pháp vịng lặp While…do
Hs: For i:=GTĐ to GTC do <câu lệnh>;
Gv yêu cầu học sinh lên viết câu lệnh
Hs lên bảng.


Gv nhận xét tóm ý, giải thích lại cho học sinh
về đoạn chương trình


Gv. Để giải quyết bài tốn này chúng ta cũng có
thể sử dụng câu lệnh while..do



<b>1.</b>
<b>2.</b>


<i><b>Ví dụ 5:</b></i> Viết chương trình tính tổng của

100
1
...
3
1
2
1


1   


<i>S</i>


Ta có thể sử dụng câu lệnh lặp For…do
<i>S:=0;</i>


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

? Nêu cúa pháp câu lệnh While ..do
Hs: While <Điều kiện> do <Câu lệnh>;
? Vòng lặp này sẽ kết thúc khi nào?
Hs: Khi điều kiện sai.


? Vậy bài tốn tính tổng S ta phải tìm ra điều
kiện gì để khi điều kiện đó đúng ta vẫn thực
hiện cộng giá trị vào tổng.



Hs: Phải sử dụng biến đếm i. Trong khi I
<=100 thì vòng lặp vẫn tiếp tục.


Gv yêu cầu một học sinh lên viết lại câu lệnh
Hs thực hiện


Gv nhận xét rút ra kết luận cuối cùng.


Gv giải thích lại cho học sinh từng câu lệnh vào
kiểm tra kết quả khi kết thúc vòng lặp.


Gv: Tất cả mọi câu lệnh lặp đều phải có lúc kết
thúc vịng lăp. Với ví dụ trên. Vịng lặp while…
do sẽ kết thúc khi i>100.


Nhưng có nhiều trường hợp chúng ta viết
chương trình sai sẽ dẫn đến những vịng lặp vơ
hạn. Ví dụ…SGK.


Gv. Giải thích cho hs lý do vịng lặp khơng kết
thúc. Và tóm ý cho Hs.


Sử dụng lệnh lặp While…do
<i>T:=0; i:=1;</i>


<i>While i<=100 do</i>
<i>Begin</i>


<i> T:=T+1/i;</i>
<i> i:=i+1; </i>


<i>End;</i>


<i>Write(‘S=’,S);</i>


<b>f. Lặp vô hạn với – Lỗi lập trình cần tránh</b>
<b>Ví dụ:</b>


<i>Var a : integer;</i>
<i>Begin</i>


<i> A:=5;</i>


<i> While a<6 do write(‘A’);</i>
<i>End.</i>


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


<i><b>Củng cố:</b></i>


<i><b>Câu 1:</b></i> Nêu cú pháp câu lệnh While …do.
<i><b>Câu 2:</b></i> Chỉ ra các lỗi sai trong các câu lệnh sau:


<b>i.</b> X:=1;


While X:=10 do X:=X+5;
<b>ii.</b> X:=10;



While X=10 do X=X+5;
<b>iii.</b> S:=0; n:=0;


While S<=10 do n:=n+1;
s:=s+n;


<i><b>Dặn dò:</b></i>


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


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

<i>Tuần: 28</i> <i>Ngày soạn :</i>


<i>Tiết :54</i> <i>Ngày dạy :</i>


Bài thực hành số 6



<b>SỬ DỤNG LỆNH LẶP WHILE…DO (tt)</b>


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


 Hiểu câu lệnh lặp <i>while…do</i> trong chương trình;


 Biết lựa chọn câu lệnh lặp while…do hoặc for…do phù hợp với tình huống cụ thể;
 Rèn luyện kỹ năng về khai báo, sử dụng biến;


 Rèn luyện khả năng đọc chương trình;


 Biết vai trị của việc kết hợp các cấu trúc điều khiển.


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



Phịng thực hành, giáo án, SGK.
<i><b>vi. Tiến trình bài dạy:</b></i>


 <i><b>Ổn định nề nếp:</b></i>


<b>i.</b> Kiểm tra sĩ số


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


Câu 1: Nêu cú pháp câu lệnh While…do


 <i><b>Bài mới</b></i><b>:</b>


Giới thiệu bài mới:


<i><b>Hoạt động của giáo viên và học sinh</b></i> <i><b>Nội dung</b></i>
<b>Bài 2:</b>


? Số nguyên tố là gì?


Hs: Là những số tự nhiên chỉ chia hết cho 1 và
chính nó.


Gv: Ý tưởng của bài tóan này là chúng ta sẽ
nhập một số n từ bàn phím.


Lấy n chia cho tất cả các số từ 2  n-1. Vì bất


cứ số nào cũng chia hết cho 1 nên chúng ta bắt


đầu xét từ số 2. Và n luôn luôn chia hết cho n
nên xét giá trị cuối cùng là n-1.


Nếu n không chia hết cho bất cứ số nào trong
pham vi từ 2n-1 thì rút ra kết luận n là số


nguyên tố.


Gv: hướng dẫn học sinh về thuật tóan của bài
tóan.


B1: Nhập n;


B2: Nếu n<=1 thì n khơng phài là số ngun
tố. Ngược lại chuyển sang B3


B3: i2;


B4: Nếu n mod i=0 chuyển sang bước 6
B5: ii+1; quay lại b4.


B6: Nếu i=n thì n la số ngun tố. Ngược lại n
khơng là số nguyên tố.


B7: Kết thúc tuật tóan.


Gv chạy tay chương trình cho học sinh quan
sát. ? Cấu trúc một chương trình pascal gồm


<b>Bài 2: Viết chương trình nhập n từ bàn </b>


<b>phím. Kiểm tra xem n có phải là số </b>
<b>nguyên tố không?</b>


Ý tưởng: Kiểm tra lần lượt n có chia hết cho
các số trong khoảng 2<=i<n-1. Kiểm tra tính
chia hết bằng phép chia lấy phần dư (mod)


a. Đọc và tìm hiểu ý nghĩa của từng câu lệnh
trong đọan chương trình sau đây:


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

mấy phần?


Hs: 2 phần: Khai báo và phần thân


?: Trong bài tóan trên sử dụng bao nhiêu biến?
Hs: 2 biến n và i


Gv: Muốn sử dụng được 2 biến đó phải khái
báo biến cho nó.


? Một em lên khai báo biến.
Hs: Var n,i:integer;


? Muốn nhập n sử dụng câu lệnh nào?
Hs: write(‘nhạp n: ‘); readln(n);
? Sử dụng câu lệnh gì ở b2?


Hs: If n<=1 then write(n,’ khong la so nguyen
to’) else (chuyển sang b3);



Gv hướng dẫn cho học sinh cách viết chương
trình ở bước 3,4,5,6.


Gv giải thích cho học sinh ý nghĩa từng câu
lệnh.


Gv cho học sinh thực hành trên máy.
Hs thức hành.


Gv quan sát và hướng dẫn học sinh.


b. Gõ chương trình và chạy thử chương trình
với một vài độ chính xác khác nhau.


<b>SGK trang 73</b>


<i><b>4. Củng cố:</b></i>


Nêu cú pháp câu lệnh While…do
Nêu cú pháp câu lệnh for…do
Nêu cú pháp câu lệnh điều kiện.


<i><b>5. Dặn dò:</b></i>


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


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

<i>Tuần: 29</i> <i>Ngày soạn :</i>


<i>Tiết : 55</i> <i>Ngày dạy :</i>



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


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


 Biết và nắm rõ cú pháp câu lệnh điều kiện, câu lệnh lặp với số bước lặp xác định, câu


lệnh lặp với số bước lặp chưa xác định.


 Từ một thuật tóan hoặc chương trình cho trước biết cách xác định kết quả khi kết thúc


chương trình.


 Nhận biết được các lỗi sai trong câu lệnh và sửa lại cho đúng.


<b>II. ChuÈn bÞ: </b>


- Giáo viên: Soạn bài, đọc tài liệu tham khảo, dụng cụ học tập
- Học sinh: Đọc trước bài, làm các bài tập, dụng cụ học tập.


<b>III. Tiến trình hoạt động:</b>
<b>1. Ổn định lớp:</b>


- Giữ trật tự lớp học.
- Kiểm tra sĩ số.


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


- Kiểm tra việc chuẩn bị bài ở nhà của học sinh trong vë.
<b>3. Bài mới:</b>


<i><b>Hoạt động của giáo viên và hc sinh</b></i> <i><b>Ni dung</b></i>



<b>Hoạt đeng 1: Lý thuyt </b>


? Có mấy dạng câu lệnh điều kiện? Nêu cú
pháp từng dạng.


Hs lên bảng viết.


? Viết cú pháp câu lệnh lặp với số bước lặp
xác định.


? Viết cú pháp câu lnh lp vi s bc lp
cha xỏc nh.


<b>Hoạt đeng 2: Bài tập</b>


<b>Dạng 1: Tìm lỗi sai trong càc câu lệnh </b>
<b>sau: </b>


Gv đưa ra mọt số bài tập.


? Yêu câu một vài học sinh lên bảng tìm ra
lỗi sai trong các câu lệnh trên và sửa lại
cho đúng.


Hs làm bài ra giấy quan sát và nhận xét bài
làm của bạn.


Gv nhận xét đưa ra đáp án cuối cùng.



<b>I. Lý thuyết</b>


1. Câu lệnh điều kiện


Dạng thiếu: <i>If <Đk> then <CL>;</i>


Dạng đủ: <i>If <ĐK> then <CL1> else <CL2>;</i>
2. Câu lệnh lặp với số bước lặp xác định


<i>For i:=GTĐ to GTC do <CL>;</i>


3. Câu lệnh điều kiện với số bước lặp chưa xác
định


<i>While ĐK do <CL>;</i>
<b>II. Bài tập</b>


<b>Dạng 1: Tìm lỗi sai trong các câu lệnh sau: </b>
1. Các câu lệnh điều kiện


a. If x:=7 then a=b;
b. If x>5; then a:=b;
c. If x>5 then a:=b; m:=n;
d. If x>5 then a:=b; else m:=n;


2. Các câu lệnh lặp với số bước lặp xác định
a. for i:=100 to 1 do write(‘A’);


b. For i:=1.5 do 10.5 do write(‘A’);
c. For i:=1 to 10 d0 write(‘A’);


d. For i:=1 to 10 do; write(‘A’);


3. Các câu lệnh lặp với số bước lặp chưa xác
định.


a. x:=10; while x:=10 do x:=x+5;
b. x:=10; while x=10 do x=x+5;


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

? Câu lệnh điều kiện được thực hiện như
thế nào?


Hs. Kiểm tra điều kiện nếu điều kiện đúng
thực hiện câu lệnh ngược lại bỏ qua câu
lệnh.


? Câu lệnh điều kiện dạng đủ thực hiện như
thế nào?


Hs trả lời…


? câu lệnh lặp với số bứoc lặp xác định
được thực hiện như thế nào?


? Câu lệnh lặp với sô bước lặp không xác
định được thự hiện như thế nào?


Hs trả lời.


Gv yêu vâu học sinh lên giải bài tập.
Gv nhận xét rút ra kết luận cuối cùng.


Đáp án: Câu 1. x= 5 câu 2. j=18 câu 3.
n=6; s=10 câu 4. n=11; s=16


? Yêu cầu học sinh chạy bằng tạy thuật
<b>tóan 1 vào giấy và cho biết kết quả khi kết </b>
thúc thuật tóan.


? Yêu cầu một vài học sinh lên bảng làm.
Gv nhận xét và giải thích thuật tóan.


? Sử dụng câu lệnh gì để giả quyết bài tóan
này?


Hs While..do


? Yêu cầu một vài học sinh lên viết chương
trình


<i>x:=3; y:=2;</i>
<i>while y < 20 do</i>
<i>begin</i>


<i> x:=x+1; y:=y+x;</i>
<i>end;</i>


? Yêu cầu Hs lên viết chương trình của
<b>thuật tóan 2:</b>


<i>s:=100; i:=1;</i>
<i>while S>20 do</i>


<i>Begin</i>


<i> S:=s+2*I;</i>
<i> I:=i+3;</i>
<i>End;</i>


s:=s+n;


<b>Dạng 2: Cho biết kết quả của đọan chương </b>
<b>trình sau.</b>


1. x:=5; if x>10 then x:=x+1;
2. j:=0; for i:=0 to 9 do j:=j+2;
3. s:=0; n:=0;


while S<=10 do


begin n:=n+1; s:=s+n; end;
4. s:=5; n:=0;


while n<=10 do n:=n+3;
s:=s+n;


<b>Dạng 3: Từ thuật tốn hãy viết chương trình</b>
<b>1. Thuật tóan 1:</b>


B1: x 3; y 2;


B2: Nếu y >= 20, chuyển sang B4.
B3: x x +1; y y + x. Quay về B2.



B4: Thông báo kết quả x và y. Kết thúc thuật
tốn.


<b>2. Thuật tóan 2:</b>
B1: s100; i1;


B2: Nếu s <= 20 thì chuyển sang b4
B3: ss+2*I; ii+3; quay về B2


B4: Thông báo kết quả S và i. Kết thúc tguật
tóan.


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


?. Nêu cú pháp câu lệnh While...do?
?. Vòng lặp kết thúc khi nào?


<b> 5. Dặn dò:</b>


- Về nhà học bài.


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

<i>Tuần: 29</i> <i>Ngày soạn :</i>


<i>Tiết : 56</i> <i>Ngày dạy :</i>


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


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


 Biết và nắm rõ cú pháp câu lệnh điều kiện, câu lệnh lặp với số bước lặp xác định, câu



lệnh lặp với số bước lặp chưa xác định.


 Từ một thuật tóan hoặc chương trình cho trước biết cách xác định kết quả khi kết thúc


chương trình.


 Nhận biết được các lỗi sai trong câu lệnh và sửa lại cho đúng.
 Viết được chương trình để giải quyết một số bài túan n gin


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


- Giáo viên: chun b bài kiểm tra.


- Häc sinh: Học bài xem lại tất cả những bài tập đã được học.


<b>III. Tiến trình hoạt động:</b>
<b>1. Ổn định lớp:</b>


- Giữ trật tự lớp học, kiểm tra sĩ số.


<b>2. Tiến hành kiểm tra</b>


<b>Đề 1:</b>
A. Lý thuyết: (3đ)


1. Cho biết kết quả của câu lệnh sau:
<i>x := 12;</i>


<i>If x <10 then x := x + 5;</i>



a. 12 b. 5 c. 10 d. 17


2. Cho biết kết quả khi vòng lặp sau kết thúc:
<i>S := 10;</i>


<i>For i := 1 to 7 do S := S + (i*2);</i>


a. 66 b. 24 c. 17 d. 10


3. Cho biết kết quả khi vòng lặp sau kết thúc:
<i>I := 1; S := 0;</i>


<i>While S <= 20 do</i>
<i> Begin</i>


<i> S := S + I; I := I + 1;</i>
<i> End;</i>


a. S = 21; I = 7; b. S = 15; I = 6; c. S = 21; I = 6; d. S = 15; I = 7;
4. Trong các câu lệnh sau câu lệnh nào đúng:


a. x := 10; While x := 10 do x := x+5;
b. x := 10; While x = 10 do x = x+5;


c. S := 0; n := 0; while S <= 10 do n = n+1; S := S+n;
d. S := 0; n := 0;


While S <= 10 do



begin n := n+1; S := S+n; end;
5. Trong các câu lệnh sau câu lệnh nào đúng:


a. For i := 10 to 1 do write(‘A’);
b. For i := 1.5 to 10.5 do write(‘A’);
c. For i = 1 to 10 do write(‘A’);
d. For i := 1 to 10 do write(‘A’);
6. Trong các câu lệnh sau câu lệnh nào đúng


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

c. If x = 7 then a := b;


d. If x = 7 then a := b; else b := a;
B. Tự luận (7đ)


1. Cho thuật toán sau:
B1: a 1; b 1;


B2: Nếu b >= 10, chuyển sang B4.
B3: a  a +2; b  b + a. Quay về B2.


B4: Thông báo kết quả a và b. Kết thúc thuật toán.


a. Cho biết kết quả a và b khi kết thúc thuật toán. (1đ)
b. Từ thuật tóan viết chương trình Pascal hồn chỉnh. (3đ)
2. Chỉ ra các lỗi sai và sửa lại cho đúng các câu lệnh Pascal sau:


a. If a > b then max = a; else max:=b;
b. S = 0; For I = 1.2 to 10 do S = S + 1/I;
c. S = 0; I = 1;



While S < 100 do;


Begin S = S + I; I := I +2; end;
Đề 2:
A. Lý thuyết: (3đ)


3. Cho biết kết quả khi vòng lặp sau kết thúc:
<i>S := 10;</i>


<i>For i := 1 to 8 do S := S + (i*2);</i>


a. 66 b. 10 c. 18 d. 26


4. Trong các câu lệnh sau câu lệnh nào đúng:
a. S := 0; n := 0;


While S <= 10 do


begin n := n+1; S := S+n; end;
b. x := 10; While x = 10 do x = x+5;


c. S := 0; n := 0; while S <= 10 do n = n+1; S := S+n;
d. x := 10; While x := 10 do x := x+5;


5. Trong các câu lệnh sau câu lệnh nào đúng:
a. For i = 1 to 20 do write(‘BA’);
b. For i := 20 to 1 do write(‘BA’);
c. For i := 1 to 20 do write(‘BA’);
d. For i := 1.5 to 20.5 do write(‘BA’);
6. Cho biết kết quả của câu lệnh sau:



<i>x := 5;</i>


<i>If x <14 then x := x + 5;</i>


a.10 b. 19 c. 14 d. 5


7. Trong các câu lệnh sau câu lệnh nào đúng
a. If x = 8 then a := b;


b. If x = 8 then a = b;
c. If x := 8then a = b;


d. If x = 8 then a := b; else b := a;
8. Cho biết kết quả khi vòng lặp sau kết thúc:


<i>I := 1; S := 0;</i>
<i>While S <= 24 do</i>
<i> Begin</i>


<i> S := S + I; I := I +3;</i>
<i> End;</i>


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

9. Cho thuật toán sau:
B1: a 2; b 2;


B2: Nếu b >= 20, chuyển sang B4.
B3: a  a + 2; b  b + a. Quay về B2.


B4: Thông báo kết quả a và b. Kết thúc thuật toán.



a. Cho biết kết quả a và b khi kết thúc thuật toán. (1đ)
b. Từ thuật tóan viết chương trình Pascal hồn chỉnh. (3đ)
10. Chỉ ra các lỗi sai và sửa lại cho đúng các câu lệnh Pascal sau: (3đ)


a. S = 3; I =2;


While S <= 100 do;


Begin S = S + I; I := I +4; end;
b. If a > b then max = a; else max:=b;
c. S = 0; For I = 1 to 15.2 do S = S + 1/I;


<b>3. Dặn dò:</b>


</div>

<!--links-->

×