Lý thuyết Tin 10 Bài 16 Kết nối tri thức: Ngôn ngữ bậc cao và Python

Trả lời nhanh

Bài 16 gồm ba ý chính: (1) ngôn ngữ lập trình bậc cao có câu lệnh gần ngôn ngữ tự nhiên nên dễ đọc, dễ viết hơn ngôn ngữ máy và hợp ngữ; (2) Python là ngôn ngữ bậc cao, mã nguồn mở, có hai chế độ là gõ lệnh trực tiếp (dấu nhắc >>>) và soạn thảo (File/New File); (3) lệnh print() đưa dữ liệu ra màn hình, Python tự nhận biết kiểu số hay xâu kí tự.

1. Ngôn ngữ lập trình bậc cao

Máy tính chỉ hiểu trực tiếp dãy bit 0 và 1, gọi là ngôn ngữ máy. Viết chương trình bằng dãy bit rất mệt và dễ sai, nên người ta tạo ra các ngôn ngữ ngày càng gần con người hơn.

  • Ngôn ngữ máy: dãy 0 và 1, máy chạy được ngay nhưng người rất khó đọc.
  • Hợp ngữ (Assembly): dùng các từ viết tắt gợi nhớ thay cho dãy bit, vẫn phụ thuộc loại máy và phải được dịch sang ngôn ngữ máy.
  • Ngôn ngữ lập trình bậc cao: câu lệnh viết gần với ngôn ngữ tự nhiên (thường là tiếng Anh), không phụ thuộc nhiều vào phần cứng. Ví dụ: Python, C++, Java, Pascal.
Sơ đồ ba mức ngôn ngữ lập trình và quá trình dịch chương trình bậc cao sang mã máy
Ba mức ngôn ngữ lập trình: càng lên cao càng gần ngôn ngữ tự nhiên; chương trình bậc cao cần trình dịch để máy thực hiện.

Chương trình viết bằng ngôn ngữ bậc cao (gọi là chương trình nguồn) phải được trình dịch chuyển thành ngôn ngữ máy thì máy mới thực hiện được. Python dùng trình thông dịch: đọc và thực hiện lệnh từng dòng, nên rất tiện để thử nghiệm.

Mẹo nhớ

“Bậc càng cao – càng gần người, càng xa máy”. Nếu đề hỏi ngôn ngữ nào gần ngôn ngữ tự nhiên nhất, hãy chọn ngôn ngữ bậc cao; hỏi ngôn ngữ nào không phải bậc cao, hãy tìm ngôn ngữ máy hoặc Assembly (hợp ngữ).

2. Python – ngôn ngữ lập trình dùng trong học tập

Python là ngôn ngữ bậc cao do lập trình viên người Hà Lan Guido van Rossum thiết kế, ra mắt lần đầu năm 1991. Những đặc điểm cần nhớ:

  • Cú pháp đơn giản, ngắn gọn, phù hợp người mới học.
  • Mã nguồn mở, miễn phí nên cộng đồng lớn, nhiều nhà khoa học cùng phát triển thư viện.
  • Phổ biến trong nghiên cứu, giáo dục, phân tích dữ liệu, trí tuệ nhân tạo.
  • Dùng thụt lề đầu dòng để xác định khối lệnh (không dùng cặp ngoặc nhọn như C++). Phần này sẽ gặp nhiều ở các bài về lệnh điều kiện, vòng lặp.

3. Môi trường lập trình Python

Khi cài Python, bạn có sẵn môi trường làm việc (thường là IDLE). Môi trường này có hai chế độ:

Tiêu chí Chế độ gõ lệnh trực tiếp Chế độ soạn thảo
Cách dùng Gõ lệnh sau dấu nhắc >>>, nhấn Enter Chọn File/New File, viết nhiều dòng lệnh rồi lưu và chạy
Kết quả Hiện ngay sau mỗi lệnh Hiện sau khi chạy cả chương trình
Lưu lại Không lưu thành tệp chương trình Lưu thành tệp có đuôi .py
Dùng khi Tính toán nhanh, kiểm tra thử một lệnh Viết chương trình hoàn chỉnh, nhiều lệnh

Ngoài môi trường mặc định, bạn có thể soạn chương trình Python bằng phần mềm soạn thảo văn bản hoặc các phần mềm chuyên dụng như Wingware, PyCharm…

4. Một số lệnh Python đầu tiên

4.1. Python tự nhận biết kiểu dữ liệu

Khi bạn nhập một số hoặc một xâu kí tự (đặt trong dấu nháy), Python tự biết đó là kiểu nào, không cần khai báo. Python phân biệt số nguyên (như 7) và số thực (như 7.0, 2.5).

4.2. Các phép toán số học thường dùng

Kí hiệu Ý nghĩa Ví dụ Kết quả
+, - Cộng, trừ 8 - 3 5
* Nhân 4 * 5 20
/ Chia (kết quả là số thực) 10 / 4 2.5
// Chia lấy phần nguyên 10 // 4 2
% Chia lấy phần dư 10 % 4 2
** Luỹ thừa 2 ** 3 8

Thứ tự ưu tiên giống Toán: trong ngoặc trước, rồi luỹ thừa, tiếp đến nhân/chia, cuối cùng cộng/trừ; cùng mức thì tính từ trái sang phải.

Lưu ý: phép / luôn cho kết quả số thực. Vì vậy 4 + 15 / 5 trong Python hiện 7.0; giá trị là 7 (15 / 5 = 3 rồi 4 + 3), chỉ khác cách hiển thị.

4.3. Lệnh print()

Lệnh print() đưa dữ liệu ra màn hình. Có thể in một hoặc nhiều giá trị, cách nhau bằng dấu phẩy:

print(v1, v2, ..., vn)

Ví dụ trong chế độ gõ lệnh trực tiếp:

>>> print("Xin chào")
Xin chào
>>> print("Tổng:", 3 + 4)
Tổng: 7
>>> print(2 ** 5, 17 // 5, 17 % 5)
32 3 2

Các giá trị in trên cùng một dòng, ngăn cách bằng một dấu cách. Biểu thức như 3 + 4 được tính trước rồi mới in kết quả; còn nội dung trong dấu nháy được in nguyên văn.

5. Thực hành: tạo chương trình Bai1.py

Các bước tạo, lưu và chạy chương trình đầu tiên ở chế độ soạn thảo:

  1. Nháy đúp biểu tượng Python (IDLE) để khởi động.
  2. Chọn File/New File để mở cửa sổ soạn thảo.
  3. Nhập các dòng lệnh. Ví dụ tự đặt:
    print("Chào các bạn")
    print("Học Tin 10 với Python")
    print("5 + 7 =", 5 + 7)
  4. Chọn File/Save hoặc nhấn Ctrl + S, đặt tên Bai1.py.
  5. Chọn Run/Run Module hoặc nhấn phím F5 để chạy.
  6. Kết thúc phiên làm việc: đóng cửa sổ, hoặc gõ quit() / exit() rồi nhấn Enter.

Kết quả mong đợi ở cửa sổ Shell: ba dòng, dòng cuối là 5 + 7 = 12.

6. Lỗi thường gặp của người mới

  • Viết hoa tên lệnh: Print("a") báo lỗi vì Python phân biệt chữ hoa, chữ thường.
  • Thiếu hoặc lệch dấu nháy, ngoặc: print("Chào) gây lỗi cú pháp.
  • Hai dấu phép toán liền nhau: 3 + * 5 sai, cần bỏ bớt một dấu (lỗi nằm ở cụm + *).
  • Dùng dấu nháy cong khi chép từ văn bản: dấu “ ” trong Word không dùng được, phải gõ dấu nháy thẳng ” ” hoặc ‘ ‘.
  • Thụt lề tuỳ tiện: ở dòng lệnh đơn giản, đừng chừa dấu cách đầu dòng vì Python sẽ báo lỗi thụt lề.
  • Quên lưu rồi mới chạy: IDLE sẽ yêu cầu lưu tệp trước khi chạy ở chế độ soạn thảo.

7. Luyện tập (có đáp án)

Bài 1. Tính giá trị: a) 2 + 3 * 4; b) (2 + 3) * 4; c) 20 / 4 - 1.

