Pascal
1. Дана матрица A(n*m) целых чисел. Получить два новых вектора логических значений B(n) и C(m) . Положить Bi равным истина, если в i-ой строке матрицы есть положительные элементы, и ложь, если нет. Аналогично, элемент вектора Ci должен показывать наличие в соответствующем столбце отрицательных элементов.
[*разнотипные задачи удалены*]
Обработка массива
Код: Выделить всё
for i:=1 to n do
for j:= 1 to m do
begin
if A[i,j]>0 then B[i]:=true;
if A[i,j]<0 then C[j]:=true;
end;
Luke! Use the Force! Use the Force... oh, Luke! Stop using the Force, use your head!
- Naeel Maqsudov
- Сообщения: 2570
- Зарегистрирован: 20 фев 2004, 19:17
- Откуда: Moscow, Russia
- Контактная информация:
Так это на паскале и есть. См. правила раздела "Решите мне задачу", так об это м есть комментарий.
Код: Выделить всё
program task01;
uses WinCRT;
const M = 3;
N= 4;
var
Mi: integer;
B:array[1..N] of boolean;
C:array[1..M] of boolean;
i,j,v:integer;
Begin
for j:=1 to M do C[j]:=false;
for i:=1 to N do
begin
B[i] := false;
for j:=1 to M do
begin
write('Enter value at ',i,',',j,':');read(Mi);
if Mi>0 then B[i]:=true;
if Mi<0 then C[j]:=true;
end;
end;
writeln('Vector B:');
for i:=1 to N do write(B[i],' ');
writeln;
writeln; writeln('Vector C:');
for j:=1 to M do write(C[j],' ');
writeln;
- Naeel Maqsudov
- Сообщения: 2570
- Зарегистрирован: 20 фев 2004, 19:17
- Откуда: Moscow, Russia
- Контактная информация:
хорошо, только где же массив А, который по условию тоже "дан"? 

Код: Выделить всё
program task01;
uses WinCRT;
const
M=3;N=4;
var
A:array[1..N,1..M] of integer;
B:array[1..N] of boolean;
C:array[1..M] of boolean;
i,j:integer;
Begin
{инициализация трех массивов и контрольный вывод массива A}
for i:=1 to N do for j:=1 to M do begin
write('Enter value at ',i,',',j,':');
read(A[i,j]);
end;
for i:=1 to N do begin
for j:=1 to M do write(A[i,j]:10);
writeln;
B[i]:=false;
end;
for j:=1 to M do C[j]:=false;
{теперь вычисления}
for i:=1 to N do for j:=1 to M do begin
if A[i,j]>=0 then B[i]:=true;
if A[i,j]<0 then C[j]:=true;
end;
{вывод результата}
writeln('Vector B:');
for i:=1 to N do write(B[i],' ');
writeln;
writeln; writeln('Vector C:');
for j:=1 to M do write(C[j],' ');
writeln;
end.

ой... Спасибо))) (кстати кнопочки спасибо не вижу нигде???? )