Baza danych samochodów z użyciem wskaźników - kilka pytań

0

Witam,mam za zadanie napisać bazę danych samochodów,jednak odpadłem w przedbiegach.Potrzebuje zrozumieć jak powiązać bazę,która będzie operować na a)wskaźnikach ,b)tablicy dynamicznej ,c)rekordach.
Niestety w szkole raczą nam pokazać pare przykładów na krzyż a wymagają zadań którym nie mogę sprostać sam,czy ktoś byłby mi w stanie pomóc,logicznie wytłumaczyć jak to napisać?na razie doszedłem tylko do takiego czegoś po czym wysiwtla mi się błąd "variable identifier ecpected" i zupełnie nie rozumiem co się dzieje.

program samochody;

type
   Tsamochod = record
      marka, model :string;
      rok:integer;

   end;
Wsamochod=^Tsamochod;


var
  tab:array of Tsamochod;
  i:integer;


begin

i:=0;
wsamochod:=@tab[i];

end.
0

Tutaj jest błąd:

wsamochod:=@tab[i];

wsamochod to typ danych, a Ty próbujesz przypisać wartość (tu: adres komórki macierzy) do typu danych, zamiast do zmiennej; Identyfikator wsamochod znajduje się w sekcji Type, więc określa typ danych; Gdyby był w sekcji Var, to oznaczałby identyfikator zmiennej; Poza tym nie możesz korzystać z komórek macierzy dynamicznej, jeśli nie nadałeś jej rozmiaru;

Najpierw skup się na podstawach, czyli na prawidłowym zadeklarowaniu typów danych, którymi będziesz się posługiwać; Nie używaj języka polskiego w kodzie, bo to wygląda paskudnie; Poza tym pisz kod zgodnie z przyjętą konwencją nazewnictwa - typy danych poptrzedzamy literką T, a wskaźniki P;

Moja propozycja:

type
  // rekord z danymi samochodu
  TCar = record
    Brand: String;
	Model: String;
	Year: Integer;
  end;
  
type
  // wskaźnik na rekord z danymi samochodu
  PCar = ^TCar;
  
type
  // dynamiczna macierz rekordów z danymi samochodu
  TCars = array of TCar;
0

Zrozumiałem swój błąd dziękuje za to.Co do zadania to oddać je musze na za 3 dni,inaczej moge nie przychodzić na zajęcia,więc podstaw raczej nie powtórze;) a konwencja w mojej szkole zakłada pisanie po polsku właśnie,i zdaje sobie z tego sprawę,że to źle bo uczyłem się już wcześniej programować w czym innym

0

Co do zadania to oddać je musze na za 3 dni,inaczej moge nie przychodzić na zajęcia,więc podstaw raczej nie powtórze;) [...]

Bez znajomości podstaw nie napiszesz tego programu;

[...] a konwencja w mojej szkole zakłada pisanie po polsku właśnie,i zdaje sobie z tego sprawę,że to źle bo uczyłem się już wcześniej programować w czym innym

Głowy Ci nikt nie urwie za pisanie kodu w odpowiedni i zrozumiały dla wszystkich sposób; Tym bardziej, że nauczyciel powinien wiedzieć co znaczy słowo car i inne, wchodzące w skład składni języka.

1 użytkowników online, w tym zalogowanych: 0, gości: 1