Tài liệu hướng dẫn Tin học Lớp 8 - Lập trình đơn giản với Python

Tài liệu hướng dẫn Tin học Lớp 8 - Lập trình đơn giản với Python

Viết chương trình - ra lệnh cho máy tính làm việc

Để máy tính thực hiện một công việc nào đó, con người cần đưa cho máy tính các

chỉ dẫn thích hợp (câu lệnh). Máy tính sẽ lần lượt thực hiện các lệnh đó giống như rô-bốt

ở ví dụ trên.

Để tránh “nhắc” rô-bốt thực hiện từng câu lệnh, người ta thường tập hợp các lệnh

đó và lưu trong rô-bốt với tên “Hãy gỡ bom”. Khi đó chỉ cần ra lệnh “Hãy gỡ bom” thì

rô-bốt sẽ tự động thực hiện các lệnh đó. Việc tập hợp các lệnh để điều khiển rô-bốt như

vậy chính là viết chương trình. Tương tự, để điều khiển máy tính làm việc, chúng ta cũng

viết chương trình máy tính.

Chương tình máy tính là một dãy các câu lệnh mà máy tính có thể hiểu

và thực hiện được.

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

Trong thực tế 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 hoàn thành công việc. Vì

thế, để khai thác triệt để tốc độ của máy tính việc viết nhiều lệnh và tập hợp lại trong một

chương trình giúp con người điều khiển máy tính một cách đơn giản và hiệu quả hơn.

Khi thực hiện chương trình, máy tính sẽ thực hiện các câu lệnh trong chương tình

một cách tuần tự, nghĩa là thực hiện xong một lệnh sẽ thực hiện lệnh tiếp theo, từ lệnh

đầu tiên đến lệnh cuối cùng.

pdf 58 trang thucuc 77651
Bạn đang xem 20 trang mẫu của tài liệu "Tài liệu hướng dẫn Tin học Lớp 8 - Lập trình đơn giản với Python", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
 1 
HƯỚNG DẪN HỌC 
TIN HỌC 
 NGUYỄN TẤN PHONG 
TÀI LIỆU 
 2 
 3 
1. Viết chương trình - ra lệnh cho máy tính làm việc 
Để máy tính thực hiện một công việc nào đó, con người cần đưa cho máy tính các 
chỉ dẫn thích hợp (câu lệnh). Máy tính sẽ lần lượt thực hiện các lệnh đó giống như rô-bốt 
ở ví dụ trên. 
Để tránh “nhắc” rô-bốt thực hiện từng câu lệnh, người ta thường tập hợp các lệnh 
đó và lưu trong rô-bốt với tên “Hãy gỡ bom”. Khi đó chỉ cần ra lệnh “Hãy gỡ bom” thì 
rô-bốt sẽ tự động thực hiện các lệnh đó. Việc tập hợp các lệnh để điều khiển rô-bốt như 
vậy chính là viết chương trình. Tương tự, để điều khiển máy tính làm việc, chúng ta cũng 
viết chương trình máy tính. 
Chương tình máy tính là một dãy các câu lệnh mà máy tính có thể hiểu 
và thực hiện được. 
Tại sao cần viết chương trình? 
Trong thực tế 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 hoàn thành công việc. Vì 
thế, để khai thác triệt để tốc độ của máy tính việc viết nhiều lệnh và tập hợp lại trong một 
chương trình giúp con người điều khiển máy tính một cách đơn giản và hiệu quả hơn. 
Khi thực hiện chương trình, máy tính sẽ thực hiện các câu lệnh trong chương tình 
một cách tuần tự, nghĩa là thực hiện xong một lệnh sẽ thực hiện lệnh tiếp theo, từ lệnh 
đầu tiên đến lệnh cuối cùng. 
- Con người chỉ dẫn cho máy tính thực hiện 
công việc thông qua các lệnh 
- Chương trình là bản hướng dẫn cho máy 
tính thực hiện những nhiệm vụ cụ thể 
BÀI 
 MÁY TÍNH 
VÀ CHƯƠNG TRÌNH MÁY TÍNH 1 
- Con người chỉ dẫn cho máy tính thực 
hiện công việc thông qua các lệnh. 
- Chương trình là bản hướng dẫn cho máy 
tính thực hiện những nhiệm vụ cụ thể. 
 4 
Trở lại ví dụ về rô-bốt gỡ bom, chương trình có thể có các lệnh sau: 
2. Chương trình và ngôn ngữ lập trình 
Chúng ta đã biết, để máy tính có thể xử lí, thông tin đưa vào máy phải được chuyển 
đổi thành dạng dãy bit (dãy các số chỉ gồm 0 và 1). Các dãy bit là cơ sở để tạo ra ngôn 
ngữ dành cho máy tính, được gọi là ngôn ngữ máy. Những chương trình máy tính đầu 
tiên khi máy tính mới xuất hiện được viết chính bằng ngôn ngữ này. 
Tuy nhiên, việc viết chương trình bằng ngôn ngữ máy rất khó khăn và mất nhiều 
thời gian, công sức. Bởi lẽ, về mặt trực quan, các câu lệnh được viết dưới dạng dãy bit 
khác xa với ngôn ngữ tự nhiên nên khó nhớ, khó sử dụng. Vì vậy, người ta mong muốn 
có thể sử dụng được các từ có nghĩa, 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ình đã ra đời để phục vụ mục đích đó. 
Ngôn ngữ lập tình là ngôn ngữ dùng để viết các chương tình máy tính. 
Như vậy, để tạo ra chương trình máy tính, chúng ta phải viết chương trình bằng 
một ngôn ngữ nào đó. Nói cách khác, ngôn ngữ lập trình là công cụ giúp để tạo ra các 
chương tình máy tính. 
Tuy nhiên, máy tính vẫn chưa thể hiểu được các chương trình được viết bằng ngôn 
ngữ lập trình. Chương tì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. 
Hãy gỡ bom 
Bắt đầu 
Quay phải 
Tiến 1 bước. 
Quay trái 
Tiến 3 bước. 
Gỡ bom. 
Kết thúc 
 5 
