PascalABC.NET 3.3.5, сборка 1650 от 01.04.2018 Внимание! Если программа не работает, обновите версию!
function Sod(Self:integer):integer; extensionmethod; begin Result:=0; while Self<>0 do begin Result+=Self mod 10; Self:=Self div 10 end end;
function IsGood(Self:integer):boolean; extensionmethod; begin var sd:=Self.Sod; Result:=True; for var i:=2 to 9 do begin Result:=(i*Self).Sod=sd; if Result=False then Exit end end;
begin var (a,b):=ReadInteger2; Range(a,b).Where(t->t.IsGood).Println end.
Внимание! Если программа не работает, обновите версию!
function Sod(Self:integer):integer; extensionmethod;
begin
Result:=0;
while Self<>0 do begin
Result+=Self mod 10;
Self:=Self div 10
end
end;
function IsGood(Self:integer):boolean; extensionmethod;
begin
var sd:=Self.Sod; Result:=True;
for var i:=2 to 9 do begin
Result:=(i*Self).Sod=sd;
if Result=False then Exit
end
end;
begin
var (a,b):=ReadInteger2;
Range(a,b).Where(t->t.IsGood).Println
end.
Пример
1 1000
9 18 45 90 99 180 198 297 396 450 495 549 594 693 792 819 891 900 909 918 945 990 999