Professional Documents
Culture Documents
A Practical Introduction To Python Programming Heinold-37-42
A Practical Introduction To Python Programming Heinold-37-42
Chương 4
Câu lệnh if
Khá thường xuyên trong các chương trình, chúng ta chỉ muốn làm điều gì đó với điều kiện điều gì đó khác là đúng. Câu
lệnh if của Python là thứ chúng ta cần.
Hãy thử chương trình đoán số. Máy tính chọn một số ngẫu nhiên, người chơi cố gắng đoán và chương trình
sẽ cho họ biết liệu số đó có đúng hay không. Để xem dự đoán của người chơi có đúng hay không, chúng ta
cần một thứ mới, gọi là câu lệnh if.
Cú pháp của câu lệnh if rất giống với câu lệnh for ở chỗ có dấu hai chấm ở cuối điều kiện if và các
dòng tiếp theo được thụt vào. Các dòng được thụt lề sẽ chỉ được thực thi nếu điều kiện đúng. Sau khi
thụt lề xong, khối if được kết thúc.
Trò chơi đoán số có tác dụng nhưng khá đơn giản. Nếu người chơi đoán sai, sẽ không có gì xảy ra. Chúng
ta có thể thêm vào câu lệnh if như sau:
nếu đoán==num:
print('Bạn hiểu rồi!') else:
Chúng tôi đã thêm một câu lệnh khác , giống như câu lệnh “other”.
27
Machine Translated by Google
Các toán tử so sánh là ==, >, <, >=, <=, và !=. Cái cuối cùng đó là không bằng. Ở đây có một ít
ví dụ:
Sự biểu lộ Sự miêu tả
nếu x>3:
nếu x lớn hơn 3
nếu x>=3:
nếu x lớn hơn hoặc bằng 3
nếu x==3: nếu x là 3
Có ba toán tử bổ sung được sử dụng để xây dựng các điều kiện phức tạp hơn: và, hoặc, và
không. Dưới đây là một số ví dụ:
Thứ tự các thao tác Về mặt thứ tự các thao tác, và được thực hiện trước hoặc, vì vậy nếu bạn có một
điều kiện phức tạp chứa cả hai, bạn có thể cần dấu ngoặc đơn xung quanh điều kiện hoặc .
Hãy coi và giống như phép nhân và hoặc giống như phép cộng. Đây là một ví dụ:
Sai lầm 1 Toán tử đẳng thức bao gồm hai dấu bằng. Đó là một lỗi thực sự phổ biến đối với
quên một trong các dấu bằng.
Sai lầm 2 Một lỗi thường gặp là sử dụng và ở đâu hoặc khi cần thiết hoặc ngược lại. Hãy xem xét
4.4. ELIF 29
Câu đầu tiên là câu đúng. Nếu x là bất kỳ giá trị nào từ 1 đến 100 thì câu lệnh sẽ đúng. Ý tưởng là x
phải vừa lớn hơn 1 vừa nhỏ hơn 100. Mặt khác, phát biểu thứ hai không phải là điều chúng ta mong muốn
vì để nó đúng thì x phải lớn hơn 1 hoặc x phải bằng nhỏ hơn 100. Nhưng mọi số đều thỏa mãn điều này.
Bài học ở đây là nếu chương trình của bạn hoạt động không chính xác, hãy kiểm tra và của bạn.
Sai lầm 3 Một lỗi rất phổ biến khác là viết một cái gì đó như dưới đây:
Điều này sẽ dẫn đến lỗi cú pháp. Chúng ta phải nói rõ ràng. Phát biểu đúng là
Mặt khác, có một phím tắt hay hoạt động trong Python (mặc dù không có trong nhiều ngôn ngữ lập trình
khác):
nếu 80<=lớp<90:
4,4 năm
Cách sử dụng đơn giản của câu lệnh if là gán các cấp độ chữ cái. Giả sử rằng điểm từ 90 trở lên là điểm A, điểm trong khoảng
80 là điểm B, điểm 70 là điểm C, điểm 60 là điểm D và bất kỳ điểm nào dưới 60 là điểm F. Dưới đây là một cách để thực hiện
điều này:
if lớp>=90:
print('A') nếu
lớp>=80 và lớp<90: print('B') nếu
lớp>=70 và
lớp<80: print('C') nếu lớp>=60 và
lớp<70:
print('D') nếu lớp<60: print('F')
Đoạn mã trên khá đơn giản và nó hoạt động. Tuy nhiên, một cách thanh lịch hơn để làm điều đó được
hiển thị dưới đây.
if lớp>=90:
print('A') elif
lớp>=80: print('B')
elif lớp>=70:
print('C'):
Machine Translated by Google
elif lớp>=60:
print('D'):
else:
print('F')
Với các câu lệnh if riêng biệt, mỗi điều kiện đều được kiểm tra bất kể nó có thực sự cần thiết hay không.
Nghĩa là, nếu điểm là 95, chương trình đầu tiên sẽ in chữ A nhưng sau đó tiếp tục kiểm tra xem điểm có
phải là B, C, v.v., điều này hơi lãng phí. Sử dụng Elif, ngay khi chúng tôi tìm thấy điểm trùng khớp ở
đâu, chúng tôi sẽ ngừng kiểm tra các điều kiện và bỏ qua đến cuối toàn bộ khối
của các tuyên bố. Một lợi ích bổ sung của việc này là các điều kiện chúng tôi sử dụng trong câu lệnh Elif là
đơn giản hơn so với các đối tác if của chúng . Ví dụ: khi sử dụng elif, phần thứ hai của điều kiện câu
lệnh if thứ hai, cấp <90, trở nên không cần thiết vì elif tương ứng không phải lo lắng về điểm 90 trở
lên, vì điểm đó đã bị bắt bởi câu lệnh if đầu tiên.
Bạn có thể làm việc tốt mà không cần Elif, nhưng nó thường có thể làm cho mã của bạn đơn giản hơn.
1. Viết chương trình yêu cầu người dùng nhập độ dài tính bằng cm. Nếu người dùng nhập độ dài âm,
chương trình sẽ thông báo cho người dùng rằng mục nhập đó không hợp lệ. Nếu không, chương trình sẽ
chuyển đổi chiều dài thành inch và in ra kết quả. Có 2,54 cm trong một inch.
2. Hỏi người dùng về nhiệt độ. Sau đó hỏi họ xem nhiệt độ có đơn vị nào, độ C hay độ F.
Chương trình của bạn nên chuyển đổi nhiệt độ sang đơn vị khác. Các chuyển đổi là F =
9
C + 32 và C = 5 (F -32).
5 9
3. Yêu cầu người dùng nhập nhiệt độ theo độ C. Chương trình sẽ in một thông báo dựa trên nhiệt độ:
• Nếu nhiệt độ nhỏ hơn -273,15 thì in ra nhiệt độ không hợp lệ vì nó thấp hơn độ không tuyệt
đối.
nhiệt độ nằm trong khoảng từ -273,15 đến 0, in ra nhiệt độ dưới mức đóng băng. • Nếu bằng 0,
0 đến 100, in ra nhiệt độ ở mức bình thường. • Nếu là 100, in ra nhiệt độ đang ở
điểm sôi. • Nếu trên 100, in ra nhiệt độ cao hơn điểm sôi.
4. Viết chương trình hỏi người dùng họ đã lấy được bao nhiêu tín chỉ. Nếu họ lấy 23 hoặc ít hơn, hãy
viết in rằng sinh viên đó là sinh viên năm nhất. Nếu họ đạt từ 24 đến 53, hãy in ra rằng họ là
sinh viên năm hai. Phạm vi dành cho cấp dưới là 54 đến 83 và đối với người cao tuổi là 84 trở lên.
Machine Translated by Google
5. Tạo một số ngẫu nhiên trong khoảng từ 1 đến 10. Yêu cầu người dùng đoán số đó và in một
6. Cửa hàng tính phí 12 USD/món nếu bạn mua ít hơn 10 món. Nếu bạn mua từ 10 đến 99 món thì giá là 10$ một
món. Nếu bạn mua 100 món trở lên, giá là 7$ một món. Viết chương trình hỏi người dùng xem họ đang mua bao
7. Viết chương trình yêu cầu người dùng nhập hai số và in ra Close nếu hai số đó là
trong phạm vi 0,001 của nhau và không đóng nếu không.
8. Một năm là năm nhuận nếu nó chia hết cho 4, ngoại trừ những năm chia hết cho 100 không phải là năm nhuận
trừ khi chúng cũng chia hết cho 400. Viết chương trình hỏi người dùng một năm và in ra xem đó có phải là
9. Viết chương trình yêu cầu người dùng nhập một số và in ra tất cả các ước của số đó. [Gợi ý: toán tử % được
sử dụng để cho biết một số có chia hết cho một số nào đó hay không. Xem Phần 3.2.]
10. Viết chương trình trò chơi nhân cho trẻ. Chương trình sẽ cung cấp cho người chơi mười câu hỏi nhân được
tạo ngẫu nhiên để thực hiện. Sau mỗi câu, chương trình sẽ cho họ biết họ làm đúng hay sai và câu trả lời
đúng là gì.
11. Viết chương trình yêu cầu người dùng trong một giờ từ 1 đến 12 giờ, yêu cầu họ nhập sáng hoặc chiều và hỏi
họ muốn đi bao nhiêu giờ trong tương lai. In ra giờ sẽ là bao nhiêu giờ trong tương lai, in sáng hoặc
12. Một lọ kẹo Halloween chứa một lượng kẹo không xác định và nếu bạn đoán chính xác có bao nhiêu kẹo trong
bát thì bạn sẽ thắng hết số kẹo. Bạn hỏi người phụ trách như sau: Nếu chia đều số kẹo cho 5 người thì còn
dư bao nhiêu phần? Câu trả lời là 2 miếng. Sau đó bạn yêu cầu chia đều số kẹo cho 6 người, số kẹo còn lại
là 3 phần. Cuối cùng bạn yêu cầu chia đều số kẹo cho 7 người, số kẹo còn lại là 2 cái. Bằng cách nhìn vào
cái bát, bạn có thể biết rằng có ít hơn 200 miếng. Viết chương trình xác định có bao nhiêu miếng trong tô.
Machine Translated by Google
13. Viết chương trình cho phép người dùng chơi Rock-Paper-Scissors với máy tính. Sẽ có năm
vòng và sau năm vòng đó, chương trình của bạn sẽ in ra ai thắng và ai thua hoặc hòa.