Như vậy, việc tạo ra chương tình máy tính thực chất gồm 2 bước sau: 
 Viết chương trình bằng một ngôn ngữ lập trình. 
 Dịch chương tình thành ngôn ngữ máy để máy tính có thể hiểu được. 
Chương trình viết bằng ngôn ngữ lập trình cần được chuyển đổi 
thành ngôn ngữ máy 
Kết quả nhận được sau bước  là danh sách các lệnh được lưu thành một tệp văn 
bản trong máy tính; còn kết quả của bước  là một tệp có thể thực hiện trên máy tính. 
Các tệp đó thường được gọi chung là chương trình. 
Chương trình có thể được soạn thảo nhờ một chương trình soạn thảo (tương tự như 
phần mềm soạn thảo Word). Chương trình soạn thảo và chương trình dịch cùng với các 
công cụ trợ giúp tìm kiếm, sửa lỗi và thực hiện chương trình 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 Python 
có môi trường lập trình phổ biến là IDLE (Python 3.8 32-bit). 
CÂU HỎI VÀ BÀI TẬP 
1. Hãy cho biết chương trình máy tính là gì? 
2. Hãy cho biết ngôn ngữ lập trình là gì? Ngôn ngữ máy là gì? 
3. Hãy cho biết chương trình dịch là gì? 
Viết chương trình 
Dịch 
 6 
1. Ngôn ngữ lập trình gồm những gì? 
Chúng ta đã biết chương trình có thể có nhiều câu lệnh. Các câu lệnh được viết từ 
những kí tự nhất định. Tập kí tự này tạo thành bảng chữ cái của ngôn ngữ lập trình. 
Giống như ngôn ngữ tự nhiên, mọi ngôn ngữ lập trình đều có bảng chữ cái riêng. 
Các câu lệnh chỉ được viết từ các chữ cái của bảng chữ cái đó. 
Bảng chữ cái của các ngôn ngữ lập trình 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 toán (+, -, *, /,...), dấu đóng mở ngoặc, dấu nháy,... Nói 
chung, hầu hết các kí tự có trên bàn phím máy tính đều có mặt trong bảng chữ cái của 
mọi ngôn ngữ lập trình. 
Câu lệnh trong chương trình trên gồm các từ và các kí hiệu được viết theo một quy 
tắc nhất định. Các quy tắc này quy định cách viết các từ và thứ tự của chúng. Chẳng hạn, 
trong ví dụ trên các từ được cách nhau bởi một hoặc nhiều dấu cách, câu lệnh for được 
kết thúc bởi dấu hai chấm (:), dòng lệnh print('Chào các bạn lớp ',i) được viết thụt vào 
trong lệnh for và có cụm từ tiếng Việt trong cặp dấu nháy đơn (' '),... Nếu câu lệnh bị viết 
sai quy tắc, chương trình dịch sẽ nhận biết và thông báo lỗi. 
Mặt khác, mỗi câu lệnh đều có một ý nghĩa riêng xác định các thao tác mà máy 
tính cần thực hiện. Dòng lệnh đầu tiên trong ví dụ trên là lệnh khai báo một danh sách các 
BÀI 
LÀM QUEN VỚI CHƯƠNG TRÌNH 
VÀ NGÔN NGỮ LẬP TRÌNH 2 
- Ngôn ngữ lập trình là gì? 
- Từ khóa của ngôn ngữ lập trình 
- Cấu trúc của một chương trình máy tính. 
 7 
lớp học của khối lớp 8. Câu lệnh for i in danhsáchlớp: là lệnh lặp với số lần tương ứng 
với các lớp trong sách lớp đã khai báo, . 
Tóm lại, về cơ bản ngôn ngữ lập trình gồm bảng chữ cải và các quy tắc để viết các 
câu lệnh có ý nghĩa xác định, cách bố trí các câu lệnh,... sao cho có thể tạo thành một 
chương trình hoàn chỉnh và thực hiện được trên máy tính. 
2. Từ khóa và tên 
Trong chương trình trên, ta thấy có ba từ for, in, print đó là những từ khoá được 
quy định tuỳ theo mỗi ngồn ngữ lập trình. Từ khoá của một ngôn ngữ lập trình là những 
từ dành riêng, không được dùng các từ khoá này cho bất kì mục đích nào khác ngoài mục 
đích sử dụng do ngôn ngữ lập trình quy định. 
Ngoài các từ khoá, chương trình trong ví dụ trên còn có từ như danhsáchlớp đó là 
các tên được dùng trong chương trình. Khi viết chương trình để giải các bài toán, ta 
thường thực hiện tính toán với những đại lượng (ví dụ như so sánh chiều cao, tính điểm 
trung bình,...) hoặc xử lí các đối tượng khác nhau. Các đại lượng và đối tượng này đều 
phải được đặt tên. Ví dụ tên danhsáchlớp là do người lập trình đặt để chỉ một tập hợp có 
các phần tử là 8A1, 8A2, 8A3. 
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à thoả 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 các từ khoá. 
 Tên trong chương trình được dùng để phân biệt và nhận biết các đại lượng khác 
