• Lenguaje

    Pascal

  • Descripción

    Muestra si un número es perfecto

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
program perfecto;
uses crt;

var divisor, numero, suma : integer;

begin
    write ('Ingrese un n'#163'mero: ');
    readln (numero);
    suma := 1;
    divisor := 2;
    write ('1');
    for divisor:=2 to numero-1 do
        if (numero mod divisor = 0) then
        begin
            write (' + ', divisor);
            suma := suma + divisor;
        end;
    writeln (' = ', suma);
    if suma = numero then
        writeln (#10#13'El n'#163'mero ', numero, ' s'#161' es perfecto.')
    else
        writeln (#10#13'El n'#163'mero ', numero, ' no es perfecto.');
    write (#10#13'Presione una tecla para terminar . . . ');
    readkey;
end.