Вы находитесь на странице: 1из 7

Prctica 5

Estructura de repeticin: mientras (while)


Estructura de repeticin: repetir (repeat)

Codificacin del repeat en TP


repeat
instruccin 1
instruccin 2

instruccin n
until (condicin lgica);

1.

Escribir un programa en Pascal que lea n


nmeros y calcule el promedio de los nmeros
positivos y el promedio de los nmeros
negativos.
a. Usando la estructura WHILE para repetir la
ejecucin del programa.
b. Usando la estructura REPEAT para realizar los
clculos necesarios.
Condiciones:
1. El programa debe validar las entradas.
2. Ttulo centrado y de color verde (10).
3. El resultado se debe mostrar en color blanco
(15).
4. Opcin de seguir realizando clculos.
5. Mensajes de error en color verde claro (11).

program suma_num;
writeln(Cantidad de nmeros no vlida');
uses
end;
crt;
until (n>0);
var
sumapos:=0;
n,contpos,contneg:integer;
sumaneg:=0;
num,sumapos,sumaneg,prompos,
contpos:=0;
promneg:real;
contneg:=0;
resp:char;
repeat
begin
repeat
clrscr;
textcolor(15);
resp:='s';
writeln('Introduzca un nmero: ');
while (resp='s') or (resp='S') do
readln(num);
begin
if (num=0) then
clrscr;
begin
textcolor(10);
textcolor(9);
gotoxy(15,1);
writeln('No puede introducir ceros');
writeln('Calculo de promedios');
end;
repeat
until (num<0) or (num>0);
textcolor(15);
if (num<0) then
writeln;
begin
writeln(Nmeros a promediar: ');
sumaneg:=sumaneg+num;
readln(n);
contneg:=contneg+1;
if (n<=0) then
end;
begin

if (num>0) then
begin
sumapos:=sumapos+num;
contpos:=contpos+1;
end;
n:=n-1;
until (n<=0);
if (contpos<>0) then
prompos:=sumapos/contpos
else
prompos:=0;
if (contneg<>0) then
promneg:=sumaneg/contneg
else
promneg:=0;
writeln('Promedio de los nmeros positivos: ',prompos:0:2);
writeln('Promedio de los nmeros negativos: ',promneg:0:2);
writeln;
writeln('Desea realizar clculos (s/n): ');
readln(resp);
end;
end.

2. Escribir un programa en Pascal que calcule


cuntos aos tarda en duplicarse un capital
depositado al 5% de inters anual.
a. Usando la estructura WHILE para repetir la
ejecucin del programa.
b. Usando la estructura REPEAT para realizar
las validaciones y clculos necesarios.
Condiciones:
1. El programa debe validar las entradas.
2. Ttulo centrado y de color amarillo (14).
3. El resultado se debe mostrar en color
magenta (5).
4. Opcin de seguir realizando clculos.

if (cap_ini<=0) then
program capital;
writeln('El capital es cero o negativo,
Uses crt;
nunca se duplicar!!!')
var
else
cap_ini,cap_fin: real;
begin
num_year: integer;
repeat
resp: char;
cap_fin:=cap_fin+(cap_fin*interes);
const
num_year:=num_year + 1;
interes=0.05;
until cap_fin > (cap_ini*2);
begin
textcolor(5);
clrscr;
writeln('Capital inicial: ', cap_ini:0:2);
gotoxy(15,1);
writeln('Capital final: ', cap_fin:0:2);
textcolor(14);
writeln('Capital duplicado en
writeln('Clculo de aos en los
',num_year,' anos');
cuales se duplica un capital');
writeln;
resp:='s';
textcolor(15);
while (resp='s') or (resp='S') do
writeln('Desea realizar otro clculo
begin
(s/n)?');
num_year:=0;
readln(resp);
textcolor(15);
end;
writeln('Introduzca el capital inicial:
end;
');
end.
readln(cap_ini);
cap_fin:=cap_ini;

Вам также может понравиться