Đáp án: a) 14 (nhân trước); b) 20 (ngoặc trước); c) 4.0 (20 / 4 = 5.0 rồi trừ 1).

Bài 2. Cho print(17 // 5, 17 % 5, 2 ** 4). Màn hình hiện gì?

Đáp án: 3 2 16, vì 17 = 5 × 3 + 2 và 24 = 16.

Bài 3. Viết lệnh in ra dòng Chu vi: 20 của hình vuông cạnh 5, trong đó 20 do Python tính.

Đáp án: print("Chu vi:", 4 * 5).

Bài 4 (trắc nghiệm nhanh).

  1. Giá trị của 6 - 6 / 2 + 4 * 5 - 6 / 2 là? A. 17 B. 20 C. 18 D. 19 → B: 6 − 3 + 20 − 3 = 20 (hiển thị 20.0).
  2. Python xác định khối lệnh bằng gì? A. Thụt lề B. Dấu nháy C. Ngoặc tròn D. Ngoặc vuông → A.
  3. Chế độ nào thích hợp để kiểm tra nhanh một phép tính? → Chế độ gõ lệnh trực tiếp.
  4. Ngôn ngữ nào sau đây không phải ngôn ngữ bậc cao: C++ hay Assembly? → Assembly (hợp ngữ).

8. Tóm tắt nhanh để ôn thi

  • Ngôn ngữ bậc cao: gần ngôn ngữ tự nhiên, cần trình dịch sang ngôn ngữ máy.
  • Python: bậc cao, mã nguồn mở, Guido van Rossum, ra mắt 1991.
  • Hai chế độ: gõ lệnh trực tiếp (>>>) và soạn thảo (File/New File, lưu .py, chạy bằng F5).
  • print() in một hay nhiều giá trị; quit() hoặc exit() để thoát.

Xem thêm các bài cùng chương

Câu hỏi thường gặp

Ngôn ngữ lập trình bậc cao khác ngôn ngữ máy ở điểm nào?

Ngôn ngữ bậc cao có câu lệnh gần ngôn ngữ tự nhiên, dễ đọc, dễ viết nhưng phải được trình dịch chuyển sang ngôn ngữ máy. Ngôn ngữ máy là dãy bit 0 và 1, máy chạy trực tiếp nhưng người rất khó dùng.

Khi nào dùng chế độ gõ lệnh trực tiếp, khi nào dùng chế độ soạn thảo trong Python?

Chế độ gõ lệnh trực tiếp (dấu nhắc >>>) dùng để tính toán, thử nhanh một lệnh. Chế độ soạn thảo (File/New File) dùng để viết chương trình nhiều dòng lệnh, lưu thành tệp .py và chạy bằng Run Module hoặc F5.

Vì sao 4 + 15 / 5 trong Python ra 7.0 chứ không phải 7?

Phép chia / trong Python luôn cho kết quả là số thực, nên 15 / 5 bằng 3.0 và tổng là 7.0. Về giá trị, đó vẫn là 7; muốn kết quả nguyên khi chia hết có thể dùng phép chia lấy phần nguyên //.

Làm thế nào để thoát khỏi Python sau khi làm việc?

Có thể nháy nút đóng cửa sổ ở góc trên bên phải, hoặc gõ lệnh quit() hay exit() rồi nhấn Enter ở chế độ gõ lệnh trực tiếp.