Pascal. Vector
Добавлено: 03 фев 2011, 23:43
Задача такая - даны три вектора. Создать новый вектор в который занести все ненулевые координаты трех исходных векторов, причем в таком порядке: вектор с наибольшим кол-вом нулевых элементов -> со средним кол-вом -> с наименьшим.
Вот что сделал я:
Немогу что-то разобраться, в некоторых случаях работает нормально - в некоторых вообще что-то не то...Помогите плз. Заранее благодарю.
Вот что сделал я:
Код: Выделить всё
program _1;
uses crt;
const n=3;
var v:array[1..n] of array[1..n] of real;
ct,i,j,s,k:integer;
kol:array[1..n] of integer;
a:array[1..9] of real;
begin
kol[1]:=1;kol[2]:=1;kol[3]:=1;
writeln('BBeguTe BeKToPa:');
for i:=1 to n do for j:=1 to n do read(v[i][j]);
for i:=1 to n do for j:=1 to n do
if v[i][j]=0 then kol[i]:=kol[i]+1;
ct:=1;
for i:=1 to n do
for j:=1 to n do
if v[kol[n-i+1]][j]<>0 then begin a[ct]:=v[kol[n-i+1]][j]; ct:=ct+1; end;
writeln('KoJI-Bo "0":',(kol[1]+kol[2]+kol[3])-3:0);
writeln('HoBblu BeKTop:');
for i:=1 to ct-1 do write(a[i]:0:0,' ');
end.