isar
Administrator
Dołączył: 03 Lut 2008
Posty: 28
Przeczytał: 0 tematów
Pomógł: 3 razy Ostrzeżeń: 0/5 Skąd: z plyty cd
|
Wysłany: Wto 19:41, 02 Wrz 2008 Temat postu: Rekordy |
|
|
rekordy, co to takiego? otoz ku zdziwieniu(tych 'tępszych', bo ci normalniejsi pamietaja;P) nie bedziemy bic rekordow guinessa etc.
jezeli chcemy zapisac np 10osob, wraz z ich numerami telefonow, mozemy uzyc 20zmiennych co jest raczej zlym pomyslem, lub
tablicy, ale to tez bedzie klopotliwe, najprostrzym sposobem bedzie rekord
definiuje sie go tak:
Var
nazwa_bazy : record {TU NIE MA SREDNIKA}
zmienne uzywane w bazie;
end;
do poszczególnych elementow bazy odwolujemy sie w ten sposob:
nazwa_bazy.nazwa_zmiennej_uzytej_w_bazie
czyli np
baza.numer:=111222333
no to teraz program:
(zapewne sie 'rozjechal' bo na fora.pl teoretycznie "niepotrzebne" spacje sa usuwane...)
program Baza_Danych;
uses crt;
var
tmp,tmp2: integer;
{BAZA}
BAZA : record
imie : array [1..30] of string ;
nr : array [1..30] of longint ;
end;
{PLIKI}
f :text;
begin
writeln('ilu uczniow chcesz dopisac??');
readln(tmp2);
{$-----------OBSLUGA-BAZY-DANYCH---------------}
{$} for tmp:=1 to tmp2 do {$}
{$} begin {$}
{$} writeln('podaj imie nr: ',tmp); {$}
{$} readln(baza.imie[tmp]); {$}
{$} clrscr; {$}
{$} writeln('podaj nr tel. ucznia: ',tmp); {$}
{$} readln(baza.nr[tmp]); {$}
{$} clrscr {$}
{$} end; {$}
{$---------------------------------------------}
writeln;
writeln(' DANE WPROWADZONE ');
writeln('dane zostana wyprowadzone: ');
{$--------------wypisywanie-zawratosci------------}
{$} for tmp:=1 to tmp2 do {$}
{$} begin {$}
{$} writeln('IMIE: ' ,baza.imie[tmp]); {$}
{$} writeln('NR UCZNIA: ' ,baza.nr[tmp]); {$}
{$} writeln; {$}
{$} end; {$}
{$------------------------------------------------}
{$-------wpisywanie-do-pliku---------}
{$} {$}
{$} assign(f,'BAZA Danych.TXT'); {$}
{$} rewrite(f); {$}
{$} for tmp:=1 to tmp do {$}
{$} begin {$}
{$} writeln(f,baza.imie[tmp]); {$}
{$} writeln(f,baza.nr[tmp]); {$}
{$} end; {$}
{$} close(f); {$}
{$-----------------------------------}
readln;
end.
to teraz po krotce,
czesc zatytulowana "obsluga bazy danych":
wyswietla "podaj imie numer"... po ten numer zebysmy wiedzieli ile juz wprowadzilismy ludzi(przy 20 mozna sie pogubic..)
i zapisuje imie delikwenta do jednej ze zmiennych bazy poprzez readln(baza.imie[tmp])
pozniej to samo z numerem telefonu.
wypisywanie zawartosci:
tutaj wypiszemy wszystkich ludzi ktorych wprowadzilismy wczesniej.
writeln(baza.imie[tmp] < w ramach przypomnienia imie[tmp] jest to odnosnik do tablicy imie, i do elementu tablicy numer [tmp].
i na koncu writeln; robiacy 1linie odstepu pomiedzy ludzmi.
i ostatnia czesc "wpisywanie do pliku"
nic prostrzego, skojarzamy BAZA danych.txt ze zmienna F(assign)
otwieramy plik(rewrite)
pozniej petla(tego tlumaczyc chyba nie musze..)
i zapisywanie calej bazy do pliku.
zamkniecie pliku(close<tez tlumaczyc nie musze bo bylo w "poscie pliki")
wszystko jest ladnie poustawiane i otoczone ramka dla lepszego rozeznania w programie(przy dluzszychb programach to raczej nie ma sensu lepiej robic wciecia.)
a normalnie w pascalu wyglada to tak:
przyokazji jako ciekawostke zobaczcie jakosc kolorow na zdjeciu zapisanym w formacie jpg. a u was na monitorze... jaki "syf"(wybaczcie za wyrazenie) to jpg;P
[link widoczny dla zalogowanych]
Post został pochwalony 0 razy
|
|