Witam,
uczę się aktualnie Pascala z dobrego kursu w necie. Teraz skończyłem przerabiać podstawy bazy danych i chciałem trochę udoskonalić tą, dołączoną do kursu. Chciałem zrobić, aby można było swobodnie poruszać sie między "kontaktami" (poprzedni, następny), ale coś nie działa, niewiem czemu. Gdzy dodam pierwszy kontakt, program przeskakuje do podglądu, i to do jakiegoś pustego kontaktu, a powinien wrócić do menu.
Oto Kod
Uses CRT; {1}
{2}
Var {3}
Imie,nazwisko,telefon:array[1..30] of string; {4}
c,c2:char; {5}
iloscosob:byte; {6}
t1:byte; {7}
nawigacja:Char; {8}
{9}
PROCEDURE Wprowadz; {10}
Begin {11}
ClrScr; {12}
Iloscosob:=iloscosob+1; {13}
Write('Imie : '); {14}
ReadLn( imie[iloscosob] ); {15}
Write('Nazwisko : '); {16}
ReadLn( nazwisko[iloscosob] ); {17}
Write('Telefon : '); {18}
ReadLn( telefon[iloscosob] ); {19}
End; {20}
{21}
PROCEDURE Wyswietl; {22}
Begin {23}
Repeat {24}
ClrScr; {25}
WriteLn('Imie : ',imie[t1] ); {26}
WriteLn('Nazwisko : ',nazwisko[t1] ); {27}
WriteLn('Telefon : ',telefon[t1] ); {28}
WriteLn; {29}
WriteLn('1 - Poprzedni | Nastepny - 2'); {30}
WriteLn(' Powrót do menu - 3'); {31}
Repeat {32}
Read(nawigacja); {33}
Until (nawigacja='1') Or (nawigacja='2') Or (nawigacja='3');{34}
If nawigacja='1' Then t1:=t1+1; {35}
If nawigacja='2' Then t1:=t1-1; {36}
Until nawigacja='3'; {37}
End; {38}
{39}
Begin {40}
Iloscosob:=0; {41}
Repeat {42}
ClrScr; {43}
WriteLn('1. Nowy wpis'); {44}
WriteLn('2. Wyswietlenie wpisu'); {45}
WriteLn('3. Koniec programu'); {46}
Repeat {47}
c:=readkey; {48}
Until (c>='1') AND (c<='3'); {49}
If c='1' Then Wprowadz; {50}
If c='2' Then {51}
Repeat {52}
ClrScr; {53}
Write('Numer wpisu ? (1..', iloscosob ,') :'); {54}
ReadLn(t1); {55}
Until (t1>=1) AND (t1<=iloscosob); {56}
Wyswietl; {57}
Until c='3'; {58}
End. {59}
Dla ułatwienia ponumerowałem linijki :D
Mam nadzieję, że ktoś będzie mi w stanie pomóc, bo utknąłem w miejscu :( Kombinowałem długo, niewiem w czym problem.
Z góry dzięki