[TP] Ostatni krok w bazie danych(Funkcja liczy srednia wieku

kamilall234
Użytkownik
Użytkownik
Posty: 26
Rejestracja: 2 lis 2008, o 10:39
Płeć: Mężczyzna
Lokalizacja: dsa
Podziękował: 1 raz

[TP] Ostatni krok w bazie danych(Funkcja liczy srednia wieku

Post autor: kamilall234 »

Witam. Zrobiłem właśnie program z baza danych na informatykę wiadomo zaliczenie, ale z pośród 9 punktów jeden nie mogę kompletnie zrobić. Chodzi o funkcje która liczy średnią wieku osób z mojej bazy danych. Tak pokaże jak się program zaczyna

Kod: Zaznacz cały

program blba;
Type osoba = record
imie:string[20];
.
.
.
wiek:integer;

end;
TYPe plik=file of osoba;
Var o:array[1..30] of osoba;

I moja funkcja wygląda tak:

Kod: Zaznacz cały

Function srednia(Var a:plik):real;
VAR c,i:byte;
s:integer;

begin
assign(wiadomo co tutaj);
reset(a);
while not eof(a) do
read(a,o[i]);
begin

s:=s+ o[i].wiek;

i niestety nie mam pomysłu jak to zrobić. Proszę o pomoc wszelaką. Z góry dzięki. A szkoda mi programu, bo już 8 pkt wypełniłem i to trudnych.
Ostatnio zmieniony 21 mar 2010, o 00:04 przez miki999, łącznie zmieniany 2 razy.
Powód: Dodanie tagów [code]. Poprawa wiadomości.
Xitami

[TP] Ostatni krok w bazie danych(Funkcja liczy srednia wieku

Post autor: Xitami »

znaczy w "s" mamy sumę, sumę "wieków".
Gdyby jeszcze zliczać obroty pętli WHILE, to ho ho...
Średnia to suma przez oną liczbę...
czyli ... łatwe
kamilall234
Użytkownik
Użytkownik
Posty: 26
Rejestracja: 2 lis 2008, o 10:39
Płeć: Mężczyzna
Lokalizacja: dsa
Podziękował: 1 raz

[TP] Ostatni krok w bazie danych(Funkcja liczy srednia wieku

Post autor: kamilall234 »

Jakbyś mnie mógł nakierować to byłbym wdzięczny, albo pokazac i wytlumaczyc bo nie wiem nadal jak
Awatar użytkownika
kadiii
Użytkownik
Użytkownik
Posty: 642
Rejestracja: 20 gru 2005, o 21:04
Płeć: Mężczyzna
Lokalizacja: Wrocław
Pomógł: 130 razy

[TP] Ostatni krok w bazie danych(Funkcja liczy srednia wieku

Post autor: kadiii »

skoro masz w rekordzie pole wiek to jesli zsumujesz wszystkie te pola i podzielisz przez ilość(czyli zmienną sterującą pętli po jej zakończeniu - u ciebie 'i') to otrzymasz średni wiek. Pamiętaj żeby zainicjalizować zmienną sumujacą na początku wartością 0.
ODPOWIEDZ