Используя функцию найти все АВТОМОРФНЫЕ числа из промежутка от A до B. Автоморфные числа-когда квадрат это числа оканчивается на само себя.Например 6^2=36(заканчивается на 6)

Используя функцию найти все АВТОМОРФНЫЕ числа из промежутка от A до B. Автоморфные числа-когда квадрат это числа оканчивается на само себя.Например 6^2=36(заканчивается на 6)
Гость
Ответ(ы) на вопрос:
Гость
// PascalABC.NET 3.1, сборка 1214 от 09.04.2016 function AutoMorph(n:integer):boolean; begin   var s1:=n.ToString;   Result:=(s1=(n*n).ToString.Right(s1.Length)) end; begin   var a,b:integer;   Write('Введите а и b: '); Read(a,b);   for var i:=a to b do     if AutoMorph(i) then Print(i) end. Тестовое решение: Введите а и b: 1 10000 1 5 6 25 76 376 625 9376 Попробовал переписать функцию в более примитивный вид. По-моему, она не стала проще, только удлинилась... function AutoMorph(n:integer):boolean; begin   var s1:=IntToStr(n); // n переводим в строковое представление   var s2:=IntToStr(n*n); // n*n переводим в строковое представление   var l1:=Length(s1); // длина строки s1   s2:=RightStr(s2,l1); // правые l1 символов из s2   Result:=(s1=s2) end;
Не нашли ответ?
Ответить на вопрос
Похожие вопросы