🔢 4.2 Kiểu số (int, float)
📖 Giới thiệu
Trong Python, số là kiểu dữ liệu quan trọng để thực hiện các phép tính. Python có hai loại số cơ bản: số nguyên (int) và số thực (float). Chúng ta sẽ học cách sử dụng chúng để làm toán đơn giản.
Mục tiêu bài học:
- Hiểu khác biệt giữa số nguyên và số thực
- Biết cách khai báo và sử dụng số
- Thực hiện phép tính cơ bản
- Chuyển đổi giữa int và float
🔧 Cú pháp
Khai báo số nguyên (int):
python
# Số nguyên dương
tuoi = 18
so_hoc_sinh = 30
# Số nguyên âm
nhiet_do = -5
diem = -2
# Số 0
diem_khoi_dau = 0Khai báo số thực (float):
python
# Số thực dương
chieu_cao = 1.75
can_nang = 65.5
# Số thực âm
nhiet_do = -10.5
diem = -2.5
# Số thực với số 0
gia_tien = 0.0🔬 Phân tích & Giải thích chi tiết
1. 🧮 Số nguyên (int)
Số nguyên là gì?
- Là số không có phần thập phân
- Có thể là số dương, số âm hoặc số 0
- Dùng để đếm số lượng: tuổi, số học sinh, số điểm
python
# Ví dụ số nguyên
tuoi = 25
so_banh = 5
diem_thi = 8
print(type(tuoi)) # <class 'int'>
print(tuoi + 5) # 30
print(so_banh * 3) # 152. 🎯 Số thực (float)
Số thực là gì?
- Là số có phần thập phân
- Dùng để đo lường: chiều cao, cân nặng, giá tiền
- Luôn có dấu chấm (.)
python
# Ví dụ số thực
chieu_cao = 1.75
gia_tien = 25.5
nhiet_do = 36.5
print(type(chieu_cao)) # <class 'float'>
print(chieu_cao + 0.1) # 1.85
print(gia_tien / 2) # 12.753. 🔄 Chuyển đổi giữa int và float
python
# Chuyển int thành float
tuoi = 18
tuoi_float = float(tuoi) # 18.0
# Chuyển float thành int (bỏ phần thập phân)
chieu_cao = 1.75
chieu_cao_int = int(chieu_cao) # 1
# Chuyển từ chuỗi thành số
tuoi_str = "20"
tuoi = int(tuoi_str) # 20
gia_str = "15.5"
gia = float(gia_str) # 15.5💻 Ví dụ minh họa
Ví dụ 1: Tính điểm trung bình
python
# tinh_diem_trung_binh.py
print("📚 TÍNH ĐIỂM TRUNG BÌNH")
print("=" * 25)
# Nhập điểm (sử dụng float)
toan = float(input("📐 Điểm Toán: "))
van = float(input("📖 Điểm Văn: "))
anh = float(input("🌍 Điểm Anh: "))
# Tính điểm trung bình
diem_tb = (toan + van + anh) / 3
# Hiển thị kết quả
print(f"\n📊 KẾT QUẢ")
print("-" * 15)
print(f"📐 Toán: {toan}")
print(f"📖 Văn: {van}")
print(f"🌍 Anh: {anh}")
print(f"⭐ Điểm TB: {diem_tb:.1f}")Ví dụ 2: Tính tiền mua kẹo
python
# mua_keo.py
print("🍬 TÍNH TIỀN MUA KẸO")
print("=" * 20)
# Nhập thông tin
so_keo = int(input("🍬 Số kẹo muốn mua: "))
gia_mot_keo = float(input("💰 Giá 1 viên kẹo (VND): "))
# Tính tổng tiền
tong_tien = so_keo * gia_mot_keo
# Hiển thị
print(f"\n🧾 HÓA ĐƠN")
print("-" * 12)
print(f"🍬 Số lượng: {so_keo} viên")
print(f"💰 Giá/viên: {gia_mot_keo} VND")
print(f"💸 Tổng tiền: {tong_tien} VND")
### Ví dụ 3: Tính tuổi đơn giản
```python
# tinh_tuoi.py
print("🎂 TÍNH TUỔI")
print("=" * 15)
# Nhập thông tin
nam_hien_tai = 2024
nam_sinh = int(input("Năm sinh: "))
# Tính tuổi
tuoi = nam_hien_tai - nam_sinh
# Hiển thị
print(f"Tuổi của bạn: {tuoi}")
# Phân loại đơn giản
if tuoi < 18:
print("Bạn còn nhỏ")
else:
print("Bạn đã lớn")
## 🏋️ Thực hành
### Bài tập 1: Tính tổng hai số
**Nhiệm vụ:** Nhập hai số và tính tổng
```python
# Nhập hai số và in tổng
so_thu_nhat = int(input("Nhập số thứ nhất: "))
so_thu_hai = int(input("Nhập số thứ hai: "))
tong = so_thu_nhat + so_thu_hai
print(f"Tổng: {tong}")Bài tập 2: Tính diện tích hình chữ nhật
Nhiệm vụ: Tính diện tích với số thực
python
# Nhập chiều dài và chiều rộng
chieu_dai = float(input("Chiều dài (m): "))
chieu_rong = float(input("Chiều rộng (m): "))
dien_tich = chieu_dai * chieu_rong
print(f"Diện tích: {dien_tich} m²")Bài tập 3: Đổi từ giờ sang phút
Nhiệm vụ: Chuyển đổi đơn vị
python
# Đổi giờ sang phút
so_gio = int(input("Số giờ: "))
so_phut = so_gio * 60
print(f"{so_gio} giờ = {so_phut} phút")📋 Tóm tắt
Hai kiểu số cơ bản trong Python:
| Kiểu | Ví dụ | Đặc điểm | Sử dụng khi |
|---|---|---|---|
| int | 42, -15, 0 | Số nguyên | Đếm số lượng, tuổi |
| float | 3.14, -2.5 | Số thực | Đo lường, tính toán |
Chuyển đổi kiểu số:
python
# Sang int
int(3.14) # 3
int("42") # 42
# Sang float
float(42) # 42.0
float("3.14") # 3.14Phép toán cơ bản:
python
a = 10
b = 3
print(a + b) # 13 (cộng)
print(a - b) # 7 (trừ)
print(a * b) # 30 (nhân)
print(a / b) # 3.33... (chia)Lưu ý quan trọng:
- 🔢 int: Số nguyên, không có dấu phẩy
- 🎯 float: Số thực, có dấu phẩy thập phân
- 🔄 Chuyển đổi: int() bỏ phần thập phân
- 📝 input(): Luôn trả về string, cần chuyển đổi
Chuẩn bị cho bài tiếp theo:
Bài tiếp theo sẽ học về 💬 Kiểu chuỗi (str) - cách xử lý văn bản trong Python!
💡 Mẹo: Sử dụng type() để kiểm tra kiểu dữ liệu: type(42) → <class 'int'>
🔢 Thực hành: Thử các phép toán cơ bản với int và float để hiểu rõ hơn!