BÀI TẬP 60: SỐ DƯ THỪA

Số tự nhiên N gọi là dư thừa nếu tổng các ước số của N (bao gồm cả 1 nhưng không có N) lớn hơn N.

Bài toán: Tìm số M là số dư thừa nhỏ nhất không nhỏ hơn N.

Dữ liệu: Cho trong file văn bản ANUM.INP, gồm số tự nhiên N.

Kết quả: Cho trong tập tin văn bản ANUM.OUT, gồm số M là số dư thừa nhỏ nhất không nhỏ hơn N. Giả sử rằng kết quả là số tự nhiên không quá 10000.

Ví dụ:

ANUM.INP

ANUM.OUT

6

12


CODE THAM KHẢO: 
program so_du_thua;
var N,i,M: integer;
    tong:longint;
    f:text;
begin
        assign(f,'ANUM.INP'); reset(f);
        readln(f,n);
        close(f);
        assign(f,'ANUM.OUT'); rewrite(f);
        M:=N;
        while M < 10001 do
        begin
                tong:=1;
                for i:=2 to trunc(sqrt(M)) do
                begin
                        if M mod i = 0 then tong:=tong+i+(M div i);
                end;
                if tong > M then
                begin
                        write(f,M);
                        break;
                end;
                M:=M+1;
        end;
        close(f);
end.



Nhãn:

Đăng nhận xét

[blogger]

Biểu mẫu liên hệ

Tên

Email *

Thông báo *

Được tạo bởi Blogger.
Javascript DisablePlease Enable Javascript To See All Widget