[Pascal] Baza danych osobowych

aleksandra25
Użytkownik
Użytkownik
Posty: 3
Rejestracja: 29 cze 2016, o 20:12
Płeć: Kobieta
Lokalizacja: Toruń

[Pascal] Baza danych osobowych

Post autor: aleksandra25 »

Napisz program w języku Pascal , który pobiera od użytkownika określoną przez niego liczbę rekordów danych osobowych (typu rekordowego) i umieszcza w pamięci (typ tablicowy). Następnie dane te powinny zostać posortowane wg jakiegoś klucza (np. wiek) i wyświetlić z tablicy całą, już posortowaną, zawartość bazy danych rekordów.
Ostatnio zmieniony 30 cze 2016, o 14:30 przez Afish, łącznie zmieniany 1 raz.
Powód: Staraj się lepiej dobierać nazwy tematów, tak by wskazywały o czym jest treść zadania.
SlotaWoj
Użytkownik
Użytkownik
Posty: 4211
Rejestracja: 25 maja 2012, o 21:33
Płeć: Mężczyzna
Lokalizacja: Kraków PL
Podziękował: 2 razy
Pomógł: 758 razy

[Pascal] Baza danych osobowych

Post autor: SlotaWoj »

A jakąś metodę sortowania zaimplementować potrafi?
aleksandra25
Użytkownik
Użytkownik
Posty: 3
Rejestracja: 29 cze 2016, o 20:12
Płeć: Kobieta
Lokalizacja: Toruń

[Pascal] Baza danych osobowych

Post autor: aleksandra25 »

Tak , np. bąbelkowe .
SlotaWoj
Użytkownik
Użytkownik
Posty: 4211
Rejestracja: 25 maja 2012, o 21:33
Płeć: Mężczyzna
Lokalizacja: Kraków PL
Podziękował: 2 razy
Pomógł: 758 razy

[Pascal] Baza danych osobowych

Post autor: SlotaWoj »

To opracuj odpowiednie typy i zakoduj procedurę:

Procedure SortujBaze ( var Baza : TypBazowy; LiczbaElementów : integer );

a później zadeklaruj zmienne globalne i napisz blok programu z wejściem, wywołaniem ww. procedury i wyjściem.

Edit: Drobne poprawki.
Ostatnio zmieniony 1 lip 2016, o 00:25 przez SlotaWoj, łącznie zmieniany 1 raz.
aleksandra25
Użytkownik
Użytkownik
Posty: 3
Rejestracja: 29 cze 2016, o 20:12
Płeć: Kobieta
Lokalizacja: Toruń

[Pascal] Baza danych osobowych

Post autor: aleksandra25 »

Może jakiś kod czy coś , bo nie zrozumiałam .
SlotaWoj
Użytkownik
Użytkownik
Posty: 4211
Rejestracja: 25 maja 2012, o 21:33
Płeć: Mężczyzna
Lokalizacja: Kraków PL
Podziękował: 2 razy
Pomógł: 758 razy

[Pascal] Baza danych osobowych

Post autor: SlotaWoj »

A ruszyć głową to nie łaska?
Jeszcze raz przeczytaj mój post, bo wprowadziłem drobne poprawki.

Szkielet programu może być taki:

Kod: Zaznacz cały

Program  SortowanieBazy;

  type
     ...  { deklaracje typów, a w tym: }
     TypBazowy = array [1..100] of ... { itd. }

  var
     LiczbaRekordow : integer
     Baza           : TypBazowy;

  Procedure  WpowadzBaze ( var B : TypBazowy; LR : integer );
       ...
    end;  { WpowadzBaze }

  Procedure  WypiszBaze ( var B : TypBazowy; LR : integer );
       ...
    end;  { WypiszBaze }

  Procedure  SortujBaze ( var B : TypBazowy; LR : integer );
       ...
    end  { SortujBaze }

    begin  { SortowanieBazy }

      Write ('Liczba rekordów = ');  Realdn (LiczbaRekordow);
      WprowadzBaze (Baza,LiczbaRekordow);
      SortujBaze   (Baza,LiczbaRekordow);
      WypiszBaze   (Baza,LiczbaRekordow);

    end.  { SortowanieBazy }
W ostatniej chwili zmieniłem nazewnictwo parametrów w nagłówkach procedur (na B i LP), bo są one lokalne wewnątrz procedur i ich identyczne nazwy ze zmiennymi globalnymi może być mylące.

Oczywiście ww. program będzie bardzo niedoskonały, bo np. nie przewiduje wg którego klucza rekordu ma być realizowane sortowanie ani jaki ma być jego porządek (będzie to „zaszyte” w programie na stałe), ale jako program sprawdzający kwalifikacje po uproszczonym kursie programowania „może być”.
ODPOWIEDZ