nhau. Do vậy, 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. 
Ví dụ: Tên hợp lệ trong ngôn ngữ lập trình Python không được bắt đầu bằng chữ 
số và không được chứa dấu cách (kí tự trống). Do vậy chúng ta có thể đặt tên STamgiac 
để chỉ diện tích hình tam giác, hoặc đặt tên ban_kinh cho bán kính của hình tròn,.... Các 
tên đó là những tên hợp lệ, còn các tên Lop em, 8A,... là những tên không hợp lệ. Nếu để 
trong cặp dấu nháy đơn như '8A1', '8A2', '8A3' thì là các chuỗi. 
Chúng ta sẽ dần làm quen với cách đặt tên và sử dụng tên trong các bài sau. 
3. Ví dụ về ngôn ngữ lập trình 
Trong phần này chúng ta sẽ làm quen với một ngôn ngữ lập trình cụ thể, ngôn ngữ 
Python. Để lập trình bằng ngôn ngữ Python, máy tính cần được cài đặt môi trường lập 
trình trên ngôn ngữ này. 
Dưới đây là minh hoạ việc viết và chạy một chương trình cụ thể trong môi trường 
lập trình Python 3.8.5. 
Khi khởi động phần mềm IDLE (Python 3.8 32-bit), cửa sổ soạn thảo chương trình 
như hình 8 dưới đây: 
 8 
Ta sử dụng bàn phím để soạn thảo chương trình tương tự như soạn thảo văn bản 
với Word. Sau khi đã soạn thảo xong một câu lệnh (hoặc nhóm câu lệnh), nhấn tổ hợp 
phím Enter để dịch chương trình. Chương trình dịch sẽ kiểm tra các lỗi chính tả và cú 
pháp; nếu gặp câu lệnh sai, chương trình dịch sẽ thông báo để người viết chương trình dễ 
nhận biết và chỉnh sửa. Nếu đã hết lỗi, sau khi dịch, màn hình có dạng như hình 9 dưới 
đây: 
Để có thể soạn thảo chương trình và lưu lại như thành một tập tin ta thực hiện 
soạn thảo trong môi trường soạn thảo như sau: 
 9 
Sau khi soạn thảo xong ta nhấn phím F5 để dịch và chạy chương trình như 
hình dưới: 
 1. Hãy cho biết các thành phần cơ bản của một ngôn ngữ lập trình? 
2. Cho biết sự khác nhau giữa tù khoá và tên. Cho biết cách đặt tên trong chương trình. 
3. Trong các tên sau đây, tên nào là hợp lệ trong ngôn ngữ Python? 
A) a; B) Tamgiac; C) 8a; D) Tam giac; 
E) beginprogram; F) end; G) b1; H) abc 
CÂU HỎI VÀ BÀI TẬP 
 10 
NỘI DUNG 
Bài 1: Hướng dẫn cài đặt Python 3.x.x Shell 
a/ Tải phần mềm Python 3.x.x Shell 
Địa chỉ: 
Chú ý quan trọng: Python hiện nay có hai phiên bản là 2.x và 3.x; phiên bản 2.x 
đã dừng hỗ trợ vào 01.01.2020; phiên bản 3.x thì vẫn tiếp tục được phát triển với nhiều 
thư viện. Việc chọn lựa phiên bản 2.x hay 3.x cũng có những sự khác biệt về cách trình 
bày câu lệnh và khả năng hỗ trợ lập trình đa nền tảng khác nhau. 
 b/ Cài đặt Python 3.8.5 
 Khi tải được tập tin có chữ “python-3.8.5.exe” về, hãy nhấp đôi chuột vào tập tin 
để cài đặt. Việc cài đặt rất đơn giản và nhanh chóng. Hãy để tất cả các option mặc định 
và chạy chương trình. 
 Khi cài đặt xong trên màn hình có icon như hình: 
 + IDLE (Python 3.8 32-bit) là môi trường lập trình kết hợp viết code thành các tập 
tin *.py và viết lệnh thực thi ngay (gọi là coding mode – giao diện soạn thảo lệnh; trong 
chương trình tin học 8 chúng ta chỉ thực hành với môi trường IDLE này). 
 BÀI 
THỰC HÀNH LÀM QUEN VỚI PYTHON 
1 
- Bước đầu làm quen với môi trường Python, 
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 Python đơ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ả. 
 11 
 + Python 3.8 (32-bit) là môi trường lập trình viết lệnh thực thi ngay (gọi là 
interactive mode – giao diện tương tác). 
 c/ Giao diện của Python Python 3.x.x Shell 
 c1. Giao diện tương tác (interactive mode) 
