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

Синформатикой! в любом числе можно выделить некоторую непрерывную последовательность цифр, которая тоже будет некоторым числом. требуется написать программу, которая находит максимальное натуральное число х такое, что десятичная запись числа x^2 является подстрокой в десятичной записи числа n. если такого числа нет, то вывести ноль. формат входных данных (допускается чтение с клавиатуры) вводится натуральное число n. 1 n 1 000 000 000. формат выходных данных (допускается вывод на экран) выведите максимальное натуральное число х такое, что десятичная запись числа x2 является подстрокой в десятичной записи числа n.

Показать ответ
Ответ:
pollyyyyyyyyyyy
pollyyyyyyyyyyy
04.10.2020 17:47
//PascalABC.NET 3.2 сборка 1318
//Очередное решение "в лоб"

Var
  n,i,j,max:integer;
  s,curr:string;
  b:boolean=false;
begin
readln(n);
max:=-1;
s:=inttostr(n);
for i:=1 to length(s) do
  begin
    curr:='';
    for j:=i downto 1 do
      begin
        curr:=s[j]+curr;
        if frac(sqrt(strtoint(curr)))=0 then
          begin
            b:=true;
            if sqrt(strtoint(curr))>max then max:=round(sqrt(strtoint(curr)));
          end;
      end;
 end;
if b then writeln(max) else writeln('0');
end.

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