В
Все
М
Математика
А
Английский язык
Х
Химия
Э
Экономика
П
Право
И
Информатика
У
Українська мова
Қ
Қазақ тiлi
О
ОБЖ
Н
Немецкий язык
Б
Беларуская мова
У
Українська література
М
Музыка
П
Психология
А
Алгебра
Л
Литература
Б
Биология
М
МХК
О
Окружающий мир
О
Обществознание
И
История
Г
Геометрия
Ф
Французский язык
Ф
Физика
Д
Другие предметы
Р
Русский язык
Г
География
karinalove9
karinalove9
11.02.2020 10:42 •  Информатика

Напишите программу, которая выводит все простые числа софи жермен (такие, что для числа p число 2 p + 1 тоже простое) в диапазоне от k до n ( 2 ≤ k ≤ n ≤ 100000 ). входные данные входная строка содержит два натуральных числа, разделённые пробелом, k и n ( 2 ≤ k ≤ n ≤ 100000 ). выходные данные программа должна вывести все простые числа софи жермен в диапазоне от k до n в одну строку, разделив их пробелами. если таких чисел нет, нужно вывести число 0. примеры входные данные 100 200 выходные данные 113 131 173 179 191 входные данные 200 220 выходные данные 0 паскаль abc 1.8

Показать ответ
Ответ:
Veteran2211
Veteran2211
05.10.2020 11:18
 function simpl(n: integer): boolean;
var i,k: integer;
begin
   i:=2;
   k:=round(sqrt(n));
   while ((n mod i)<>0) and (i<=k) do   
   i:=i+1; 
   simpl:=(i>k)
end;
{ основная программа }
var i,k,n,m: integer;
begin
  readln(k,n);
  m:=0;
  for i:=k to n do
  if simpl(i) and simpl(i*2+1) then
  begin
    write(i,' ');
    m:=1;
  end;
  if m=0 then writeln(0);
end.

10 100
11 23 29 41 53 83 89

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