Trong cửa sổ bên trên chúng ta thấy có 2 phần chính: 
(1)Thanh công cụ (menu): nó bao gồm rất nhiều, nhưng chỉ một số chúng sẽ được 
sử dụng thường xuyên. 
(2) Phần trung tâm soạn thảo lệnh: đây là nơi bạn viết code python ở chế độ chạy 
lệnh trực tiếp (interactive mode) và xem kết quả thực thi chương trình (bao gồm kết quả 
tính toán và thông báo lỗi) 
c2. Giao diện soạn thảo lệnh (coding mode) 
Bây giờ từ giao diện interactive mode, hãy chọn File => New (hoặc Ctrl + N) 
Hãy gõ những dòng lệnh như hình. Gõ xong, nhấn Ctrl + S (hoặc File => Save). 
Một hộp thoại xuất hiện như hình: 
 12 
Gõ vào tên chương trình là ctdautien.py (.py là đuôi mở rộng của tập tin Python) 
Hãy nhấn phím F5 và xem kết quả ở cửa sổ interactive mode. 
  Hãy đặc biệt ghi nhớ là nhấn phím F5 để dịch và chạy chương trình. 
c.3/ Tìm hiểu “chương trình đầu tiên” có gì? 
Hãy quan sát nội dung đoạn code mà bạn đã tạo như hình: 
Câu lệnh trong python Giải thích 
Chú thích trong chương trình, bắt đầu bằng dấu # 
 Khai báo biến ten, chờ nhận dữ liệu từ bàn phím 
 In ra dòng chữ: 
Xin chào bạn . 
  Bây giờ hãy nhấn Ctrl + Q để thoát Python. 
Bài 2: Soạn thảo, lưu, dịch và chạy một chương trình đơn giản: 
a. Khởi động lại Python, vào giao diện coding mode và gõ các dòng lệnh dưới 
đây: 
b. Nhấn phím F5 (hoặc File => Save) để lưu chương trình. Khi hộp thoại hiện ra 
hãy gõ tên tập tin là chaolop.py. 
c. Quan sát kết quả ở màn hình interactive mode 
Lưu ý: Có thể dùng bảng chọn Run để chạy chương trình. 
 13 
Bài 3: Tìm hiểu một số lỗi trong chương trình và thông báo lỗi: 
a. Hãy sửa tên danhsachlop thành danh sách lớp. Chạy chương trình và quan sát 
thông báo lỗi như hình : 
Giải thích lỗi: tên danh sách lớp do người dùng đặt có chứa khoảng trắng. 
 Hãy xóa bỏ khoảng trắng, sửa lại thành danhsáchlớp. Chạy chương trình và quan 
sát kết quả. 
 Nếu chỉ sửa dòng lệnh đầu tiên là danhsáchlớp và dòng lệnh thứ hai vẫn là 
danhsachlop như hình thì kết quả sẽ báo lỗi như sau : 
 Giải thích lỗi: ở cửa sổ interactive mode xuất hiện thông báo lỗi màu đỏ, tạm dịch 
là: “tại dòng 2 trong mô đun, dòng lệnh for i in danhsachlop:, tên ‘danhsachlop’ chưa 
định nghĩa”. 
b. Xóa bỏ một từ khóa trong đoạn chương trình trên. Chạy chương trình và quan 
sát lỗi. 
 14 
Bài 4: Chỉnh sửa chương trình: 
a. Hãy chỉnh sửa để in ra lời chào và tên của 5 bạn trong tổ của em, ví dụ : 
b. Nhấn Ctrl + Shift + S (hoặc File => Save As ), gõ tên tập tin chaoban.py 
 1. Các bước đã thực hiện: 
  Khởi động Python 
 Soạn thảo chương trình 
  Biên dịch và chạy chương trình: F5 
 Lưu chương trình 
 2. Các từ khóa của Python trong bài học là: for, in, print 
 3. Dấu phẩy (,) dùng để phân cách các giá trị trong lệnh print 
 4. Dấy nháy đơn ('') để chỉ chuỗi. 
 5. Lệnh print() để in thông báo ra màn hình và xuống dòng. 
TỔNG KẾT 
 15 
1. Dữ liệu và kiểu dữ liệu 
Máy tính là công cụ xử lí thông tin, còn chương trình chỉ dẫn cho máy tính cách 
thức xử lí thông tin để có kết quả mong muốn. Thông tin rất đa dạng nên dữ liệu trong 
máy tính cũng rất khác nhau về bản chất. Để dễ dàng quản lí và tăng hiệu quả xử lí, các 
ngôn ngữ lập trình thường phân chia dữ liệu thành các kiểu khác nhau: chữ, số nguyên, 
số thập phân,... 
Ví dụ 1. Hình dưới đây minh hoạ kết quả thực hiện của một chương trình: in ra 
màn hình với các kiểu dữ liệu quen thuộc là chữ và số. 
Các kiểu dữ liệu thường được xử lí theo các cách khác nhau. Chẳng hạn, ta có thể 
thực hiện các phép toán số học với các số, nhưng với các kí tự hay xâu kí tự thì các phép 
toán đó không có nghĩa. 
Các ngôn ngữ lập trình định nghĩa sẵn một số kiểu dữ liệu cơ bản. Kiểu dữ liệu xác 
định miền giá trị có thể của dữ liệu và các phép toán có thể thực hiện trên các dữ liệu đó. 
Dưới đây là một số kiểu dữ liệu thường dùng nhất: 
 Số nguyên, ví dụ số học sinh của một lớp, số sách trong thư viện,... 
 Số thực, ví dụ chiều cao của bạn Bình, điểm trung bình môn Toán,... 
 Kí tự là một chữ, chữ số hay kí hiệu đặc biệt khác, ví dụ: 'a', 'A', '+', '1' (chữ số 
1, khác với số nguyên 1), ' ' (kí tự trống),... Trong đa số các trường hợp, kí tự thường là 
một 'chữ cái' của ngồn ngữ lập trình. 
BÀI 
 CHƯƠNG TRÌNH MÁY TÍNH 
 VÀ DỮ LIỆU 3 
 Một số kiểu dữ liệu cơ bản trong ngôn 
