mam problem z procedurą nowy_wektor, która utworzy wektor B zawierajacy wartosci minimalne dla poszczegolnych wierszy macierzy A.
Oto cały program
program zestaw_2;
{napisz program, ktory dla macierzy A (4x4) liczb rzeczywistych wykona następujące czynnosci:
a) zastąpi elementy glownej przekatnej macierzy wartoscia maksymalna dla kolumny 4,
b) utworzy wektor B zawierajacy wartosci minimalne dla poszczegolnych wierszy macierzy A.
Macierz powinna byćy wypełniona przez uzytkownika (dane podane z klawiatury). Wykorzystaj funkcje/procedury}
{$APPTYPE CONSOLE}
uses
SysUtils;
{tworzenie nowych typów}
type
macierz = array [1..4, 1..4] of real;
wektor = array [1..4] of real;
{zmienne globalne}
var
A,Nowa:macierz;
B:wektor;
{procedury i funkcje}
{procedura wczytująca dane do macierzy}
procedure wczytaj (var X:macierz);
var i,j:integer;
begin
writeln ('Podaj odpowiednie wartosci dla macierzy A');
writeln ('nacisnij ENTER aby rozpocząc');
readln;
for i:=1 to 4 do
for j:=1 to 4 do
begin
write ('A[',i,',',j,']=');
readln (X[i,j]);
end;
end;
{funkcja szukajaca maksymalnej wartosc kolumny 4}
function maks(X:macierz):real;
var i:integer;
z:real;
begin
Z:=X[i,4];
for i:=1 to 4 do
if z< x[i,4] then z:=X[i,4];
maks:=z;
end;
{procedura zamieniająca przekatna macierzy A maksymalna wartoscia kolumny 4}
procedure zamien (X:macierz; var Y:macierz);
var i,j:integer;
maksymalna:real;
begin
maksymalna:=maks(x);
for i:=1 to 4 do
for j:=1 to 4 do
if i=j then Y[i,j]:=maksymalna else
Y[i,j]:=X[i,j];
end;
{procedura tworzaca wektor B z minimalnych wartosc poszczegolnych wierszy macierzy A}
procedure nowy_wektor (X:macierz; var W:wektor);
var i,j:integer;
min:real;
begin
min:=X[1,1];
for i:=1 to 4 do
for j:=1 to 4 do
begin
if min > X[i,j] then min:=X[i,j];
W[i]:=min;
end;
end;
{procedura wyswietlająca macierz}
procedure wyswietl_m (X:macierz);
var i,j:integer;
begin
writeln ('Nowa macierz');
for i:=1 to 4 do
for j:=1 to 4 do
writeln (X[i,j]:5:5);
end;
{procedura wyswietlająca wetkor}
procedure wyswietl_w (w:wektor);
var i:integer;
begin
writeln ('wektor B');
for i:=1 to 4 do
writeln (w[i]:5:5);
end;
begin
{ TODO -oUser -cConsole Main : Insert code here }
wczytaj (A);
zamien(A,Nowa);
nowy_wektor (A,B);
wyswietl_m (Nowa);
wyswietl_w (B);
readln ;
end.