Witam. Jak zrobic macierz dynamiczną ktorej rozmiary podaje uzytkownik i w ktorej narożne wierzcholki jesli są parzyste to są zapamietywane i na koncu podana jest jest ich liczba, czyli jesli są dwie liczby parzyste to wynik jest 2. Jesli nie ma to <ort>po prostu</ort> komunikat ze ich nie ma. Pozdrawiam.
Zastosuj zwykłą tablicę dynamiczną (array of cośtam) i elementy na rogach to (dla tablicy 2D) 1 : [0,0], 2 : [0, Lenght(tablica) - 1], 3 : [Lenght(tablica) - 1,0], 4: [Lenght(tablica) - 1, Lenght(tablica) - 1] :P
type
tablica = array of array of integer;
var
tab: tablica;
lw: integer;
i,j,n,m: integer;
begin
lw:=0;
Write('Ile kolumn n?: ');
ReadLn(n);
Write('Ile rzedow n?: ');
ReadLn(m);
SetLength(tab,m,n);
for i:=0 to m-1 do
begin
for j:=0 to n-1 do
begin
Tab[i,j]:=random(99);
Write(Tab[i,j]:3);
end;
WriteLn;
end;
if tab[0,0] mod 2 = 0 then lw:=lw+1;
if tab[0,n-1] mod 2 = 0 then lw:=lw+1;
if tab[n-1,0] mod 2 = 0 then lw:=lw+1;
if tab[n-1,n-1] mod 2 = 0 then lw:=lw+1;
writeln('liczba wierzcholkow o parzystych danych to:',lw);
Readln;
end.
a ja mam takie pytanie: czy mozliwe jest stworzenie macierzy w wyzej zapisany sposob przy pomocy procedury, a nastepnie jej wypisanie przy pomocy innej?
scrider napisał(a)
czy mozliwe jest stworzenie macierzy w wyzej zapisany sposob przy pomocy procedury, a nastepnie jej wypisanie przy pomocy innej?
- zastosuj macierz globalną
- macierz możesz przekazać do procedur/-y jako parametr
jack napisał(a)
scrider napisał(a)
czy mozliwe jest stworzenie macierzy w wyzej zapisany sposob przy pomocy procedury, a nastepnie jej wypisanie przy pomocy innej?
- zastosuj macierz globalną
- macierz możesz przekazać do procedur/-y jako parametr
tak, wiem, tylko cos mi to nie idzie; wkleje kod, powiedzcie gdzi sie myle:
type
tablica = array of array of integer;
procedure tworzA(var A:tablica; m,n:integer);
var
tab: tablica;
i,j: integer;
begin
SetLength(tab,m,n);
for i:=0 to m-1 do
begin
for j:=0 to n-1 do
begin
writeln('Podaj liczbe: ');
read(Tab[i,j]);
end;
WriteLn;
end;
for i:=0 to m-1 do
begin
for j:=0 to n-1 do
begin
write(Tab[i,j],' ');
end;
WriteLn;
end;
end;
begin
writeln('Podaj ilosc wierszy pierwszej macierzy: ');
read(m);
writeln('Podaj ilosc kolumn pierwszej macierzy:');
read(n);
tworzA(A,n,m);
tzn. tu juz wypisuje jak widac od razu po wczytaniu, ja bym chcial dac uzytkownikowi mozliwosc wyboru, czy ma czy nie ja wypisac; jak powinna przykladowa proceura wygladac?