ngữ lập trình. 
 Tương tác người-máy. 
 16 
 Xâu kí tự (hay xâu hoặc chuỗi) là dãy các 'chữ cái' lấy từ bảng chữ cái của ngôn 
ngữ lập trình, ví dụ: "Chao cac ban", "Lop 8E", "2/9/1 945" 
Trong các ngôn ngữ lập trình, dữ liệu kiểu số nguyên còn có thể được phân chia 
tiếp thành các kiểu nhỏ hơn theo các phạm vi giá trị khác nhau, dữ liệu kiểu số thực còn 
có thể được phân chia thành các kiểu có độ chính xác (số chữ số thập phân) khác nhau. 
Ngoài các kiểu nói trên, mỗi ngôn ngữ lập trình cụ thể còn định nghĩa nhiều kiểu 
dữ liệu khác. Số các kiểu dữ liệu và tên kiểu dữ liệu trong mỗi ngôn ngữ lập trình có thể 
khác nhau. 
Ví dụ 2. Bảng dưới đây liệt kê một số kiểu dữ liệu cơ bản của ngôn ngữ lập trình 
Python: 
Tên kiểu Kí hiệu Ví dụ Phạm vi giá trị 
Số nguyên int 12; -15; 17878; Không bị giới hạn, phụ thuộc 
vào tài nguyên của máy tính. Số thực float 1.2; 9.0; -2.3; 
Xâu str "Lập trình Python” 
Trong Python, để chỉ rõ cho chương trình dịch hiểu dãy 'chữ cái' là kiểu xâu, ta 
phải đặt dãy 'chữ cái' đó trong cặp dấu nháy đơn hoặc nháy kép. Ví dụ: 'A5324', '863', 
"A5324", "8635465465". 
2. Các phép toán với kiểu dữ liệu số 
Trong mọi ngôn ngữ lập trình ta đều có thể thực hiện các phép toán số học cộng, 
trừ, nhân và chia với các số nguyên và số thực. 
Chẳng hạn, bảng dưới đây là kí hiệu của các phép toán số học đó trong ngôn ngữ 
Python: 
Kí hiệu Phép toán Kiểu dữ liệu 
+ cộng int, float 
- trừ int, float 
* nhân int, float 
/ chia int, float 
** lũy thừa int, float 
// chia lấy phần nguyên int 
% chia lấy phần dư int 
Chúng ta đã quen thuộc với các phép toán cộng, trừ, nhân và chia. Tuy nhiên, hãy 
lưu ý rằng hầu hết các ngôn ngữ lập trình đều xem kết quả chia hai số n và m (tức n/m) là 
số thực, cho dù n và m là các số nguyên và n có thể chia hết cho m. 
Sử dụng dấu ngoặc, ta có thể kết hợp các phép tính số học nói trên để có các biểu 
thức số học phức tạp hơn. Sau đây là một số ví dụ về biểu thức số học và cách viết chúng 
trong ngôn ngữ lập trình Python: 
 17 
Biểu thức số học Cách viết trong Python 
ab c d− + a*b-c+d 
15 5
2
a
+ 15+5*(a/2) 
25 ( 2)
3 5
x y
x
a b
+
− +
+ +
 (x+5)/(a+3)-y/(b+5)*(x+2)**2 
Chú ý, trong Python khi viết các biểu thức toán phức tạp ta chỉ có thể dùng cặp dấu 
ngoặc tròn ( và ) để gộp các phép toán, không dùng các cặp dấu ngoặc {}, []. 
3. Các phép so sánh 
Ngoài các phép toán số học, ta còn thường so sánh các số. 
Khi viết chương trình, để so sánh dữ liệu (số, biểu thức,...) chúng ta sử dụng các kí 
hiệu do ngôn ngữ lập trình quy định. 
Kí hiệu các phép toán và phép so sánh có thể khác nhau, tuỳ theo từng ngôn ngữ 
lập trình. 
Bảng dưới đây cho biết kí hiệu của các phép so sánh trong ngôn ngữ Python: 
Phép so sánh Kí hiệu toán học Kí hiệu trong Python Ví dụ trong Python 
Bằng = == 5 == 5 
Khác ≠ != 6 != 5 
Nhỏ hơn < < 3 < 5 
Nhỏ hơn hoặc bằng ≤ <= 5 <= 6 
Lớn hơn > > 9 > 6 
Lớn hơn hoặc bằng ≥ >= 9 >= 6 
Kết quả của phép so sánh chỉ có thể là đúng hoặc sai. Ví dụ, phép so sánh 9 > 6 
cho kết quả đúng, 10 == 9 cho kết quả sai hoặc 5 < 3 cũng cho kết quả sai,... 
Để so sánh giá trị của hai biểu thức, chúng ta cũng sử dụng một trong các kí hiệu 
toán học trong bảng trên. Ví dụ: 
So sánh biểu thức Kết quả phép so sánh 
5*2 == 9 Sai 
15 + 7 > 20 - 3 Đúng 
5 + x < 10 Đúng hoặc sai phụ thuộc vào giá trị cụ thể của x 
4. Giao tiếp người – máy tính 
Trong khi thực hiện chương trình máy tính, con người thường có nhu cầu can thiệp 
vào quá trinh tính toán, thực hiện việc kiểm tra, điều chỉnh, bổ sung. Ngược lại, máy tính 
cũng cho thông tin về kết quả tính toán, thông báo, gợi ý,... Quá trình trao đổi dữ liệu hai 
chiều như thế thường được gọi là giao tiếp hay tương tác giữa người và máy tính. Với các 
 18 
