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

Найти все простые натуральные числа, не превосходящие n, двоичная запись которых представляет собой палиндром, т. е. читается одинаково

Ответ:
2000lev94
2000lev94
16.04.2019 23:00
program ex;
var  i,k,n,count: word;
z,err:integer;
  
function dec2bin(x:integer):string;
var s:string;
begin
  s:='';
  while x>0 do
  begin
     s:=chr(ord('0')+x mod 2)+s;
     x:=x div 2;
  end;
dec2bin:=s;
end;
 
function palindrom(var a:integer):integer;
var b,c:integer;
begin
b:=a;
c:=0;
while b>0 do
 begin
  c:=c*10+(b mod 10);
  b:=b div 10;
 end;
if c=a then palindrom:=1
       else  palindrom:=0;
end;
 
begin
  readln(n);
  for k := 1 to n do begin
    count := 0;
    for i := 1 to k do begin
      if k mod i = 0 then inc(count)
    end;
    if count = 2 then (*write(k, ' ')*)
                  begin
                  val(dec2bin(k),z,err);
                  if (palindrom(z)=1) then
                  writeln(k);
                  end;
  end
end.
0,0(0 оценок)
Популярные вопросы: Другие предметы
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?