Khởi động
Gợi ý giải câu hỏi mở đầu trang 97
Để tương tác với người sử dụng trong khi thực hiện chương trình, các ngôn ngữ lập trình có các câu lệnh để đưa dữ liệu ra màn hình hay nhập dữ liệu vào từ bàn phím. Em đã biết Python có lệnh print() dùng để đưa dữ liệu ra màn hình. Để nhập dữ liệu từ bàn phím khi thực hiện chương trình, Python sử dụng câu lệnh input().
Em dự đoán lệnh nhập dữ liệu input() có cú pháp và chức năng như thế nào?
Dựa vào kiến thức đã học về lệnh print() đưa ra dự đoán về lệnh input()
- Cú pháp: <biến> = input(<Dòng thông báo>)
- Chức năng: Nhập dữ liệu từ bàn phím
Hoạt động 1
Hướng dẫn giải câu hỏi Hoạt động 1 trang 97
Quan sát lệnh sau và trả lời các câu hỏi: Lệnh input ( ) cho phép nhập dữ liệu từ đâu? Giá trị được nhập sẽ là số hay xâu?
Quan sát lệnh và dựa vào lý thuyết phần 1. Các lệnh vào ra đơn giản
- Lệnh input() cho phép nhập dữ liệu từ thiết bị vào chuẩn, thường là bàn phím.
- Giá trị nhập có thể là số, xâu hay biểu thức và kết quả là một xâu kí tự.
⇒ Giá trị nhập ở lệnh trên là số.
Hoạt động 2
Đáp án câu hỏi Hoạt động 2 trang 98
Chúng ta đã biết một số kiểu dữ liệu cơ bản như số nguyên, số thực và xâu kí tự. Trong Python có cách nào để nhận biết được kiểu dữ liệu của biến không?
Lệnh type() dùng để nhận biết kiểu dữ liệu của biến trong Python.
- Một số kiểu dữ liệu cơ bản: int (số nguyên), float (số thực), str (xâu kí tự), bool (lôgic),..
- Có nhận biết biết được kiểu dữ liệu. Lệnh type() dùng để nhận biết kiểu dữ liệu của biến trong Python.
? mục 2
Giải câu hỏi mục 2 trang 98
Xác định kiểu và giá trị của các biểu thức sau:
a) “15 + 20 - 7”
b) 32 > 45
c) 13 != 8 + 5
d) 1 == 2
Một số kiểu dữ liệu cơ bản: int (số nguyên), float (số thực), str (xâu kí tự), bool (lôgic),..
a, số nguyên và giá trị 28.
b, kiểu bool trả về giá trị false
c, kiểu bool trả về giá trị false
d, kiểu bool trả về giá trị false
Hoạt động 3
Đáp án câu hỏi Hoạt động 3 trang 98
1. Có chuyển đổi dữ liệu kiểu này sang kiểu khác được không?
Dựa vào lý thuyết phần 2. Chuyển đổi kiểu dữ liệu cơ bản của Python
Các lệnh int(), float(), str() có chức năng chuyển đổi dữ liệu từ các kiểu khác tương ứng về kiểu số nguyên, số thực và xâu kí tự.
2. Giả sử có biến s với giá trị “123”. Nếu muốn biến s có giá trị là số nguyên 123 chứ không phải là xâu “123” thì em phải làm gì?
Lệnh int( ) có chức năng chuyển đổi số thực hoặc xâu chứa số nguyên thành số nguyên
Muốn biến s có giá trị là số nguyên 123 chứ không phải là xâu “123” cần: int(s)
? mục 3
Đáp án câu hỏi mục 3 trang 99
1. Mỗi lệnh sau sẽ trả lại các giá trị nào?
a) str(150)
b) int(“1110”)
c) float(“15.0”)
Một số kiểu dữ liệu cơ bản: int (số nguyên), float (số thực), str (xâu kí tự), bool (lôgic),..
a) “150”: kiểu xâu kí tự
b) 1110: số nguyên
c) 15.0: số thực
2. Lệnh nào sau đây sẽ báo lỗi?
A. int("12.0”)
B. float(13 + 1)
Advertisements (Quảng cáo)
C. str(17.001)
Lệnh int() không chuyển đổi được xâu chứa số thực.
Lệnh sẽ báo lỗi:
A. int("12.0”)
Hoạt động 4
Gợi ý giải câu hỏi Hoạt động 4 trang 99
Dữ liệu nhập từ bàn phím bằng lệnh input() luôn là xâu kí tự nên muốn nhập dữ liệu đầu vào là số nguyên hay số thực thì phải làm thế nào?
Nếu cần nhập số nguyên thì dùng lệnh int( )
Nếu cần nhập số thực thì dùng lệnh float( )
Muốn nhập dữ liệu đầu vào là số nguyên hay số thực thì cần dùng lệnh int(), float().
? mục 4
Giải câu hỏi mục 4 trang 100
Dùng lệnh x = input("Nhập số x:”) để nhập số cho biến x là đúng hay sai? Vì sao?
Dựa vào kiến thức đã học
Sai vì dùng lệnh x = input (“Nhập số x: “) để chuyển đổi số nhập sang kiểu số nguyên.
Luyện tập
Đáp án câu hỏi Luyện tập trang 100
1. Những lệnh nào trong các lệnh sau đây sẽ báo lỗi?
a) int("12 + 45”)
b) float(123.56)
c) float("123,5.5”)
Lệnh int( ) không chuyển đổi các xâu có công thức.
Lệnh float( ) dùng để chuyển đổi số nguyên và xâu kí tự thành số thực. Không có dấu phẩy “,” trong lệnh.
Lệnh sẽ báo lỗi
a) int("12 + 45”)
c) float("123,5.5”)
2. Vì sao khi nhập một số thực cần viết lệnh float(input( ))?
Lệnh input( ) cho kết quả là xâu kí tự
Lệnh float( ) dùng để chuyển đổi số nguyên và xâu kí tự thành số thực.
Do dữ liệu nhập từ bàn phím bằng lệnh input() luôn là xâu kí tự nên muốn nhập một số thực cần viết lệnh float(input()) để chuyển đổi dữ liệu từ kiểu xâu kí tự sang kiểu số thực
Vận dụng
Đáp án câu hỏi Vận dụng trang 100
1. Viết chương trình nhập giá trị ss là số giây từ bàn phím. Thông báo ra màn hình thời gian ss giây sau khi đổi thành thời gian tính bằng ngày, giờ, phút, giây.
Phát triển từ vận dụng bài trước
ss = int(input("Nhập số giây: "))
ngay=ss//86400
gio=ss//3600-ngay*24
phut=ss//60-ngay*24*60-gio*60
giay=ss-ngay*24*3600-gio*3600-phut*60
print("ss = ", ss, ” = ", ngay,” ngay ", gio, "gio”, phut, ” phut ", giay, ” giay ")
2. Viết chương trình nhập ba số thực dương a, b, c và tính chu vi, diện tích của tam giác có độ dài các cạnh là a, b, c với a, b, c > 0 và thoả mãn bất đẳng thức tam giác.
Gợi ý: Công thức Heron tính diện tích tam giác: với p là nửa chu vi tam giác.
Công thức Heron tính diện tích tam giác: với p là nửa chu vi tam giác.
import math
a=int(input("Nhập cạnh tam giác thứ nhất:”));
b=int(input("Nhập cạnh tam giác thứ hai:”));
c=int(input("Nhập cạnh tam giác thứ ba:”));
cv=a+b+c
p=cv/2
dt=math.sqrt(p*(p-a)*(p-b)*(p-c))
print("Chu vi = ", cv)
print("Diện tích = ", dt)