Tin 11 python giải bài tập

  1. Số e cũng giống như số pi đóng vai trò không thể thiếu trong toán học. Giống như hằng số pi, e cũng là một số vô tỉ (không thể biểu diễn thành tỉ số giữa hai số nguyên). Em hãy viết chương trình nhập số nguyên n và tính giá trị xấp xỉ của số e theo công thức sau:

    Tin 11 python giải bài tập

    Lời giải:

    N=int (input ('nhập e= '))

    S=1

    T=0

    For i in range (1, n+1) :

    S=s* (1/i)

    T=t+s

    Print ('e= ', 1+t)

    *giải thích cách hoạt động của dòng lệnh trên:

    Vd cho nhập n=4

    Chương trình bắt đầu chạy: Từ 1 đến 4 (không chạy số 5)

    - Khi i =1:

    S=s* (1/i) =1* (1/1) ==> lúc này s=1

    T=t+s=0+1=1 ==> t=1

    - Khi i =2:

    S=s* (1/i) =1* (1/2) ==> s= =1/2

    T=t+s=1+ 1/2

    - Khi i=3:

    S= (1/2) * (1/3)

    T= 1+ 1/2 + 1/ (2*3)

    - Khi i=4:

    S= (1/2) * (1/3) * (1/4)

    T=1+1/2+1/ (2*3) +1/ (2*3*4)

    Hết vòng lặp chương trình in ra màn hình kết quả của '1+t' cuối cùng.

    NHỮNG BÀI TẬP KHÁC

    BÀI 1: Viết chương trình nhập từ bàn phím vào số nguyên dương n và danh sách số nguyên phân biệt. Đưa ra mạn hình số lượng phần tử chia hết cho 5 trong danh sách đó.

    Tin 11 python giải bài tập

    Lời giải:

    N=int (input ('so nguyen duong: '))

    A=0

    For i in range (1, n+1) :

    If i%5==0: A=a+1

    Print (' số số hạng chia hết cho 5 trong dãy là ', a)

    BÀI 2: Viết hàm kiểm tra một số nguyên n có là số nguyên tố. In các cặp số sinh đôi nhỏ hơn 1000. Các số "sinh đôi" là các số nguyên tố mà khoảng cách giữa chúng là 2.

    Lời giải:

    Def prime (n) :

    S=0

    For i in range (2, n) :

    If n%i==0:

    S=1

    Return s

    N=int (input ('nhap so nguyen'))

    For i in range (2, n+1) :

    If prime (i) ==0:

    For y in range (2, n+1) :

    If prime (y) ==0:

    If i-y==2:

    Print (y, i)

    BÀI 3: Viết chương trình nhập vào số nguyên dương chẵn n từ bàn phím. Phân tích n thành tổng của hai số nguyên tố.

    Lời giải:

    Def prime (n) :

    S=0

    For i in range (2, n) :

    If n%i==0:

    S=1

    Return s

    N=int (input ('nhap so nguyen'))

    For i in range (2, n+1) :

    If prime (i) ==0:

    For y in range (2, int (n//2) +1) :

    If prime (y) ==0:

    If y=i ==n: Print (y, i)

    PS:

    Còn nhiều nữa nên mình sẽ để ở các bài sau ạ ^. ^

    Last edited by a moderator: 16 Tháng chín 2022

  • lớp 11
  • python
  • python cơ bản
  • tin học máy tính

Tin 11 python giải bài tập

Tin 11 python giải bài tập

Tin 11 python giải bài tập

BIÊN SOẠN THEO SGK TIN
HỌC 11
NHÀ XUẤT BẢN GIÁO DỤC

Python
TIN HỌC

1

Dương Thành Long - 2021Python là gì ?
Python là một ngơn ngữ lập trình bậc cao do Guido van Rossum tạo ra và lần
đầu ra mắt vào năm 1991. Python vừa hướng thủ tục (procedural- oriented), vừa hướng
đối tượng (object-oriented) đồng thời có thể nhúng vào ứng dụng như một giao tiếp
kịch bản (scripting interface).
Thế mạnh của Python là rất gần gũi với ngôn ngữ tự nhiên (tiếng Anh), cấu trúc
rõ ràng, dễ đọc, dễ học. Python hiện nay là ngơn ngữ lập trình phổ biến rộng rãi ở châu
Âu, châu Mỹ và được coi như ngơn ngữ lập trình trường học.
Python được dùng để phát triển các ứng dụng web, game, khoa học dữ liệu
(tính tốn, phân tích, khai thác dữ liệu), máy học và trí tuệ nhân tạo, …
Tài liệu dùng kèm Sách giáo khoa Tin học 11 của Bộ Giáo dục và Đào tạo
(NXB. Giáo Dục - Tái bản lần thứ 4, năm 2009).
Tài liệu được trình bày theo cấu trúc Sách giáo khoa Tin học 11. Các ví dụ
và bài tập, bài thực hành trong sách giáo khoa được trình bày lại bằng ngơn ngữ
lập trình Python một cách chi tiết, đầy đủ.
Bổ sung một số kiến thức, kỹ thuật lập trình cần thiết để sử dụng ngơn ngữ
lập trình Python trong dạy và học chương trình Tin học 11.

2

MỤC LỤC

3

TRƯỚC KHI BẮT ĐẦU

1. Hướng dẫn đọc
Sách này dùng kèm với sách giáo khoa Tin học 11 của Bộ Giáo dục và Đào tạo,
Nhà xuất bản Giáo dục Việt Năm tái bản lần thứ 2, năm 2009 (SGK).
Những phần chỉ có tiêu đề, khơng có nội dung nghĩa là sử dụng nguyên văn nội
dung được trình bày trong SGK (các nội dung được trình bày trong SGK là phù hợp
với Python).
Nội dung sách này bám sát theo đúng cấu trúc của SGK. Vì vậy sách chỉ trình
bày và giải quyết các vấn đề được SGK nêu - đó chỉ là một phần rất cơ bản của lập
trình và ngơn ngữ lập trình. Để có thể lập trình và làm chủ ngơn ngữ lập trình Python
thì chúng ta cần nghiên cứu thêm các tài liệu khác (có giới thiệu ở cuối sách).

2. Cài Python
Tải về từ https://www.python.org/downloads/ và tiến hành cài đặt (chọn phiên
bản 3.8 trở lên).
Sau khi hoàn tất cài đặt có thể kiểm tra:
Nhấn phím Windows gõ cmd → Enter
Gõ: python --version → Enter
Lúc này sẽ hiển thị phiên bản Python đã cài đặt trên máy tính.

3. Cài chương trình soạn thảo
Để lập trình theo một ngơn ngữ nào đó ta đều cần có chương trình cho phép gõ
các câu lệnh và ra lệnh thực thi các câu lệnh đó. Trong các trường học, để lập trình với
Pascal ta thường sử dụng FreePascal, với C ta thường dùng CodeBlock, … Với

Python, ta có nhiều lựa chọn. Dưới đây là một số gợi ý:
Notepad++
Tải về tại đây: https://notepad-plus-plus.org/downloads/ Đặc điểm: Đơn giản,
dễ sử dụng.
Nhược điểm: Phải cài thêm plugin để debug.
Thonny
Tải về tại đây: https://thonny.org/
4

Thonny có giao diện đơn giản, cấu hình nhẹ (trên cùng một máy khởi động
nhanh hơn nhiều so với Pycham hay Spyder). Hỗ trợ debug trực quan giúp ta dễ theo
dõi và hình dung quá trình thực thi chương trình. Sử dụng thư viện / module chuẩn của
Python phát hành (không bổ sung hay import sẵn module).
PyCharm Educational Edition
Tải về tại đây: https://www.jetbrains.com/pycharm-edu/
PyCharm là mơi trường phát triển tích hợp đa nền tảng (IDE) được phát triển
bởi Jet Brains và được thiết kế đặc biệt cho Python. Tuy nhiên PyCharm khởi động
khá nặng nề và yêu cầu làm việc với project.

Như vậy, tùy nhu cầu sử dụng và kỹ năng lập trình mà chúng ta lựa chọn trình
soạn thảo cho phù hợp. Đối với người mới bắt đầu học Python thì nên dùng Thonny để
thực hành.

5

Chương 1. MỘT SỐ KHÁI NIỆM VỀ LẬP TRÌNH & NGƠN NGỮ LẬP
TRÌNH
§1. KHÁI NIỆM VỀ LẬP TRÌNH VÀ NGƠN NGỮ LẬP TRÌNH

1. Khái niệm lập trình
Lập trình là việc sử dụng cấu trúc dữ liệu và các lệnh của ngơn ngữ lập trình cụ
thể để mơ tả dữ liệu và diễn đạt các thao tác của thuật toán.
2. Khái niệm và phân loại ngơn ngữ lập trình
Là ngơn ngữ dùng để diễn tả thuật tốn sao cho máy tính hiểu và thực hiện
được. Có 3 loại NNLT:
- Ngơn ngữ máy : Các lệnh được mã hóa bằng các kí hiệu 0 – 1. Chương trình
được viết trên ngơn ngữ máy có thể được nạp vào bộ nhớ và thực hiện ngay.
- Hợp ngữ: sử dụng các từ viết tắt tiếng Anh để diễn tả câu lệnh.
- Ngôn ngữ bậc cao : Các lệnh được mã hóa bằng một ngơn ngữ gần với ngơn
ngữ Tiếng Anh. Chương trình viết trên ngơn ngữ bậc cao phải được chuyển đổi thành
chương trình trên ngơn ngữ máy mới có thể thực hiện được. Phải sử dụng một chương
trình dịch để chuyển đổi. Lập trình bằng ngơn ngữ bậc cao dễ viết hơn vì các lệnh
được mã hóa gần với ngơn ngữ tự nhiên. Lập trình trên ngơn ngữ máy rất khó, thường
các chun gia lập trình mới lập trình được.
3. Chương trình dịch
a. Biên dịch (compiler) :
Bước 1 : Duyệt, phát hiện lỗi, kiểm tra tính đúng đắn của lệnh trong chương
trình nguồn.
Bước 2 : Dịch tồn bộ chương trình nguồn thành một chương trình trên ngơn
ngữ máy.
(Thuận tiện cho các chương trình ổn định và cần thực hiện nhiều lần).
b. Thông dịch (interpreter):
Bước 1 : Kiểm tra tính đúng đắn của lệnh tiếp theo trong chương trình nguồn.
Bước 2 : Chuyển lệnh đó thành ngơn ngữ máy.
Bước 3 : Thực hiện các câu lệnh vừa được chuyển đổi .
6

(phù hợp với môt trường đối thoại giữa người và máy).

Lưu ý: một trong những nhiệm vụ quan trọng của chương trình dịch là phát
hiện lỗi cú pháp của chương trình nguồn.

7

§2. CÁC THÀNH PHẦN CỦA NGƠN NGỮ LẬP TRÌNH

1. Các thành phần cơ bản
Mỗi ngơn ngữ lập trình thường có ba thành phần cơ bản: bảng chữ cái, cú pháp
và ngữ nghĩa.
a. Bảng chữ cái: Là tập các kí hiệu dùng để viết chương trình.
Python sử dụng mặc định mảng mã Unicode thay vì ASCII như Pascal. Như
vậy, khái niệm “bảng chữ cái” trong Python là các ký tự trong bảng mã Unicode. Tên
biến và các đối tượng trong chương trình Python có để đặt bằng tiếng Việt có dấu.
b. Cú pháp: là bộ qui tắc dùng để viết chương trình. cho ta biết cách viết một
chương trình hợp lệ.
c . Ngữ nghĩa: xác định ý nghĩa thao tác cần phải thực hiên , ứng với tổ hợp kí
tự dựa vào ngữ cảnh của nó
- Cú pháp cho biết cách viết một chương trình hợp lệ , cịn ngữ nghĩa xác định ý
nghĩa của các tổ hợp kí tự trong chương trình.
- Lỗi cú pháp được chương trình dịch phát hiện và thơng báo cho người lập
chương trình biết , chỉ có các chương trình khơng cịn lỗi cú pháp mới có thể được
dịch sang ngơn ngữ máy.
- Lỗi ngữ nghĩa chỉ được phát hiện khi thực hiện chương trình trên dữ liệu cụ
thể .

2. Một số khái niệm
a) Tên
Trong Python, Tên các đối tượng được đặt bằng các ký tự thường (a- z), ký tự

in hoa (A-Z), chữ số (0-9) và dấu gạch dưới _ .
Tên đối tượng không bắt đầu bằng chữ số, không dùng các ký tự đặc biệt như !,
@, #, … và được phân biệt chữ hoa, chữ thường.
Tên trong Python không giới hạn độ dài. Tuy nhiên nên đặt tên có tính gợi nhớ
về đối tượng. Ví dụ đặt tên biến để lưu giá trị đếm số lần thực thi thì nên đặt là “dem”
hay “count”,…
Tên dành riêng
Tên dành riêng được hiểu là Từ khóa (keyword) trong Python.
8

Từ khóa được định nghĩa sẵn để sử dụng. Chúng ta khơng thể dùng từ khóa để
đặt tên biến, tên hàm hoặc bất kỳ đối tượng nào trong chương trình.
Tất cả các từ khóa trong Python đều được viết thường, trừ 03 từ khóa: True,
False, None.
Ví dụ một số từ khóa: True, False, await, else, import, pass, break, except, in,
and, or, ….
Thực tế thì khơng cần nhớ từ khóa vì khi gõ trình soạn thảo sẽ có gợi ý các từ
khóa (tránh đặt tên đối tượng trùng với các từ khóa được gợi ý) và nếu đặt trùng tên từ
khóa thì khi chạy chương trình sẽ báo lỗi.
Tên chuẩn
Tên chuẩn là những tên đã được định nghĩa (tên module) thuộc thư viện chuẩn
của Python.
Ví dụ: math (module các hàm tốn học thông dụng như sin, cos, tan, sqr, sqrt,
…).

