Hãy viết chương trình tìm ước số lẻ lớn nhất của một số bằng ngôn ngữ Python. Ví dụ ta nhập số 50 thì ước số lẻ lớn nhất của nó sẽ là 25, nhập số 51 thì ước số lẻ lớn nhất là 51.
Bài giải
-------------------- ######## --------------------
Để giải bài này trong Python thì ta thực hiện theo các bước như sau.
Bước 1: Yêu cầu người dùng nhập vào số N bằng hàm input.
Bước 2: Lặp từ N trở về 1, số lẻ đầu tiên chia hết cho N chính là kết quả cần tìm.
Thực ra bạn cũng có thể lặp từ 1 đến N, tuy nhiên như vậy sẽ không tối ưu.
Bài giải như sau:
# HỌC PYTHON TẠI FREETUTS.NET # TÁC GIẢ: CƯỜNG NGUYỄN print("Chương trình đăng tại freetuts.net!") print("Nhập vào số N: ") n = int(input()) result = 0 for i in range(n+1, 1, -1): if (n % i == 0 and i % 2 != 0): result = i break print("Ước số lẻ lớn nhất của ", n, " là: ", result)
Kết quả khi bạn nhập vào số 50 thì kết quả sẽ in ra số 25, vì 25 là ươc số lẻ lớn nhất của 50:
Nguồn: freetuts.net