Uses Crt,GrafikaG,SortG;
procedure menu;forward;
{procedura umożliwiająca przesuwanie kursora po menu }
Function F(m:Word):Real;
Begin
F:=m*g;
End;
Procedure zadanie;
Begin
Repeat
Clrscr;
textbackground(0);
clrscr;
Pasek(1,1,15,80);
textColor(14);
textbackground(15);
Pisz(5,1,'Autor: Karolina Szwoch Data: 05.11.06, Ver. 1.0.');
Pasek(1,24,15,80);
Pisz(5,24,'ESC-wyjscie z programu, pozostale znaki kontynuacja programu');
textColor(15);
textbackground(0);
Pisz(6,4,'Celem zadania jest wyliczenie ciezaru ciala dla dowolnej masy');
Pisz(6,5,'jezeli wprowadzisz wartosc za m zatwierdz ja Enterem');
Pisz(37,10,'m=');
Wpis(39,10,m);
F(m);
Ramka;
Kolory(0,14);
Pisz(19,15,'Ciezar ciala: ');
Write('F=',M,'*',G:0:2,' => ','F=',F(m):0:2, '[N]');
{formatowanie LR z postaci wykladniczej na postac dziesitna}
Until readkey=#27;
menu;
End;
Procedure Wybor(PozycjaKursora:Byte;PrawdaKursora:Boolean);
Begin
If(PozycjaKursora>0)AND(PozycjaKursora<6)Then
Begin
If PrawdaKursora Then
{jeľeli kursor zatrzyma si© na pozycji to tto pomaracz, a litery biaae}
Begin
TextBackground(6);
TextColor(9);
End
Else
Begin
TextBackground(9);{jeľeli nie to odwrotne kolory}
TextColor(6);
End;
GoToXY(20,{3}4+PozycjaKursora);{* od 20 kolumny, wiersz}
Write(StartMenu[PozycjaKursora]);
End;
End;
Procedure Menu;
Var Pozycja:Byte;
c:CHAR;
Procedure PodMenuWybor;
Var i:Byte;
Begin
TextBackground(9); {caae tto niebieskie}
ClrScr;
TextColor(10);
Pisz(20,2,'M E N U G ˘ w n e Programu');
TextBackground(9);
TextColor(6);{litery br¥z}
For i:=1 To {3}4 Do
Begin
GoToXY(20,{3}4+i);{od 20 kolumny- dane muszĄ si© zgadza† z *}
write(StartMenu[i]);
End;
TextColor(4);
Pisz(10,14,'Opis poruszania si© po programie');
TextColor(13);
Pisz(15,16,'Wyb˘r -');
TextColor(14);Write(' Odbywa si© strzaakami g˘ra/ d˘˘ ');
TextColor(6);Write(#24,', ', #25);
TextColor(13);
Pisz(15,17,'Enter - ');TextColor(14); Write(' Akceptacja- realizacja programu');
TextColor(13);
Pisz(15,18,'Wyjjcie z programu - ');TextColor(14); Write(' powr˘t do systemu');
End;
Begin
StartMenu[1]:=' Ci©¾ar Ciaˆa ';
StartMenu[2]:=' Tablica Jednowymiarowa ';
StartMenu[3]:=' Tablice Wielowymiarowe ';
StartMenu[4]:=' Wyjjcie z programu ';
PodMenuWybor;
pozycja:=1;
Wybor(pozycja,TRUE);
Repeat
c:=ReadKey;
Case c Of
'1':Begin Wybor(pozycja,FALSE);pozycja:=1;Wybor(pozycja,TRUE);End;
'2':Begin Wybor(pozycja,FALSE);pozycja:=2;Wybor(pozycja,TRUE);End;
'3':Begin Wybor(pozycja,FALSE);pozycja:=3;Wybor(pozycja,TRUE);End;
'4':Begin Wybor(pozycja,FALSE);pozycja:=4;Wybor(pozycja,TRUE);End;
#72:Begin{strzaaka g˘ra}
If pozycja>1 Then
Begin
Wybor(pozycja,FALSE);
pozycja:=pozycja-1;{lub Dec(pozycja);}
Wybor(pozycja,TRUE);
End;
End;
#80:Begin{strzaˆka d¢ˆ}
If pozycja<{3}4 Then
Begin
Wybor(pozycja,FALSE);
Inc(pozycja);
Wybor(pozycja,TRUE);
End;
End;
#13:Begin{enter- akceptacja}
Case pozycja Of
1:Zadanie;
2:MenuTablice;
3:Menu2;
4:Halt;
end;
end;
end;
Until (c=#27);{esc wyj˜cie z programu}
end;
begin {program gˆ¢wny}
clrscr;
menu ;
end.