Procedimentos aninhados

program Procedimentos_Aninhados;

 { para entender como o presente programa é executado sugiro sua execução com pressionamentos da tecla F7 }

 procedure Procedimento1; { este procedimento pertence ao programa principal }

 procedure Procedimento2; { este procedimento pertence ao procedimento Procedimento1 }

       begin { of procedure Procedimento2}

        Writeln('2:Boa noite.');

       end; { of procedure Procedimento2}

      begin { of procedure Procedimento1}

        Writeln('1:Bom dia.');

        Procedimento2; { chama o Procedimento2}

      end; { of procedure Procedimento1}

      begin

            Writeln('Principal');

            Procedimento1; { chama o Procedimento1}

           Writeln('Principal');

       end.