Форум программистов, компьютерный форум, киберфорум
Наши страницы
Pascal ABC
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
Роомио
0 / 0 / 0
Регистрация: 11.12.2011
Сообщений: 22
1

Образовать массив B (N, M) путем деления элементов массива A (N, M) на сумму его положительных элементов

12.12.2011, 01:44. Просмотров 835. Ответов 5
Метки нет (Все метки)

помогите пожалуйста...
Дан двумерный массив A(N,M). образовать массив B(N,M) путем деления элементов массива A(N,M) на сумму его положительных элементов. В новом массиве B(N,M) найти минимальные элементы по столбцам, образовав одномерный массив C(M).
только будет маленькая просьба, я еще много операторов не знаю, так что посмотрите пример задачки.


Дан массив B(N,M). Нужно умножить все отрицательные элементы на MAX.
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
PROGRAM P1;
VAR N, M, i, j: INTEGER;
MAX: REAL; B: ARRAY [1..50,1..50] OF REAL;
BEGIN
WRITE ('ВВЕСТИ N, M');
READ(N, M);
WRITE ('ВВЕСТИ МАССИВ');
FOR i:=1 TO M DO
READ(B[i,j]);
MAX:=B[1,1];
FOR i:=1 TO N DO
FOR j:=1 TO M DO
IF B[i,j]>MAX THEN MAX:=B[i,j];
FOR i:=1 TO N DO
fOR j:=1 TO M DO
IF B[i,j]<0 THEN B[i,j]:=B[i,j]*MAX;
WRITELN ('MAX=', MAX);
FOR i:=1 TO N DO
FOR j:=1 TO N DO
WRITELN ('B[',i,j,']=', B[i,j]);
END.
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.12.2011, 01:44
Ответы с готовыми решениями:

Образовать новый массив Q(N) путем умножения элементов массива P(N) на число
ребята помогите пожалуйста с массивом! Горю!! Даны массивы P(N) и R(N)....

Массивы. Образовать новый массив путем умножения элементов массива А на минимальный элемент массива B
Даны массивы A(N) и B(N). Образовать новый массив C(N) путем умножения...

Получить новый массив путем деления всех элементов массива на наибольший по модулю элемент
Дан двумерный массив. Получить новый массив путем деления всех элементов...

Образовать массив B, состоящий из положительных элементов заданного массива
люди помогите пожалуйсто! 1. Образуйте массив B, состоящий из положительных...

Задан массив. Получить из него новый массив путем деления элементов каждой из строк первого массива на элемент этой строки
Задан массив А. Получить из него новый массив путем деления элементов каждой из...

5
Shkap
Оранжевый портфель.
60 / 58 / 47
Регистрация: 13.11.2010
Сообщений: 459
12.12.2011, 02:34 2
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

вот первая
сделана вроде правильно но наврядли рациоально
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
const n=3; m =3;
var a: array [1..n,1..m] of real; i,j:integer; s:real; b: array [1..n,1..m] of real; c: array [1..m] of real;
begin
cls;
for i:=1 to n do
for j:=1 to m do
begin;
cls;
write ('a(',i,',',j,')=');
read (a[i,j]);
end;
s:=0;
for i:=1 to n do
for j:=1 to m do s:=s+a[i,j];
for i:=1 to n do
for j:=1 to m do b[i,j]:=a[i,j]/s;
cls;
writeln ('ГЊГ*Г±Г±ГЁГў a');
for i:=1 to n do
begin;
for j:=1 to m do
begin;
write (a[i,j]:6:2);
end;
writeln;
end;
writeln ('ГЊГ*Г±Г±ГЁГў b');
for i:=1 to n do
begin;
for j:=1 to m do
begin;
write (b[i,j]:6:3);
end;
writeln;
end;
writeln ('ГЊГ*Г±Г±ГЁГў c');
for j:=1 to m do
begin;
c[j]:=b[1,j];
for i:=1 to n do
begin;
if c[j]>b[i,j] then c[j]:=b[i,j]
end;
write (c[j]:4:2, ' ');
end;
end.
вторая - описание аналогично с первой
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
const n=3; m =3;
var a: array [1..n,1..m] of real; i,j:integer; max:real;
begin
cls;
for i:=1 to n do
for j:=1 to m do
begin;
cls;
write ('a(',i,',',j,')=');
read (a[i,j]);
end;
max:=a[1,1];
for i:=1 to n do
for j:=1 to m do
begin;
if max<a[i,j] then max:=a[i,j]
end;
for i:=1 to n do
for j:=1 to m do
begin;
if a[i,j]<0 then a[i,j]:=a[i,j]*max
write (a[i,j]:6:3, ' ');
end;
end.
1
Роомио
0 / 0 / 0
Регистрация: 11.12.2011
Сообщений: 22
12.12.2011, 02:51  [ТС] 3
ммм.... я не знаю некоторых операторов еще... проще никак нельзя, по типу того как я решил вторую
0
Shkap
Оранжевый портфель.
60 / 58 / 47
Регистрация: 13.11.2010
Сообщений: 459
12.12.2011, 03:13 4
из всех использованных мной операторов у тебя не использовалось лишь const - раз
если ввести n или m больше 50 в твоей проге выдаст ошибку
1
Роомио
0 / 0 / 0
Регистрация: 11.12.2011
Сообщений: 22
12.12.2011, 03:29  [ТС] 5
а почему const n=3; m =3; именно 3? и что такое cls?
0
Shkap
Оранжевый портфель.
60 / 58 / 47
Регистрация: 13.11.2010
Сообщений: 459
12.12.2011, 03:36 6
cls - чистит экран
3 и 3 чтобы много не вводить данных в матрицу при проверке
можешь их изменить на любые другие а так как они описаны в начале то матрицу легко поменять небольшими изменениями
1
12.12.2011, 03:36
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.12.2011, 03:36

Получить новый массив путем деления всех элементов массива на наименьший по модулю элемент
Дан двумерный массив. Получить новый массив путем деления всех элементов...

Получить новый массив путем деления всех элементов массива на наибольший по модулю элемент
Дан двумерный массив. Получить новый массив путем деления всех элементов...

Преобразовать матрицу В путем умножения ее элементов на сумму положительных элементов
Дан массив В(N,M) (N£10; M£15). Преобразовать матрицу В путем умножения ее...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru