Помогите задача по ИНФОРМАТИКЕ!!!!
[email protected] в категроии Информатика, вопрос открыт 10.03.2017 в 05:46
Задача. Определить, является ли введенное число простым.
Алгоритм решения этой задачи будет следующий. При помощи операции mod проводим проверку всех целых чисел от 2 до введенного числа Number. Мы проверяем, является ли очередное проверяемое число делителем нашего числа (значит, остаток от деления введенного числа на проверяемое число равен нулю). Если такой делитель найден, значит, цикл досрочно завершает свою работу на некотором i-том шаге. Если делитель не найден, значит, цикл проверил все числа, и значение переменной цикла i будет равно конечному значению, т.е. Number. Поэтому, после записи цикла следует анализ значения переменной i и выводится соответствующее сообщение.
Примечание. Напомним, что простым называется число, которое не имеет делителей кроме 1 и самого себя.
Цикл не может продолжаться бесконечно, так как любое число всегда делится само на себя.
Program Prostoe;
Uses
Crt;
Var
i, {возможный делитель}
Number : integer; {исследуемое число}
Begin
ClrScr;
writeln ('Какое число должно быть проверено? ');
read (Number);
i := 1;
repeat
i := i+1;
until Number mod i = 0;
if Number=i
then
writeln (Number,' является простым')
else
writeln (Number,' делится на ',i);
readln;
End.
При построении циклов нужно быть очень аккуратным: следить за отсутствием ошибок как в фазе входа в цикл, так и в фазе завершения цикла.
0 ответов
Зарегистрируйтесь или авторизируйтесь на сайте чтобы оставить ответ на вопрос.