[Pascal] Tablica jednowymiarowa- suma elementów

andzia42
Użytkownik
Użytkownik
Posty: 33
Rejestracja: 6 wrz 2007, o 18:05
Płeć: Kobieta
Lokalizacja: Kraków
Podziękował: 1 raz

[Pascal] Tablica jednowymiarowa- suma elementów

Post autor: andzia42 »

Witam! Chcę napisać program, który pobierze od użytkownika elementy tabeli, a następnie je zsumuje. Tutaj robię na tablicy czteroelementowej, żeby teoretycznie było łatwiej. Dopóki była jedna procedura- działało. Po dodaniu drugiej- nie działa. Gdzie jest mój błąd, na czym polega?

Kod: Zaznacz cały

program tablicowy;
uses crt;
type a=array[1..4] of integer;
var d:a;
su:integer;

procedure pierwsza (var b:a);
var i:integer;
begin i:=1; for i:=1 to 4 do begin
writeln ('Podaj element o indeksie 1.',i);
readln (b[i]);    end;
for i:=1 to 4 do begin  write (b[i]);
write;  end;
end;
procedure suma (var s:integer);
var i:integer; b:a;
begin i:=1; s:=0;
for i:=1 to 4 do s:=s+b[i];
writeln (s); end;



begin clrscr;
pierwsza(d);
suma(su);
readkey;
end.
Afish
Moderator
Moderator
Posty: 2828
Rejestracja: 15 cze 2008, o 15:45
Płeć: Mężczyzna
Lokalizacja: Seattle, WA
Podziękował: 3 razy
Pomógł: 356 razy

[Pascal] Tablica jednowymiarowa- suma elementów

Post autor: Afish »

W procedurze suma tworzysz lokalną tablicę, więc nie masz tam danych, które wczytałaś.
andzia42
Użytkownik
Użytkownik
Posty: 33
Rejestracja: 6 wrz 2007, o 18:05
Płeć: Kobieta
Lokalizacja: Kraków
Podziękował: 1 raz

[Pascal] Tablica jednowymiarowa- suma elementów

Post autor: andzia42 »

Dobrze, w takim razie co rozwiąże ten problem? Jak widać z tablicami dopiero zaczynam, jest mi dość trudno.. A w zasadzie
Afish
Moderator
Moderator
Posty: 2828
Rejestracja: 15 cze 2008, o 15:45
Płeć: Mężczyzna
Lokalizacja: Seattle, WA
Podziękował: 3 razy
Pomógł: 356 razy

[Pascal] Tablica jednowymiarowa- suma elementów

Post autor: Afish »

Przyjmować tablicę jako parametr, a następnie przekazać ją z głównej funkcji programu, ewentualnie pracować na tablicy globalnej.
ODPOWIEDZ