Run Code
|
API
|
Code Wall
|
Misc
|
Feedback
|
Login
|
Theme
|
Privacy
|
Patreon
practica 5 ejercicio 7
//fpc 3.0.4 program HelloWorld; const representantes = 2; paises = 4; EDADMAX = 80; EDADMIN = 20; type rangoRepresentantes = 1 .. representantes; rangoPaises = 1 .. paises; rangoEdad = EDADMIN .. EDADMAX; Tnombre = string [15]; Tplato = record nombre:Tnombre; temperatura : char; secreto: Tnombre; end; Trepresentante = record nombre : Tnombre; apellido : Tnombre; pais : rangoPaises; sexo : char; edad : rangoEdad; plato : Tplato; end; {------------------------------------------------------------------------ INFORME PAIS} procedure informarPais(p:rangoPaises); begin case p of 1:writeln('Afganistán'); 2:writeln('Albania'); 3:writeln('Alemania'); 4:writeln('Andorra'); { 5:writeln('Angola'); 6:writeln('Antigua y Barbuda'); 7:writeln('Arabia Saudita'); 8:writeln('Argelia'); 9:writeln('Argentina'); 10:writeln('Armenia'); 11:writeln('Australia'); 12:writeln('Austria'); 13:writeln('Azerbaiyán'); 14:writeln('Bahamas'); 15:writeln('Bangladés'); 16:writeln('Barbados'); 17:writeln('Baréin'); 18:writeln('Bélgica'); 19:writeln('Belice'); 20:writeln('Benín');} end; end; {--------------------------------------------------------------------------------------------------} {------------------------------------------------------------------------ INFORMAR} procedure Informar(r:Trepresentante); begin writeln('nombre ',r.nombre); writeln('apellido ',r.apellido); writeln('sexo ',r.sexo); writeln('edad ',r.edad); informarPais(r.pais); writeln('plato: '); writeln('nombre ',r.plato.nombre); writeln('temeperatura ',r.plato.temperatura); writeln('secreto ',r.plato.secreto); end; {--------------------------------------------------------------------------------------------------} {------------------------------------------------------------------------ LEER REPRESENTANTE} procedure leerRepresentante(var r:Trepresentante;pais:rangoPaises); begin readln(r.nombre); readln(r.apellido); readln(r.sexo); readln(r.edad); readln(r.plato.nombre); readln(r.plato.temperatura); readln(r.plato.secreto); end; {--------------------------------------------------------------------------------------------------} {------------------------------------------------------------------------ CUMPLE A} function cumplea(a:integer;r:Trepresentante):integer; begin if (r.sexo = 'f')and(r.plato.temperatura = 'f')then begin cumplea:=1; end else cumplea:=0; end; {------------------------------------------------------------------------ MAXIMO A} procedure maximoa(pais:rangoPaises;a:integer;var pmaxa:rangoPaises;var maxa:integer); begin if a > maxa then begin pmaxa:=pais; maxa:=a; end; end; {--------------------------------------------------------------------------------------------------} {------------------------------------------------------------------------ INFORMAR} procedure informar(p:rangoPaises;var prom:real); begin write('El pais con mayor cantidad de participantes femeninos con platos frios es '); informarPais(p); writeln; prom := prom / (paises * representantes); writeln('la edad promedio de los participantes es ',prom:8:2); end; {--------------------------------------------------------------------------------------------------} procedure informeC(r:Trepresentante); begin if (r.plato.temperatura = 'c')and(r.plato.secreto = 'pollo')then begin writeln(r.nombre,' ',r.apellido,' presentó plato caliente con pollo'); writeln; end; end; {--------------------------------------------------------------------------------------------------} {------------------------------------------------------------------------ PROGRAMA PRINCIPAL} var pais:rangoPaises;//nro de pais representante:rangoRepresentantes;//nro de representante r:Trepresentante;//representantes pmaxa:rangoPaises; //pais con la cantidad maxima de a maxa:integer;//cantidad max de a en un pais a:integer;//cantidad de representantes femeninos con platos frio prom:real; // el promedio de las edades de todos los que participan begin maxa:=0;prom:=0; for pais:= 1 to paises do begin a:=0; for representante := 1 to representantes do begin leerRepresentante(r,pais); a:= a + cumplea(a,r); prom:= prom + r.edad; informeC(r); end; maximoa(pais,a,pmaxa,maxa); end; informar(pmaxa,prom); end. //el ingreso de datos debe ser estrictamente seguido, el compilado no admite la lectura con renglones salteados
run
|
edit
|
history
|
help
0
nomer7
test11
Thao Vi
XEPBAN
task 3
practica 11 ejercicio 3
p1
practica 5 ejercicio 4
practica 7 ejercicio 6
sumar 2 valores