//PascalABC.NET 3.0
function check(x: integer): boolean;
begin
var tmp := x * x;
Result := true;
repeat
if tmp mod 10 <> x mod 10 then Result := false;
tmp := tmp div 10;
x := x div 10;
until (x = 0) or not(Result);
end;
begin
var n := ReadInteger('Введите N:');
Range(1, n).Where(x -> check(x)).Select(x -> x.ToString + '*' + x.ToString + '=' + (x * x).ToString).Println(NewLine)
e<span>nd.</span>
1) 49 в 8 сс=61
61 в 10сс =6*8+1=49
2)154,8 в 8 сс 232,63
2*64+3*8+2+6*1/8+4*1/8=154,8
<u>PascalABC.NET 3.4.0, сборка 1671 от 31.05.2018</u>
<u>Внимание! Если программа не работает, обновите версию!</u>
begin
var a:=ReadlnString.ToWords(Arr(',','.'));
var (i,ssg):=(1,'аеёиоуыэюя');
var sg:=['а','е','ё','и','о','у','ы','э','ю','я'];
while i<=a.Length do begin
foreach var c in a[i].ToCharArray do
if c in sg then Exclude(sg,c);
i+=2
end;
for var j:=ssg.Length downto 1 do
if not (ssg[j] in sg) then Delete(ssg,j,1);
ssg.ToCharArray.Println(',')
end.
Непонятное задание. Каждый фрагмент выровнен по левому краю.
Ошибочно описан тип в строке <span>SW=array(1..8, #65..#72) of Figura;
Должны быть квадратные скобки. После исправления программа с таким описанием нормально компилируется.
</span>