Pascal

Modified: Wednesday, 22-12-2021 07:00 AM
    Số Amstrong là số mà tổng lũy thừa bậc n các chữ số của nó bằng lại chính nó.
    - Ví dụ số 153:
        + Ta có: 1^3+5^3+3^3=153 do đó 153 là số Amstrong.

uses math;
var a,b,i:longint;
function Amstrong(x:longint):boolean ;
var s:string;
    j,k,l:byte;
    m:longint;
begin
    Amstrong := false;
    str(x,s);
    l := length(s);
    m := 0;
    for j:=1 to l do
    begin
        val(s[j],k);
        m := m + round(power(k,l));
    end;
    if m=x then exit(true);
end;    

begin
    readln(a,b);
    writeln('--------------');
    for i:= a to b do 
        if Amstrong(i) then writeln(i);
        readln;
end.