Новые сообщения · Правила  
  • Страница 1 из 1
  • 1
Модератор форума: Berestovskiy  
Процедуры
Используя следующий фрагмент программы, из массива А получите массив В, присвоив его k-му элементу значение true, если все элементы k-го столбца массива А нулевые, в противном случае присвойте значение false:
var
A:array[1..20, 1..20] of integer;
B:array[1..20] of boolean;


sLip
1 | Автор: AvoqzT | 2012-04-07, 16:10   |  Репутация: [ + 0 ]
var
a:array[1..20,1..20]of integer;
b:array[1..20]of boolean;
i,j,s:integer;
begin
s:=0;
for i:=1 to 20 do
for j:=1 to 20 do
read(a[j,i]);
for i:=1 to 20 do begin
for j:=1 to 20 do
if a[i,j]=0 then s:=s+1;
if s=20 then b[i]:=true else b[i]:=false;
s:=0;end;
for i:=1 to 20 do
write(b[i],' ');
end.

Вот код без процедуры, в процедуру закинуть сможешь?


Нужна помощь? Сюда: vkontakte.ru/berestovskiy
2 | Автор: Berestovskiy | 2012-04-10, 17:59   |  Репутация: [ + 211 ]
кому интересно эта же задача только с функцией(только здесь взята матрица 3х3 и массив 1..3 ):

const n=3;
type a=array[1..n, 1..n] of integer;
b=array[1..n] of boolean;

var matr:a; mas:b; i,j:integer;

function proverka(a:a; k:integer):boolean;
var i:integer; bol:boolean;
begin
bol:=true;
for i:=1 to n do if a[i,k]<>0 then bol:=false;
proverka:=bol;
end;

begin
writeln('enter elements');
for i:=1 to n do for j:=1 to n do readln(matr[i,j]);
for i:=1 to n do mas[i]:=proverka(matr,i);
for i:=1 to n do write(mas[i]);
readln;
end.


sLip
3 | Автор: AvoqzT | 2012-04-10, 18:58 | Изменено: AvoqzT - Вт, 2012-04-10, 19:03   |  Репутация: [ + 0 ]
Спасибо:)

Нужна помощь? Сюда: vkontakte.ru/berestovskiy
4 | Автор: Berestovskiy | 2012-04-10, 19:35   |  Репутация: [ + 211 ]
  • Страница 1 из 1
  • 1
Поиск: