vera186
23.10.2020 06:33

Решите по информатике с цикла while. дано число нужно узнать если оно простое то вывести yes если нет то no. например: 63 вывести yes; например: 43 вывести no.

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
Лолалис
08.10.2020 09:37
PascalABC.NET 3.3.5, сборка 1650 от 01.04.2018
Внимание! Если программа не работает, обновите версию!

begin
  var n:=ReadInteger('n=');
  if n<4 then Writeln('YES')
  else begin
    var found:=(n mod 2=0);
    var p:=3;
    while (not found) and (sqr(p)<=n) do
      begin found:=(n mod p=0); p+=2 end;
    if found then Writeln('NO')
    else Writeln('YES')
    end
end.

Примеры
n= 63
NO

n= 43
YES
0,0(0 оценок)
Ответ:
Evgenn4ik
08.10.2020 09:37
//PascalABC.NET
//Версия 3.3, сборка 1634 (14.02.2018)

function Simple(a: integer): boolean;
begin
  result := true;
  var i := 2;
  while i <= a div 2 do
  begin
    if (a mod i = 0) then result := false;
    inc(i);
  end;
end;

begin
  Println(Simple(ReadInteger('a->'))?'YES':'NO');
end.

Пример(1):
a->7
YES

Пример(2):
a->63
NO
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота