Quảng cáo
1 câu trả lời 802
Để giải bài toán tìm và hiển thị số nhỏ nhất của một dãy số nguyên dương từ 1 đến 100, khi việc nhập dãy số kết thúc bằng số 0, ta có thể xây dựng thuật toán theo các bước sau:
Thuật toán:
Khởi tạo biến:Một biến min_number dùng để lưu trữ giá trị nhỏ nhất. Khởi tạo giá trị ban đầu là một số lớn hơn 100 (ví dụ: 101).
Nhập dãy số:Lặp lại việc nhập từng số nguyên dương từ bàn phím.
Kiểm tra giá trị nhập vào:Nếu giá trị nhập vào là 0, dừng việc nhập dãy số.
Nếu giá trị nhập vào là một số trong khoảng từ 1 đến 100, so sánh với min_number. Nếu giá trị nhập vào nhỏ hơn min_number, cập nhật giá trị của min_number.
Kết thúc:Sau khi dừng nhập (khi nhập 0), in ra giá trị của min_number, đó chính là số nhỏ nhất trong dãy số.
Mã giả:
1. Khởi tạo min_number = 101
2. Lặp cho đến khi nhập số 0:
a. Nhập một số từ bàn phím (x)
b. Nếu x == 0, dừng vòng lặp
c. Nếu 1 <= x <= 100 và x < min_number, thì min_number = x
3. In ra min_number
Mã Python:
# Khởi tạo giá trị ban đầu của min_number là một giá trị lớn hơn 100
min_number = 101
while True:
# Nhập một số từ người dùng
x = int(input("Nhập một số nguyên dương (1-100), hoặc 0 để kết thúc: "))
# Nếu nhập 0, dừng nhập
if x == 0:
break
# Kiểm tra xem x có phải là số hợp lệ (1 <= x <= 100)
if 1 <= x <= 100:
# Cập nhật min_number nếu tìm thấy số nhỏ hơn
if x < min_number:
min_number = x
# Hiển thị số nhỏ nhất tìm được
print(f"Số nhỏ nhất trong dãy là: {min_number}")
Giải thích:
min_number = 101: Bởi vì dãy số chỉ bao gồm các số từ 1 đến 100, khởi tạo min_number là 101 (một giá trị không hợp lệ trong dãy số này) giúp đảm bảo rằng bất kỳ số hợp lệ nào nhập vào cũng sẽ thay thế giá trị này.
Vòng lặp while True: Chạy liên tục cho đến khi người dùng nhập vào số 0.
Điều kiện 1 <= x <= 100: Đảm bảo rằng chỉ những số hợp lệ (từ 1 đến 100) mới được so sánh và cập nhật giá trị nhỏ nhất.
In ra kết quả cuối cùng: Sau khi người dùng nhập 0, chương trình sẽ in ra số nhỏ nhất tìm được.
Ví dụ:
Input:
Nhập một số nguyên dương (1-100), hoặc 0 để kết thúc: 25
Nhập một số nguyên dương (1-100), hoặc 0 để kết thúc: 45
Nhập một số nguyên dương (1-100), hoặc 0 để kết thúc: 12
Nhập một số nguyên dương (1-100), hoặc 0 để kết thúc: 0
Output:
Số nhỏ nhất trong dãy là: 12
Chúc bạn thực hiện thành công!
Quảng cáo
Bạn muốn hỏi bài tập?
Câu hỏi hot cùng chủ đề
-
Hỏi từ APP VIETJACK27722
