Niezalogowany (Zaloguj się)
WItaj Gościu! Możesz się teraz zalogować lub poprosić o członkowstwo na Forum Turbo Pascal Web Pag
    • CommentAuthorBolo
    • CommentTime24 Jan 2008
     
    Witam,chciał bym napisać prosty program w stylu "rozkład jazdy autobusów" chodzi mi o to ,że gdy wybiorę linie i przystanek pokażą mi się godziny o których jedzie dany autobus. Moje pytanie a w zasadzie prośba dotyczy tego od czego mam zacząć pisanie? jeżeli mogli byście podsunąć mi parę linków do jakiś artykułów,ew. jakieś wskazówki. był bym bardzo wdzięczny. kontakt tutaj albo gg:8683063. Z góry dziękuje za pomoc.
    • CommentAuthorsteficzek
    • CommentTime24 Jan 2008 zmieniony
     

    Rozkład jazdy - prosty program, no nie wiem czy taki prosty. - Zastanówmy się - Co to jest rozkład?

    Rozkład - Ma swoją nazwę lub nazwę miasta którego dotyczy oraz listę Linii w nim kursujących.

    Linie - Każda Linia ma swoją nazwe lub numer linii. Wiemy że istnieją różne linie:
    normalne i ekspresowe i trzeba to brać pod uwagę, każda z tych linii posiada
    swoje przystanki.

    Przystanek - Oczywiście też posiada nazwę bądź adres, może on być też przystankiem na
    żądanie lub przystaniekem zwykłym. Jak wiadomo na każdym przystanku mamy informacje
    o odjazdach.

    Odjazdy - Czyli krótko mówiąc godziny o których coś odjeżdża z
    przystanku, pamiętać trzeba że niektóre odjazdy sa tylko
    w swieta lub dni wolne.

    Lecimy z koksem i na podstawie naszych przemyśleń utwórzmy sobie Typ który będzie
    odzwierciedleniem naszego rozkladu.

    Type TKursujeWDni = (Zawsze,Wakacje,Swieta);
    TRodzajePrzystankow = (Zwykly,NaZadanie);
    TRodzajLinii = (Normalny,Przyspieszony,Ekspres);
    TOdjazd = record
    Godzina : string[5];
    KursujeWDni : TKursujeWDni;
    end;
    TPrzystanek = record
    NazwaPrzystanku : string[10];
    RodzajPrzystanku : TRodzajePrzystankow;
    Odjazd : array [1..10] of TOdjazd;
    end;
    TLinia = record
    NazwaLinii : string[10];
    RodzajLinii : TRodzajLinii;
    Przystanek : array [1..10] of TPrzystanek;
    end;
    TRozklad = record
    NazwaRozkladu : string[10];
    Linia : array [1..5] of TLinia;
    end;

    Var Rozklad : TRozklad;

    Begin
    Rozklad.NazwaRozkladu:='Warszawa';

    Rozklad.Linia[1].NazwaLinii:='Jednyka';
    Rozklad.Linia[1].RodzajLinii:=Ekspres;
    Rozklad.Linia[2].NazwaLinii:='Dwojka';
    Rozklad.Linia[2].RodzajLinii:=Normalny;

    Rozklad.Linia[1].Przystanek[1].NazwaPrzystanku:='Praga północ';
    Rozklad.Linia[1].Przystanek[1].RodzajPrzystanku:=NaZadanie;

    Rozklad.Linia[1].Przystanek[1].Odjazd[1].KursujeWDni:=Zawsze;
    Rozklad.Linia[1].Przystanek[1].Odjazd[1].Godzina:='15:25';

    End.



    Wiem że ten problem można rozwiązać na wiele innych sposobów,
    ale ten sposób rozumowania wydał mi się bardzo ciekawy
    mimo iż ma on tyle samo zalet co i wad,
    mam nadzieję że podzielisz moje zdanie.

    Pozdrawiam Stefan Pruszkiewicz

    P.S. jeszcze jedno program nic nie wyświetla. Znajdź w menu Pascal-a polecenie
    Debug->Watch i dodaj zmienną Rozkład żeby zobaczyć jej zawartość po uruchomieniu programu.