Dương Tố Uyên
Giới thiệu về bản thân
# Định nghĩa các mức giá (đồng/kWh)
PRICE_TIER_1 = 1678
PRICE_TIER_2 = 1734
PRICE_TIER_3 = 2014
# Định nghĩa các ngưỡng tiêu thụ (kWh)
THRESHOLD_1 = 50
THRESHOLD_2 = 100
def calculate_electricity_bill(consumption):
"""Tính tổng tiền điện dựa trên mức tiêu thụ."""
total_cost = 0.0
remaining_consumption = consumption
# Bậc 1: Từ 0 đến 50 kWh
if remaining_consumption > 0:
# Lượng điện ở bậc 1
consumed_tier_1 = min(remaining_consumption, THRESHOLD_1)
total_cost += consumed_tier_1 * PRICE_TIER_1
remaining_consumption -= consumed_tier_1
# Bậc 2: Từ 51 đến 100 kWh (tương đương 50 kWh tiếp theo)
if remaining_consumption > 0:
# Lượng điện ở bậc 2 (tối đa 50 kWh)
consumed_tier_2 = min(remaining_consumption, THRESHOLD_2 - THRESHOLD_1)
total_cost += consumed_tier_2 * PRICE_TIER_2
remaining_consumption -= consumed_tier_2
# Bậc 3: Từ 101 kWh trở lên
if remaining_consumption > 0:
total_cost += remaining_consumption * PRICE_TIER_3
return total_cost
# 1. Nhập số điện tiêu thụ
try:
# Sử dụng float để xử lý cả số nguyên và số thập phân (nếu có)
kWh_input = float(input("Nhập số điện tiêu thụ trong tháng (kWh): "))
if kWh_input < 0:
print("Lỗi: Số điện tiêu thụ không thể là số âm.")
else:
# 2. Tính toán và hiển thị kết quả
final_bill = calculate_electricity_bill(kWh_input)
# Sử dụng định dạng chuỗi để hiển thị số với dấu phẩy ngăn cách hàng nghìn (ví dụ: 1,000,000)
formatted_bill = f"{final_bill:,.0f}"
print(f"\n--- Kết quả ---")
print(f"Mức tiêu thụ: {kWh_input} kWh")
print(f"Số tiền phải trả (chưa bao gồm VAT/phụ phí): {formatted_bill} đồng.")
except ValueError:
print("Lỗi: Vui lòng nhập một giá trị số hợp lệ cho số điện tiêu thụ.")
def kiem_tra_nam_nhuan(nam):
"""Kiểm tra xem một năm có phải là năm nhuận hay không."""
# Kiểm tra điều kiện 1: chia hết cho 400
if nam % 400 == 0:
return f"Năm {nam} là năm nhuận."
# Kiểm tra điều kiện 2: chia hết cho 4 và không chia hết cho 100
elif nam % 4 == 0 and nam % 100 != 0:
return f"Năm {nam} là năm nhuận."
# Các trường hợp còn lại
else:
return f"Năm {nam} không phải là năm nhuận."
# Phần nhập liệu và hiển thị kết quả
try:
# Nhập năm dương lịch
nam_nhap = int(input("Nhập vào năm dương lịch (ví dụ: 2022): "))
# In kết quả
ket_qua = kiem_tra_nam_nhuan(nam_nhap)
print(ket_qua)
except ValueError:
print("Lỗi: Vui lòng nhập một số nguyên hợp lệ cho năm.")
def tinh_tien_cam():
"""
Chương trình tính tổng số tiền phải trả mua cam dựa trên khối lượng.
"""
# Định nghĩa các mức giá
GIA_CAO = 20000 # Giá cho khối lượng < 5kg (đồng/kg)
GIA_THAP = 18000 # Giá cho khối lượng >= 5kg (đồng/kg)
print("--- Tính tiền mua Cam ---")
try:
# 1. Nhập số lượng khách mua (theo kg)
khoi_luong = float(input("Nhập khối lượng cam mua (kg): "))
# Khởi tạo biến đơn giá và tổng tiền
don_gia = 0
tong_tien = 0
# 2. Xác định đơn giá dựa trên khối lượng
if khoi_luong < 5:
don_gia = GIA_CAO
else:
# Áp dụng cho khối lượng từ 5kg trở lên
don_gia = GIA_THAP
# 3. Tính tổng tiền
tong_tien = khoi_luong * don_gia
# 4. Hiển thị kết quả (sử dụng định dạng comma ',' để phân tách hàng nghìn)
print("\n--- Kết quả ---")
print(f"Khối lượng mua: {khoi_luong} kg")
print(f"Đơn giá áp dụng: {don_gia:,} đồng/kg")
# Đảm bảo hiển thị số tiền là số nguyên (vì đơn giá và khối lượng nhân với nhau có thể ra số thập phân nhỏ,
# nhưng trong thực tế thanh toán tiền Việt Nam thường làm tròn hoặc giữ nguyên phần nguyên)
# Ở đây, chúng ta sẽ làm tròn về số nguyên gần nhất hoặc sử dụng int() nếu bài toán yêu cầu kết quả là số nguyên.
# Ta dùng int() để đơn giản hóa việc hiển thị tiền tệ.
print(f"Số tiền khách hàng phải trả: {int(tong_tien):,} đồng.")
except ValueError:
print("Lỗi: Đầu vào không hợp lệ. Vui lòng nhập một số dương cho khối lượng.")
# Chạy hàm
tinh_tien_cam()
H • • P • • H
:
H