Написать программу на паскале. Для того чтобы проверить, как ее ученики умеют считать, Мария Ивановна каждый год задает им на дом одну и ту же задачу – «Для заданного натурального A найти минимальное натуральное N такое, что N в степени N (N, умноженное на себя N раз) делится на A». Из года в год и от ученика к ученику меняется только число A. Вы решили помочь будущим поколениям. Для этого вам необходимо написать программу, решающую эту задачу Формат входных данных. Во входном файле содержится единственное число A (1<=A <=1000000000). Формат выходных данных. В выходной файл вывести единственное число N.
program MinPowerN; var A, N: Integer; found: Boolean; begin Assign(input, 'input.txt'); Reset(input); Assign(output, 'output.txt'); Rewrite(output); Readln(A); N := 1; found := False; while not found do begin if Round(Power(N, N)) mod A = 0 then found := True else Inc(N); end; Writeln(N); Close(input); Close(output); end.
Программа считывает число A из файла input.txt, находит минимальное значение N, удовлетворяющее условию, и записывает его в файл output.txt.
Программа на языке Pascal:
program MinPowerN;var
A, N: Integer;
found: Boolean;
begin
Assign(input, 'input.txt');
Reset(input);
Assign(output, 'output.txt');
Rewrite(output);
Readln(A);
N := 1;
found := False;
while not found do
begin
if Round(Power(N, N)) mod A = 0 then
found := True
else
Inc(N);
end;
Writeln(N);
Close(input);
Close(output);
end.
Программа считывает число A из файла input.txt, находит минимальное значение N, удовлетворяющее условию, и записывает его в файл output.txt.