practica 9 ejercicio 1
program HelloWorld;
const
FIN = 999;
type
lista = ^nodo;
nodo = record
datos : integer;
sig : lista;
end;
procedure agregarElemento(var l : lista; n : integer);
var
nue : lista;
begin
new (nue);
nue^.datos := n;
nue^.sig := l;
l := nue;
end;
procedure cargarLista(var l: lista);
var
n : integer;
begin
l := nil;
n := random(20)+990;
while (n <> FIN) do begin
agregarElemento(l,n);
n := random(20)+990;
end;
end;
procedure imprimirLista(l : lista);
begin
while l^.sig <> nil do begin
write(l^.datos,' - ');
l:= l^.sig;
end;
write(l^.datos, '.');
end;
function ejercicioA(l : lista): integer;
var
digitos : integer;
num : integer;
cant : integer;
begin
cant := 0;
while (l <> nil) do begin
num := l^.datos;
digitos := 0;
while num <> 0 do begin
digitos := digitos + 1;
num := num div 10;
end;
if digitos = 3 then
cant := cant + 1;
l := l^.sig;
end;
ejercicioA := cant;
end;
function buscarNumero (l : lista; num : integer): boolean;
begin
while (l <> nil)and(l^.datos <> num) do l := l^.sig;
if l <> nil then begin buscarNumero := true;
end else buscarNumero := false;
end;
procedure recorrerLista(l:lista);
var
num : integer;
begin
writeln;
writeln('-----------------------------------------------------------------');
writeln('ejercicios : ');
writeln('la cantidad de numeros con 3 digitos son: ',ejercicioA(l));
num := random(20)+990;
writeln('el numero a buscar es ',num);
writeln('el numero se encuentra en la lista ',buscarNumero(l,num));
end;
procedure liberar(var l : lista);
var
aux : lista;
begin
while (l <> nil) do begin
aux := l^.sig;
dispose(l);
l:= aux;
end;
end;
var
l : lista;
begin
randomize;
cargarLista(l);
imprimirLista(l);
recorrerLista(l);
liberar(l);
end.
|
run
| edit
| history
| help
|
0
|
|
|