Jump to content


Adeilton

Member Since 21/05/2011
Offline Last Active 28/05/2011, 00:29
-----

Topics I've Started

Erro Ao Compilar Codigo Pascal

21/05/2011, 16:04

Peço ajuda pois não consigo compilar meu codigo,sou novato em pascal.

segue o codigo:

Program Lista2;

{uses wincrt;}

type
elo = ^no;
no=record
cliente: char;
prox: elo;
end;
var op:integer;
prim:elo;
dado:char;

procedure inicializa(var prim:elo);
begin
prim:=Nil;
end;

procedure insere(var prim:elo;cli:char);
{insere no fim da fila-lista}
var p,q:elo;
begin
new(p);
p^.cliente:=cli;
p^.prox:=Nil;
q:=prim;
if q<>Nil then begin
while q^.prox<>Nil do
q:=q^.prox;
q^.prox:=p;
end
else begin
prim:=p;
end;
end;

procedure retira(var prim:elo);
{retira o primeiro}
var p:elo;
begin
if prim<>Nil then begin
p:=prim^.prox;
dispose(prim);
prim:=p;
end
else begin
writeln('A lista ja esta vazia!');
end;

end;
procedure imprime(var prim:elo);
var q:elo;
begin
q:=prim;
if prim<>Nil then begin
writeln('Lista: ');
while q<>Nil do begin
write(q^.cliente);
q:=q^.prox;
end;
end
else begin
writeln('Lista vazia!');
end;
readln;
end;

begin
op:=1;
while op<5 do begin
clrscr;
writeln(' Menu');
writeln('<1> Inicializar');
writeln('<2> Inserir');
writeln('<3> Retirar');
writeln('<4> Imprimir');
writeln('<5> Sair');
writeln('Opcao< >');
gotoxy(7,7);
readln(op);

if op=1 then begin
inicializa(prim);
writeln('Lista inicializada!');
readln;
end;

if op=2 then begin
writeln('Digite o dado a ser inserido:');
readln(dado);
insere(prim,dado);
end;

if op=3 then begin
retira(prim);
writeln('Retirado o primeiro elemento');
readln;
end;

if op=4 then begin
imprime(prim);
end;
end;
end.



Agora o erro:

=>erro semantico na linha linha 6....
=>o indentificador 'NO' não foi declarado dentro do escopo para a função PROGRAM!



obs:Estou usando o PASCALzim.

IPB Skin By Virteq