Run Code
|
API
|
Code Wall
|
Misc
|
Feedback
|
Login
|
Theme
|
Privacy
|
Patreon
practica 11 ejercicio 7 BETA
program HelloWorld; {-----------------------------------------------------------------------------------------------------------------------} {----------------------------------------------------------------- CONST - Define las constantes para usar en tiempo de compilacion} const combos = 15; FIN = 'fin'; {-----------------------------------------------------------------------------------------------------------------------} {-----------------------------------------------------------------------------------------------------------------------} {----------------------------------------------------------------- TYPE - Define los tipos creados por el usuario para usar en tiempo de compilacion} type rangoCombos = 1 .. combos; Tnombre = string[15]; Tcombo = record nombre : Tnombre; stock : integer; precio : real; puntos : integer; end; Tcliente = record DNI : integer; apellido : Tnombre; nombre : Tnombre; puntos : integer; end; Tlista = ^nodo; nodo = record datos : Tcliente; sig : Tlista; end; Tvector = array [rangoCombos] of Tcombo; Tpedido = record DNI : integer; combo : rangoCombos; stock : integer; end; {-----------------------------------------------------------------------------------------------------------------------} {-----------------------------------------------------------------------------------------------------------------------} {----------------------------------------------------------------- VARIABLES GLOBALES - Define variables que se podran usar por todos los modulos de ser necesarias} //var {-----------------------------------------------------------------------------------------------------------------------} {----------------------------------------------------------------- INSERTAR ORDENADO ...} procedure insertarOrdenado(var l : Tlista; e : Tcliente); var nue,act,ant : Tlista; begin new(nue); nue^.datos := e; act := l; ant := l; while (act <> nil) and (act^.datos.DNI < nue^.datos.DNI) do begin ant := act; act := act^.sig; end; if (ant = l) then begin l := nue; end else ant^.sig := nue; nue^.sig:= act; end; {----------------------------------------------------------------- LEER CLIENTE...} procedure leerCliente(var a : Tcliente); begin readln(a.nombre); if a.nombre <> FIN then begin a.DNI := random(138949); readln(a.apellido); a.puntos := random(1000); end; end; {----------------------------------------------------------------- CARGAR LISTAS ...} procedure cargarLista(var l : Tlista); var e : Tcliente; begin l := nil; leerCliente(e); while (e.nombre <> FIN) do begin insertarOrdenado(l,e); leerCliente(e); end; end; {-----------------------------------------------------------------------------------------------------------------------} {-----------------------------------------------------------------------------------------------------------------------} {----------------------------------------------------------------- LEER COMBO } procedure leerCombo(var c : Tcombo); begin readln(c.nombre); c.precio := random(500); c.stock := random(14); c.puntos := random(3000); end; {----------------------------------------------------------------- CARGAR VECTOR } procedure cargarVector(var v : Tvector); var i:rangoCombos; begin for i:=1 to combos do leerCombo(v[i]); end; {-----------------------------------------------------------------------------------------------------------------------} {-----------------------------------------------------------------------------------------------------------------------} {----------------------------------------------------------------- } procedure espacio; begin writeln('-----------------------------------------------------------------'); end; {----------------------------------------------------------------- } procedure imprimirDatos( c : Tcliente); begin writeln('nombre: ',c.nombre); writeln('apellido: ',c.apellido); writeln('DNI: ',c.DNI); writeln('puntos: ',c.puntos); end; {----------------------------------------------------------------- } procedure imprimirLista( l : Tlista); begin espacio; while l <> nil do begin imprimirDatos(l^.datos);espacio; l := l^.sig; end; espacio; end; {-----------------------------------------------------------------------------------------------------------------------} {-----------------------------------------------------------------------------------------------------------------------} {----------------------------------------------------------------- IMPRIMIR COMBO } procedure imprimirCombo(var c : Tcombo); begin writeln('nombre del plato: ',c.nombre); writeln(c.precio:4:2,'$'); writeln('stock: ',c.stock); writeln(c.puntos ,'pts'); end; {----------------------------------------------------------------- IMPRIMIR VECTOR } procedure imprimirVector(var v : Tvector); var i:rangoCombos; begin for i:=1 to combos do begin imprimirCombo(v[i]); espacio; end; end; {-----------------------------------------------------------------------------------------------------------------------} {-----------------------------------------------------------------------------------------------------------------------} {----------------------------------------------------------------- PROGRAMA PRINCIPAL} var v : Tvector; l : Tlista; begin randomize; cargarLista(l); cargarVector(v); imprimirLista(l); imprimirVector(v); end. {-----------------------------------------------------------------------------------------------------------------------}
run
|
edit
|
history
|
help
0
conversion Metrica
t moche
кристина
task 3
practica 3 ejercicio 10
BubbleSort (slimmer)
nomer2
AreaTriangulo.pas
Unicorn
test24