máy tính cá nhân, tương tác người-máy thường được thực hiện nhờ các thiết bị chuột, bàn 
phím và màn hình. Dưới đây là một số trường hợp tương tác người-máy. 
 a) Thông báo kết quả tính toán 
Thông báo kết quả tính toán là yêu cầu đầu tiên đối với mọi chương trình. 
Ví dụ, câu lệnh thông báo ra màn hình trong Python: 
in kết quả tính phép toán 2007 + 5123 như hình dưới đây: 
 b) Nhập dữ liệu 
 Một trong những tương tác thường gặp là chương trình yêu cầu nhập dữ liệu. 
Chương trình sẽ tạm ngừng để chờ người dùng “nhập dữ liệu” từ bàn phím hay bằng 
chuột. Hoạt động tiếp theo của chương trình sẽ tuỳ thuộc vào dữ liệu được nhập vào. 
Ví dụ, chương trình yêu cầu nhập năm sinh từ bàn phím. Khi đó ta cần gõ một số 
tự nhiên ứng với năm sinh. Câu lệnh thông báo ra màn hình và chờ nhập năm sinh vào 
biến ns trong Python: 
Sau khi nhập một số, nhấn phím Enter để xác nhận, chương trình sẽ tiếp tục hoạt 
động. 
c) Hộp thoại 
Hộp thoại được sử dụng như một công cụ cho việc giao tiếp người-máy tính trong 
khi chạy chương trình. Ví dụ, trong Python khi viết xong hoặc chỉnh sửa người dùng nhấn 
F5 để chạy chương trình thì một hộp thoại dạng sau đây có thể xuất hiện: 
Khi đó, nếu nháy chuột vào nút OK, chương trình sẽ được lưu lại và dịch, nếu 
chọn Cancel sẽ huỷ lệnh trở về màn hình soạn thảo như bình thường. 
1. Hãy nêu ít nhất hai kiểu dữ liệu và một phép toán có thể thực hiện được trên một kiểu 
dữ liệu, nhưng phép toán đó không có nghĩa trên kiểu dữ liệu kia. 
2. Dãy chữ số 2020 có thể thuộc những kiểu dữ liệu nào? 
3. Hãy phân biệt ý nghĩa của các câu lệnh Python sau đây: 
 và 
CÂU HỎI VÀ BÀI TẬP 
 19 
NỘI DUNG 
Bài 1: Luyện tập và gõ các biểu thức số học trong chương trình Python: 
a) Viết các biểu thức toán học sau đây dưới dạng biểu thức trong Python : 
A) 15.4 30 12− + B) 
10 5 18
3 1 5 1
+
−
+ +
 C) 
2(10 2)
(3 1)
+
+
 D) 
2(10 2) 24
(3 1)
+ −
+
b) Khởi động Python và gõ chương trình sau để tính các biểu thức trên : 
 c) Lưu chương trình với tên Bai1TH2.py, dịch và chạy chương trình. Hãy kiểm 
tra kết quả nhận được trên màn hình. 
Bài 2: 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 trong chương trình Python : 
 a) Mở tệp mới và gõ chương trình sau đây : 
 b) Lưu chương trình với tên Bai2TH2.py, 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ả đó. 
 c) Hãy thêm lệnh print() vào sau mỗi câu lệnh trong chương trình trên. Dịch và 
chạy chương trình. Quan sát kết quả hoạt động của chương trình và cho nhận xét. 
 BÀI 
THỰC HÀNH VIẾT CHƯƠNG TRÌNH ĐỂ TÍNH TOÁN 
2 
- Luyện tập soạn thảo, chỉnh sửa chương trình, 
biên dịch, chạy và xem kết quả hoạt động của 
chương trình trong môi trường soạn thảo lệnh. 
- Thực hành với các biểu thức số học trong 
chương trình Python. 
 20 
Bài 3: Tìm hiểu thêm về cách ghi dữ liệu ra màn hình trong chương trình Python: 
 Mở lại tập tin Bai1TH2.py và lưu lại bản sao với tên Bai3TH2.py. Sửa lại ba lệnh 
cuối thành : 
 Dịch và chạy 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. 
 1. Kí hiệu của các phép toán số học trong Python: +, -, *, /, //, % và **. 
 2. Lệnh print() để xuống một dòng trống. 
3. Lệnh round(m,n) để làm tròn số thực m với n chữ số thập phân sau dấu 
phẩy. 
 4. Dấy nháy đơn ('') để chỉ chuỗi rỗng. 
