Условие этой задачи очень простое. Найдите наименьшее K такое, что K!

Условие этой задачки очень обычное. Найдите меньшее K такое, что K! делится на N без остатка. K! = 123...(K 1)K.

Задать свой вопрос
1 ответ

К это число, которое мы будем увеличивать на единицу, чтобы отыскать то минимальное, которое удовлетворяет заданию.
N вводится юзером. Оно будет аспектом проверки деления нацело.
var k, n, mult : integer;
b : boolean;
begin
readln(n);
k := 1;
while (b = false) do
begin
mult := 1;
for i:integer := 1 to k do
mult := mult * i;
if (mult mod n = 0) then
Как только мы получили целое приватное, сходу меняем false на true, и после этого цикл заканчивает свою работу:
b := true
else
k := k + 1;
end;
writeln(k:5, mult:5, n:5);
end.

, оставишь ответ?
Имя:*
E-Mail:


Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт