uses crt;
{--------------------------------------------}
procedure sumaDivisores;
var
num,i,s:integer;
begin
clrscr;
write('Ingrese un numero [cero(0) o negativo para terminar]: ');
readln(num);
while num > 0 do begin
s:=0;
for i:=1 to num do begin
if num mod i = 0 then
s:=s+i;
end;
writeln('Suma = ',s);
write('Ingrese un numero [cero(0) o negativo para terminar]: ');
readln(num);
end;
end;
{-----------------------------------------------}
procedure potencia;
var
base,exponente,p,i:integer;
begin
write('Ingrese la base: ');
readln(base);
write('Ingrese el exponente: ');
readln(exponente);
p:=1;
for i:=1 to exponente do
p:=p*base;
writeln(base,'^',exponente,' es ',p);
end;
{------------------------------------------------------}
procedure valoresLeidos;
var
n,i,c:integer;
begin
write('Dame un numero: ');
readln(n);
while n <> 0 do begin
inc(c);
write('Dame un numero: ');
readln(n);
end;
writeln('Se leyeron ',c,' numeros');
end;
{---------------------------------------------------------}
procedure juego;
var
r1,r2,r3:char;
flag:byte;
begin
flag:=1;
while flag=1 do begin
write('Colon descubrio America? s/n: ');
readln(r1);
write('La independencia de Mexico fue en 1810? s/n: ');
readln(r2);
write('Green Day es un grupo Punk? s/n: ');
readln(r3);
if (r1='s')and(r2='s')and(r3='s') then begin
writeln('Usted gano, continue jugando');
continue;
end
else begin
writeln('Usted perdio, gracias por jugar');
flag:=0;
end;
end;
end;
{---------------------------------------------------------}
begin
clrscr;
sumaDivisores;
writeln;
potencia;
writeln;
valoresLeidos;
writeln;
juego;
end.