TỔNG KẾT 
 21 
1. Biến là công cụ trong lập trình 
Hoạt động cơ bản của chương trình máy tính là xử lí dữ liệu. Trước khi được máy 
tính xử lí, mọi dữ liệu nhập vào đều được lưu trong bộ nhớ của máy tính. Ví dụ, nếu muốn 
cộng hai số a và b, trước hết hai số đó sẽ được nhập và lưu trong bộ nhớ máy tính, sau đó 
máy tính sẽ thực hiện phép cộng a + b. 
Để chương trình luôn biết chính xác dữ liệu cần xử lí được lưu ở vị trí nào trong 
bộ nhớ, các ngôn ngữ lập trình cung cấp một công cụ lập trình rất quan trọng. Đó là biến 
nhớ, hay được gọi ngắn gọn là biến. 
Trong lập trình, 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. 
Chúng ta hãy xét một số ví dụ để hiểu vai trò của biến nhớ trong lập trình. 
Trong bài thực hành 2, em đã biết, để có kết quả của phép cộng 15 + 5 và in ra 
màn hình, em có thể sử dụng câu lệnh Python sau đây: 
Câu hỏi đặt ra ở đây là làm thế nào để in ra màn hình tổng của hai số mà giá trị 
của chúng không biết trước (các số là kết quả của một quá trình tính toán trung gian nào 
đó). Bằng cách sử dụng hai biến X, Y để lưu giá trị của các số đó, câu lệnh sau đây sẽ in 
ra màn hình giá trị tổng của chúng: 
Hình dưới đây minh họa trực quan việc lưu trữ các số 15 và 5 trong các ô nhớ có 
“tên” tương ứng là X và Y mà chương trình sẽ lấy ra để thực hiện phép cộng. 
BÀI 
SỬ DỤNG BIẾN TRONG 
CHƯƠNG TRÌNH 4 
  Biến là gì? 
 Cách sử dụng biến trong chương trình. 
 22 
Ví dụ 1: Giả sử cần tính giá trị của các biểu thức 
100 50
3
+
 và 
100 50
5
+
, sau đó in 
kết quả ra màn hình. Chúng ta có thể tính các biểu thức này một cách trực tiếp. Để ý 
rằng tử số trong các biểu thức là 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 X, sau đó thực hiện các phép chia, về mặt toán học, điểu 
này được thực hiện như sau: 
2. Khai báo biến 
Tất cả các biến trong chương trình cần phải được khai báo trước khi sử 
dụng đến. 
Việc khai báo biến gồm: 
  Khai báo tên biến. 
  Khai báo kiểu dữ liệu của biến. 
Tên biến phải tuân theo quy tắc đặt tên của ngôn ngữ lập trình. 
Ví dụ 2: Cách khai báo biến trong ngôn ngữ Python: 
 Tên biến = giá trị khởi tạo. 
Chẳng hạn, khai báo các biến cùng giá trị khởi tạo ban đầu trong python. 
Khai báo Giải thích 
X = 5 Biến X có giá trị khởi tạo là 5, thuộc kiểu int 
Y = 0.0 Biến Y có giá trị khởi tạo là 0.0, thuộc kiểu float 
x = X Biến x có giá trị khởi tại là giá trị X, kiểu dữ liệu của X 
lop = '8A3' Biến lop có giá trị khởi tạo là 8A3, thuộc kiểu str 
dayso = [1,3,5,7,9] Biến dayso có giá trị khởi tạo là một tập hợp 5 phần tử, 
mỗi phần tử là kiểu int, dayso thuộc kiểu list 
Lưu ý: Python phân biệt chữ cái in hoa và chữ cái thường, cho phép tên biến là 
tiếng Việt có dấu. Chẳng hạn, các tên biến: gia, Gia, GIa, GIA, giá, Giá, là các biến 
khác nhau hoàn toàn. Hình dưới đây minh họa sự khác nhau đó: 
Kết quả in ra màn hình là: 
 23 
Thông thường các ngôn ngữ lập trình sẽ yêu cầu khai báo biến đi kèm với kiểu dữ 
liệu của biến ở phần khai báo của chương trình và kiểu dữ liệu có tính tĩnh trong suốt quá 
trình thực thi, nhưng Python thì cho phép khai báo biến tùy ý ở trong chương trình, không 
cần phải khai báo kèm kiểu dữ liệu, chương trình tự nhận diện kiểu dữ liệu theo giá trị 
mà nó được khởi tạo, kiểu dữ liệu của biến là động, kể cả trong các định nghĩa hàm hoặc 
cấu trúc lặp. 
Hình dưới đây cho thấy tính động kiểu dữ liệu của biến, biến thay đổi kiểu dữ liệu 
tính từ khi nó được nhận giá trị mới: 
Lệnh type(biến) để kiểm tra kiểu dữ liệu hiện tại của biến trong python. 
Tùy theo ngôn ngữ lập trình, cú pháp khai báo biến có thể khác nhau. 
3. Sử dụng biến trong chương trình 
Sau khi khai báo, ta có thể sử dụng các biến trong các câu lệnh để tính toán hoặc 
xử lí chúng như với các giá trị dữ liệu (số, kí tự hay xâu, ). Điều phải lưu ý là để có các 
kết quả tính toán đúng mục tiêu của chương trình, cần phải gán các giá trị dữ liệu thích 
hợp cho các biến. 
Như vậy các thao tác có thể thực hiện với các biến là: 
  Gán giá trị cho biến; 
  Tính toán với các biến. 
