program Meu_Primeiro_Procedimento;
{ Os procedimentos ou subprogramas que nao retornam
valor sao declarados e implementados na area de
declaracoes do programa principal. Um procedimento
possui todas as caracteristicas de um programa sendo
este o motivo pelo qual sao tambem chamados de
subprogramas.
Assim como os programas, os procedimentos possuem
sua propria area de declaracao e sua propria area de
implementacao. Tambem como os programas, os
subprogramas podem conter outros subprogramas.
NOTA: na area de declaracoes e' tambem permitido
declarar labels; porem, um programa pascal
bem escrito nao deve incluir labels e gotos.
DESVIOS INCONDICIONAIS SAO SEMPRE FONTES
DE PROBLEMAS DIFICEIS DE RESOLVER! }
{ para entender como o presente porgrama e' executado
sugiro sua execucao com pressionamentos da tecla F7 }
procedure Procedimento1;
{ este procedimento pertence ao programa principal }
begin { of procedure }
Writeln('Bom dia.');
end; { of procedure }
begin
Writeln('Oi');
Procedimento1; { chama o Procedimento1}
Writeln('Aqui');
Procedimento1; { chama o Procedimento1}
Writeln('Fim');
end.