program zad1;
uses crt;
var
S : string[80];
procedure podaj(var S : string);
begin
clrscr;
writeln('Podaj S');
readln(s);
end;
//procedura wypisywania S
procedure Wypisz(var S : string);
var
i : integer;
begin
clrscr;
for i := 1 to Length(s) do
begin
writeln('Znak zmiennej S w miejscu ',i,' to: ',s[i]);
end;
writeln('Wcisnij ENTER by powrocic do menu');
readln;
menu;
end;
// koniec procedury
procedure menu;
var
wybor : string;
x,kod : integer;
begin
//menu
writeln(' **********************');
writeln(' *1.Wprowadz S. *');
writeln(' *2.Wypisz znaki z S. *');
writeln(' *3.Wypisz wyrazy z S.*');
writeln(' *4.Zakoncz program. *');
writeln(' **********************');
//menu
repeat
readln(wybor);
val(wybor,x,kod);
if kod <> 0 then
writeln('Podana wartosc jest bledna');
if (x < 1 ) or (x > 4 ) then
writeln('Podana wartosc jest bledna');
until (( x = 1 ) or ( x = 2 ) or ( x = 3 ) or ( x = 4 )) and (kod = 0);
end;
case x of
1 : podaj(s);
2 : wypisz(s);
end;
begin
clrscr;
menu;
readln
end.
Error: Identifier not found MENU
wiem co oznacza ten blad, ale nie wiem jak go wyliminowac biorac pod uwage zalozenia mojego programu, mam menu, menu wywoluje procedury, chce osignac to by po kazdej procedurze bylo wywolywane menu, jednak nie moge tego zrobic gdyż menu jest "pozniej" po procedurach i nie moge sie z nich odwolac do menu, jesli odwroce sytuacje to sie ona odwraca i nie moge z menu sie odwolywac do procedur... Ktos wie jak to rozwiazac ?