b) Biến và hằng
Biến
Biến là đại lượng (đối tượng) được đặt tên, dùng để lưu trữ giá trị và giá trị có
thể dược thay đổi trong quá trình thực hiện chương trình.

Biến trong Python không cần khai báo trước, không nhất thiết phải khai báo
kiểu dữ liệu. Khi đặt tên và gán giá trị Python tự động nhận dạng và tùy biến theo kiểu
dữ liệu được gán.
Hằng
Hằng là một loại biến đặc biệt, giá trị của hằng là không đổi trong suốt chương
trình sau lần gán giá trị đầu tiên. Tên hằng được viết hoàn toàn bằng CHỮ HOA và
dấu gạch dưới (nếu cần).

c) Chú thích
Chú thích trong Python có thể sử dụng các cách sau:
# dùng dấu thăng đầu dòng khi chú thích trên một dịng. ''' dùng ba dấu nháy
đơn hoặc nháy kép khi chú thích trên nhiều dịng '''

9

Chương 2. CHƯƠNG TRÌNH ĐƠN GIẢN
§3. CẤU TRÚC CHƯƠNG TRÌNH

1. Cấu trúc chung
Trong Python khơng cần có


Ta có thể thay phần khai báo bằng một ghi chú về chương trình.

2. Các thành phần của chương trình
2.1 Phần khai báo
Phần này có thể thay bằng một dịng ghi chú về tên chương trình
Ví dụ: # giải phương trình bậc 2
Python không cần thiết phải khai báo biến, hằng trong phần khai báo mà khi
nào dùng đến đối tượng nào thì khai báo đối tượng ấy.
Ví dụ:


Khai báo thư viện (module) các hàm toán học:
import math
# khai báo dùng thư viện các hàm toán học
Khai báo biến:
a= 0
Khai báo hằng:
TONG = 100
2.2 Phần thân chương trình
Phần thân chương trình Python là các câu lệnh thực thi.

3. Ví dụ chương trình đơn giản
Ví dụ 1:
print(‘Xin chào các bạn!’)
10

Ví dụ 2.
print(‘xin chào các bạn!’)
print(‘Mời các bạn làm quen với Python’)
Lưu ý: Code trong Python mặc định xâu ký tự ở chuẩn unicode nên có thể gõ
tiếng Việt có dấu.

11

§4. MỘT SỐ KIỂU DỮ LIỆU CHUẨN
Trong Python có 5 kiểu dữ liệu chuẩn gồm: Numers, String, List, Tuple,
Dictionary.
Trong bài này chúng ta tìm hiểu các kiểu dữ liệu được trình bày trong Bài 4,
SGK Tin học 11. Những kiểu dữ liệu khác sẽ được trình bày trong bài khác hoặc phần


đọc thêm cuối sách.

1. Kiểu nguyên
Kiểu nguyên (int) trong Python không giới hạn số ký tự mà chỉ phụ thuộc vào
bộ nhớ máy tính.
Khi gán một giá trị là số ngun cho một biến thì biến đó tự động được gán
kiểu số nguyên.
a = int(5.5)
b = 120
# gán cho biến a một số nguyên có giá trị là 5.5 thì a sẽ nhận
giá trị là 5.

2. Kiểu thực
Kiểu thực (float) trong Python có giới hạn tối đa 15 chữ số phần thập
phân.
Khi gán một giá trị là số thực cho một biến thì biến đó tự động được
gán kiểu số thực.
a = float(5)
b = 3.14
# gán cho a số thực có giá trị là 5 thì a sẽ nhận giá trị là 5.0

3. Kiểu kí tự
Python khơng có kiểu char như Pascal. Một ký tự (kiểu char của pascal) được
coi như một xâu có độ dài bằng 1 trong Python. Kiểu xâu (str) hay cịn gọi là kiểu
chuỗi khơng giới hạn độ dài.
12

Tuy nhiên, Python cung cấp các hàm chr() và ord() để lấy vị trí của ký tự trong
bảng mã Unicode và ngược lại. Chương trình dưới đây cho thấy mã của chữ Â trong


bảng mã unicode là 194.
print(ord('Â')) print(chr(194))
Kết quả:
194
Â

4. Kiểu logic
Kiểu logic (bool) trong Python có giá trị True hoặc False
Ngồi ra, Python cịn có các kiểu dữ liệu: complex; list, tuple, range; dict; set,
frozenset; bytes, bytearray, memoryview. Trong phần sau của chương trình chúng ta sẽ
tìm hiểu thêm.

13

§5. KHAI BÁO BIẾN
Trong Python một biến không cần khai báo kiểu dữ liệu. Khi ta gán giá trị thì tự
động Python sẽ tùy biến kiểu dữ liệu của biến cho phù hợp với dữ liệu được gán vào.
Như vậy một biến có thể có nhiều kiểu dữ liệu tùy thuộc vào giá trị mà ta gán.
Ví dụ trong cùng một chương trình khai báo như sau biến a sẽ tự động chuyển
đổi kiểu để lưu giá trị được gán:
a = 'Học Python'

# biến a có kiểu xâu

a=5

# biến a đổi sang kiểu nguyên

a = 5.5

# biến a đổi sang kiểu thực

a = True

# biến a đổi sang kiểu logic

Ta có thể ép kiểu cho biến bằng cách khai báo kiểu cho giá trị gán cho biến.
Ví dụ:
a = str(5)

# a là một biến kiểu xâu

b = int(5.5)

# b là một biến kiểu nguyên

c = float(5)

# c là một biết kiểu thực

Nếu thực hiện lệnh
print(a+b)
thì Python sẽ báo lỗi vì không thể cộng một xâu với một số nguyên.

14

§6. PHÉP TỐN, BIỂU THỨC, CÂU LỆNH GÁN


1. Phép tốn
Các phép tốn số học
Tốn tử

Ý nghĩa

Ví dụ

+

Cộng

x + y+ 2

-

Trừ

x - y- 2

*

Nhân

x*y

/

Chia


x/y

%

Lấy phần dư của phép chia (mod)

x%y

//

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

**

x // y

x**y (xy)

Luỹ thừa

Các phép toán quan hệ
Tốn tử

Ý nghĩa

Ví dụ

>


Lớn hơn

x>y

<

Nhỏ hơn

x


==

Bằng

x == y
15

!=

Khác

x != y

>=

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

x >= y


<=

Nhỏ hơn hoặc bằng

x <= y

Các phép toán logic
Toán tử

Ý nghĩa

and
or

Và: True khi cả hai đều True
Hoặc: True nếu một trong hai là
True

not

Không: True khi False

Ví dụ
x and y
x or y

not x

2. Biểu thức số học
Biểu thức số học là biểu thức nhận được từ các hằng số, biến số và hàm số liên


kết với nhau bằng các phép toán số học.
Thứ tự thực hiện: trong ngoặc thực hiện trước ngoài ngoặc thực hiện sau. Đối
với biểu thức khơng có ngoặc thì : nhân, chia, chia lấy phần nguyên, chia lấy phần
dư thực hiện trước, cộng, trừ thực hiện sau
Chú ý: nếu trong biểu thức chứa 1 hằng hay biến kiểu thực thì ta có biểu thức số
học thực, giá trị biểu thức cũng thuộc kiểu thực.

3. Hàm số học chuẩn
Các hàm số học chuẩn được trình bày trong SGK được định nghĩa trong module
math. Để sử dụng các hàm này trong Python chúng ta thực hiện lện import math.
Ví dụ. Trước khi dùng hàm sqrt() ta phải thực thiện import module math như
sau:
import math
16

b = math.sqrt(a)

# lúc này giá trị được gán cho b là 2.

Lưu ý:
Hàm ln(x) được thay bằng math.log(x).
Hàm sqr(x) khơng có mà thay bằng x**2.
Hàm abs(x) có sẵn, khơng thuộc module math.

4. Biểu thức quan hệ
Hai biểu thức cùng kiểu liên kết với nhau bởi phép toán quan hệ cho ta một
biểu thức quan hệ, biểu thức quan hệ có dạng:
<Biểu thức 1>

<Biểu thức 2>;
Trong đó: BT1 và BT2 cùng là xâu hoặc biểu thức số học

Trình tự thực hiện:
- Tính giá trị biểu thức
- Thực hiện phép toán quan hệ
Kết quả của biểu thức quan hệ là kiểu logic

5. Biểu thức logic
Biểu thức logic đơn giản là biến hoặc hằng logic.
Biểu thức logic là các biểu thức logic đơn giản, các biểu thức quan hệ liên kết
với nhau bởi phép toán logic.
Giá trị của biểu thức logic là: True hoặc False
VD: not(x>1) thể hiện phát biểu “x không lớn hơn 1”  biểu thức quan hệ
x<=1
Ngồi ra cịn có các phép tốn logic khác như: and, or
VD: biểu thức quan hệ ta viết lại dưới dạng phép toán logic như sau: (x>=4)
and (x<=9)

6. Câu lệnh gán

17

Câu lệnh gán trong Python dùng dấu = để gán giá trị bên phải cho biến bên trái.
Các lệnh gán trong Python cụ thể như sau:
Tốn tử

Ví dụ

Kết quả

=

x=5

x=5

+=

x += 5

x=x+5

-=

x -= 5

x=x-5

*=

x *= 5

x=x*5

/=

x /= 5

x=x/5

%=

x %= 5

x=x%5

//=

x //= 5

x = x // 5

**=

x **= 5

x = x ** 5

&=

x &= 5

x=x&5

|=

x |= 5

x=x|5

^=

x ^= 5

x=x^5

>>=

x >>= 5

x = x >> 5

<<=

x <<= 5

x = x << 5

18

19

§7. CÁC THỦ TỤC CHUẨN VÀO RA ĐƠN GIẢN

1. Nhập dữ liệu vào từ bàn phím
Trong Python để nhập liệu từ bàn phím ta dùng hàm input(). Giá trị nhập vào
của hàm input() mặc định là kiểu xâu, do đó ta cần chuyển kiểu nếu như muốn lưu trữ
giá trị nhập vào khơng phải kiểu chuỗi.
Ví dụ:


a = input()

# nhập giá trị cho a (mặc định kiểu xâu)

b = input('Nhập b: ') # nhập b (kiểu xâu)
c = int(input('Nhap c: ')) # nhập c có kiểu số nguyên.
Nhập giá trị và nhấn Enter lần lượt cho từng biến.

2. Đưa dữ liệu ra màn hình
Python sử dụng hàm print() để hiển thị dữ diệu ra màn hình. Ta cũng có thể in
thơng báo nhập dữ liệu ra màn hình ngay trong lệnh input().
Ví dụ (tr.30 SGK)
Để nhập giá trị M từ bàn phím ta có thể viết như sau:
print("Nhập giá trị M: ")
str.

M = input()

# sau khi nhập M sẽ được gán giá trị có kiểu

Hoặc
N = int(input("Nhập số nguyên dương N <= 100: "))
Ví dụ (tr.31 SGK)
n = int(input("Lớp bạn có bao nhiêu người? "))
print("Vậy bạn có ", n-1, " người bạn trong lớp.")
print("Gõ Enter để kết thúc chương trình.")
input()
20


Định dạng dữ liệu in ra màn hình
Ví dụ. Tính tổng 2 số nguyên nhập từ bàn phím
num1 = input('Nhập số thứ nhất: ')
num2 = input('Nhập số thứ hai: ')
s = int(num1) + int(num2)
print('IN THÔNG BÁO KẾT QUẢ RA MÀN HÌNH:')
print('Tổng của hai số vừa nhập là:', s)
print('Cách 2: Tổng của {0} và {1} là {2}'.format(num1,
num2, s))
print('Cách 2-2: Tổng của {1} và {0} là {2:.2f}'.format(num1,
num2, s))
print(f"Cách 3: Tổng của {num1} và {num2} là {s}")
print(f"Cách 3-3: Tổng của {num1} và {num2} là {s:.2f}")
Các lệnh print() trong chương trình trên đều để hiển thị kết quả ra màn hình
nhưng khác nhau về cách hiển thị. (hãy viết chương trình và chạy thử chương trình để
quan sát sự khác biệt).

21

§8. SOẠN THẢO, DỊCH, THỰC HIỆN VÀ HIỆU CHỈNH CHƯƠNG
TRÌNH

Với Python, ta có thể dùng các phần mềm IDE hoặc texteditor để soạn thảo và
hiệu chỉnh chương trình.
Để code các chương trình đơn giản, khơng cần debug thì ta có thể dùng
Notepad++ . (lưu ý chọn ngôn ngữ Python từ menu Language)

Để được hỗ trợ debug chương trình và các chức năng khác ta dùng các IDE để
soạn thảo. Có nhiều IDE hỗ trợ lập trình Python như PyCham, Spyder, Thonny,…


Trong chương trình tin học phổ thơng chúng ta nên dùng Thonny làm cơng cụ soạn
thảo lập trình Python vì một số yếu tố sau:
- Thonny có giao diện đơn giản, cấu hình nhẹ (trên cùng một máy khởi động nhanh hơn
nhiều so với Pycham hay Spyder).
- Hỗ trợ debug trực quan giúp ta dễ theo dõi và hình dung quá trình thực thi chương
trình.

22

- Sử dụng thư viện / module chuẩn của Python phát hành (không bổ sung hay import sẵn
module).
Để thực thi chương trình (Run): Nhấn F5 Để Debug nhấn Ctrl+F5

Xem thêm thông tin về thonny tại https://thonny.org/

23

BÀI TẬP VÀ THỰC HÀNH 1

1. Mục đích, yêu cầu
Sử dụng Thonny là trình soạn thảo để thực hành.

2. Nội dung
Thực hiện theo các yêu cầu SGK. Lưu ý các phím tắt để chạy chương trình
Python trên Thonny là:
Chạy chương trình: F5
Kiểm thử - gỡ lỗi (debug): Ctrl+F5
Chương trình giải phương trình bậc 2.


from math import sqrt
print("Nhập a, b, c khác 0: ") a = float(input())
b = float(input()) c = float(input()) d = b**2 - 4*a*c
if d < 0:
print("Phương trình vơ nghiệm.") elif d == 0:
print("Phương trình có 1 nghiệm: ", -b/2*a) else:
x1 = (-b - sqrt(d))/(2*a) x2 = -b/a - x1
print("x1 = :", x1)
print("x2 = :", x2) input()
CÂU HỎI VÀ BÀI TẬP
Câu 4. Lưu ý trong Python biến sẽ tự thay đổi kiểu theo giá trị được gán vào.
Câu 5. Python không cấp phát bộ nhớ theo khai báo biến (không cần khai báo
kiểu dữ liệu cho biến) mà sẽ tự động tùy biến theo dữ liệu được gán.
Câu 6. Lưu ý x3 trong Python có thể viết là x**3
Câu 7. Hàm sqrt() thuộc module math. Khi sử dụng trong chương trình phải
thực hiện câu lệnh: from math import sqrt.
24

Câu 9.
from math import pi
a = float(input("Nhập a: ")) s = (pi*a**2)/2
print("Diện tích nửa hình trịn là {:.4f}". format(s))
# Có thể thay pi bằng 3.14, tuy nhiên dùng pi từ module math sẽ cho kết quả
chính xác hơn.
Câu 10.
from math import sqrt
h = float(input("Nhập độ cao h: "))
g = 9.8
v = sqrt(2*g*h)


print("Vận tốc khi chạm đất = ", v)

25