Khi được gán một giá trị mới, giá trị cũ của biến bị xoá đi. Ta có thể thực hiện việc 
gán giá trị cho biến tại bất kì thời điểm nào trong chưong trình. Hay giá trị của biến có 
thể thay đổi. 
Tuỳ theo ngôn ngữ lập trình, kí hiệu của câu lệnh gán cũng có thể khác nhau. Ví 
dụ, trong ngôn ngữ Python, người ta kí hiệu phép gán là dấu bằng (=), phân biệt với phép 
so sánh bằng là hai dấu bằng (==). 
Ví dụ 3: Bảng dưới đây mô tả lệnh gán giá trị và tính toán với các biến trong Python: 
Lệnh trong Python Ý nghĩa 
X = 12 Gán giá trị số 12 vào biến nhớ X. 
X = Y Gán giá trị đã lưu trong biến nhớ Y vào biến nhớ X. 
X = (a+b)/2 
Thực hiện phép toán tính trung bình cộng hai giá trị nằm 
trong hai biến nhớ a và b. Kết quả gán vào biến nhớ X. 
X = X + 1 
Tăng giá trị của biến nhớ X lên 1 đơn vị, kết quả gán trở 
lại biến X. (cách viết khác: X +=1). 
 24 
 Trong Python, giá trị của biến còn có thể gán nhờ câu lệnh nhập dữ liệu input(). 
 Ví dụ 4: Nhập giá trị cho các biến m, n bằng lệnh input() trong Python. 
 Khi gặp các câu lệnh trên trong chương trình, máy tính sẽ đợi người dùng gõ các 
giá trị tương ứng của các biến m, n từ bàn phím và nhấn phím Enter. 
1. Giả sử Y được khai báo là biến với kiểu dữ liệu số thực, X là biến với kiểu dữ liệu xâu. 
Các phép gán sau đây có hợp lệ không? 
 A) Y = 4 B) X = 3242 C) X = '3242' D) Y = "Lam Dong" 
2. Muốn nhập dữ liệu từ bàn phím cho biến m. Câu lệnh nào sao đây là đúng trong Python? 
A) m = print() B) m = 3242 C) m = input() D) input(n) 
3. Hãy cho biết kiểu dữ liệu của các biến cần khai báo dùng để viết chưong trình để giải 
các bài toán dưới đây: 
a) Tính diện tích S của hình tam giác với độ dài một cạnh a và chiều cao tương ứng 
h (a và h là các số tự nhiên được nhập vào từ bàn phím). 
b) Tính kết qủa c của phép chia lấy phần nguyên và kết qủa d của phép chia lấy 
phần dư của hai số nguyên a và b. 
CÂU HỎI VÀ BÀI TẬP 
 25 
NỘI DUNG 
 Hãy xem lại các kiểu dữ liệu trong Python nêu trong bài 3 để thực hành cách khai 
báo biến với các kiểu dữ liệu khác nhau. 
 Cú pháp khai báo biến trong Python: 
 = 
 trong đó: 
 - danh sách các biến là danh sách một hoặc nhiều tên biến được cách nhau bởi 
dấu phẩy. 
 - danh sách các giá trị khởi tạo ban đầu là giá trị lần lượt được gán cho các biến 
để chương trình xác định kiểu dữ liệu cho biến tương ứng. 
Bài 1: Tìm hiểu một số cách khai báo biến trong Python: 
 Cho đoạn khai báo biến trong ngôn ngữ Python như sau: 
 a) Điền vào bảng sau: 
Tên biến Giá trị khởi tạo Kiểu dữ liệu 
 BÀI 
THỰC HÀNH KHAI BÁO VÀ SỬ DỤNG BIẾN 
3 
Bước đầu làm quen cách khai báo và sử 
dụng biến trong chương trình. 
 26 
b) Khởi động Python và gõ chính xác đoạn chương trình sau: 
c) Lưu lại với tên Bai1TH3.py, dịch và chạy chương trình. Hãy nhập từ bàn phím 
xâu “Nguyễn Văn Tèo” và nhấn phím Enter. Quan sát kết quả in ra màn hình. 
 d) Nêu các cách khai báo biến mà em nhận biết được từ đoạn chương trình trên. 
 e) Lưu lại bản sao với tên file Bai1TH3e.py, sửa lại các câu lệnh như hình dưới. 
Chạy chương trình và nêu nhận xét của em? 
Bài 2: Viết chương trình Python có khai báo và sử dụng biến: 
Bài toán: Một cửa hàng cung cấp dịch vụ bán hàng thanh toán tại nhà. Khách hàng 
chỉ cần đăng kí số lượng mặt hàng cần mua, nhân viên cửa hàng sẽ giao hàng và nhận 
tiền thanh toán tại nhà khách hàng. Ngoài trị giá hàng hoá, khách hàng còn phải trả thêm 
phí dịch vụ. Hãy viết chương trình Python để tính tiền thanh toán trong trường hợp khách 
hàng chỉ mua một mặt hàng duy nhất. 

Tài liệu đính kèm:

  • pdftai_lieu_huong_dan_tin_hoc_lop_8_lap_trinh_don_gian_voi_pyth.pdf