GIẢI ĐỀ THI HỌC SINH GIỎI TỈNH (BÀI 3 - ĐỀ THI HSG TIN HỌC CẤP TỈNH AN GIANG 2021-2022)

Viết chương trình tìm số nguyên dương a nhỏ nhất sao cho aa chia hết cho N (2 <= N <= 109) theo các yêu cầu sau:

            Input (dữ liệu nhập) cho trong tập tin BAI03.INP là số nguyên N (2 <= N <= 109).

            Output (dữ liệu xuất) ghi vào tập tin BAI03.OUT là số nguyên dương a nhỏ nhất sao cho aa chia hết cho N.

            Chương trình ví dụ:

Lần thử

BAI03.INP

BAI03.OUT

1

9

3

2

6

6


CODE THAM KHẢO:
var n: longint;
procedure XuLy(n: longint);
var a,m: longint;
begin
        a:=2; m:=1;
        while (a<=trunc(sqrt(n))) do
        begin
                if (n mod a = 0) then
                begin
                        while (n mod a = 0 ) do n:=n div a;
                        m:=m*a;
                end;
                a:=a+1;
        end;
        writeln(m*n);
end;
begin
        assign(input,'BAI03.INP'); reset(input);
        assign(output,'BAI03.OUT'); rewrite(output);
        while not(eof(input)) do
        begin
                readln(n);
                XuLy(n);
        end;
        close(input); close(output);
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