Run Code
|
API
|
Code Wall
|
Misc
|
Feedback
|
Login
|
Theme
|
Privacy
|
Patreon
practica 9 ejercicio 5
program HelloWorld; {-----------------------------------------------------------------------------------------------------------------------} {----------------------------------------------------------------- CONST - Define las constantes para usar en tiempo de compilacion} const FIN = 'fin'; {-----------------------------------------------------------------------------------------------------------------------} {-----------------------------------------------------------------------------------------------------------------------} {----------------------------------------------------------------- TYPE - Define los tipos creados por el usuario para usar en tiempo de compilacion} type Tnombre = string [22]; Telemento = record nombre : Tnombre; apellido : Tnombre; area : Tnombre; origen : Tnombre; sexo : char; end; Tlista = ^nodo; nodo = record datos : Telemento; sig : Tlista; end; {-----------------------------------------------------------------------------------------------------------------------} {-----------------------------------------------------------------------------------------------------------------------} {----------------------------------------------------------------- VARIABLES GLOBALES - Define variables que se podran usar por todos los modulos de ser necesarias} //var {-----------------------------------------------------------------------------------------------------------------------} {-----------------------------------------------------------------------------------------------------------------------} {----------------------------------------------------------------- LEER ELEMENTO ...} procedure leerElemento(var e : Telemento); begin readln(e.nombre); if e.nombre <> FIN then begin readln(e.apellido); readln(e.origen); readln(e.area); readln(e.sexo); end; end; {----------------------------------------------------------------- AGREGAR ELEMENTO ...} procedure agregarElemento(var l : Tlista; e : Telemento); var nue : Tlista; begin new(nue); nue^.datos:= e; nue^.sig := l; l := nue; end; {----------------------------------------------------------------- CARGAR LISTA ...} procedure cargarLista(var l: Tlista); var e : Telemento; begin leerElemento(e); while e.nombre <> FIN do begin agregarElemento(l,e); leerElemento(e); end; end; {-----------------------------------------------------------------------------------------------------------------------} {-----------------------------------------------------------------------------------------------------------------------} {----------------------------------------------------------------- IMPRIMIR PARTICIPANTE ...} procedure imprimirElemento(e : Telemento); begin writeln('nombre : ',e.nombre); writeln('apellido : ',e.apellido); writeln('sexo : ',e.sexo); writeln('origen : ',e.origen); writeln('area : ',e.area); writeln('-----------------------------------------------------------------'); end; {----------------------------------------------------------------- IMPRIMIR LISTA ...} procedure imprimirLista( l: Tlista); begin while l <> nil do begin imprimirElemento(l^.datos); l:= l^.sig; end; writeln('---------------------------------------------------------------------------------------------------------------'); end; {-----------------------------------------------------------------------------------------------------------------------} {----------------------------------------------------------------- INSERTAR ORDENADO ...} procedure insertarOrdenado(var l2 : Tlista; e : Telemento); var nue,act,ant : Tlista; begin new(nue); nue^.datos := e; act := l2; ant := l2; while (act <> nil) and (act^.datos.area < nue^.datos.area) do begin ant := act; act := act^.sig; end; if (act = l2) then begin l2 := nue; end else ant^.sig := nue; nue^.sig:= act; end; {----------------------------------------------------------------- INFORMAR ...} procedure informar(c,cp,ca:integer;l2:Tlista); var na:real; begin writeln;writeln; writeln('la cantidad de participantes que cumplen con A son: ',c); writeln;writeln; na:= cp - ca ; // participantes que no son argentinos na := (na * 100)/cp; writeln('porcentaje de participantes de origen extranjero ',na:3:2,'%'); writeln;writeln; imprimirLista(l2); end; {----------------------------------------------------------------- RECORRER LISTA ...} procedure recorrerLista( l : Tlista); var contadorA : integer; contadorParticipantes, contadorArgentinos : integer; l2 : Tlista; begin contadorParticipantes := 0; contadorArgentinos := 0; contadorA :=0; l2:=nil; while l <> nil do begin // ejercicio a if (l^.datos.sexo = 'f')and(l^.datos.origen = 'Argentina')and(l^.datos.area = 'Accesibilidad Web') then begin writeln('nombre de participante que cumple con a : ',l^.datos.nombre); contadorA := contadorA + 1; end; // ejercicio b contadorParticipantes := contadorParticipantes + 1; if l^.datos.origen = 'Argentina' then contadorArgentinos := contadorArgentinos + 1; // ejercicio c insertarOrdenado(l2,l^.datos); l := l^.sig; end; informar(contadorA,contadorParticipantes,contadorArgentinos,l2); end; {-----------------------------------------------------------------------------------------------------------------------} {----------------------------------------------------------------- LIBERAR LISTA ...} procedure liberarLista(var l: Tlista); var aux : Tlista; begin while l <> nil do begin aux:=l^.sig; dispose(l); l := aux; end; end; {-----------------------------------------------------------------------------------------------------------------------} { Lectura : nombre (la lectura termina cuando el nombre es 'fin') apellido origen area sexo } {-----------------------------------------------------------------------------------------------------------------------} {----------------------------------------------------------------- PROGRAMA PRINCIPAL} var l : Tlista; begin cargarLista(l); imprimirLista(l); recorrerLista(l); liberarLista(l); end. {-----------------------------------------------------------------------------------------------------------------------}
run
|
edit
|
history
|
help
0
Main-main
zad27-notoptimal
Fibonacci
CALCULATE FILE
Homework 5
abcd...
TOHOP
Вычисление площади фигуры
practica 7 ejercicio 7
Задача 2 урок не из учебника