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

Заменить максимальный элемент каждой строки матрицы на противоположный

25.09.2016, 16:14. Просмотров 907. Ответов 1
Метки нет (Все метки)

Дан двумерный массив размером n*m, заполненный случайным образом.
1. Заменить максимальный элемент каждой строки на противоположный.
2. Вставить после всех столбцов, содержащий максимальный элемент столбцов из нулей.
3. Удалить все столбцы, в которых есть отрицательный элемент.
4. Поменять местами первый и последний столбцы.
все в одной программе нужно
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.09.2016, 16:14
Ответы с готовыми решениями:

Заменить максимальный элемент каждой строки матрицы на противоположный
Дан двумерный массив размерностью 5 х 6, заполненный случайным образом. - заменить...

Заменить максимальный элемент каждой строки матрицы на противоположный
1)Заполнить массив размерностью 6х6 по правилу: 1 2 3 4 5 6 2 3 4 5 6 1 3 4 5 6 1 2 4 5 6 1 2 3...

Заменить максимальный элемент каждой строки на противоположный
Дан двумерный массив размером n*m, заполненный случайным образом. 1. Заменить максимальный элемент...

Заменить максимальный элемент каждой строки матрицы нулем
Дан двумерный массив размером n*m, заполненный случайным образом. 1. Заменить максимальный...

Заменить максимальный элемент каждой строки матрицы номером столбца в котором он находится
Дан двумерный массив размером n*m заполненный случайным образом 1.Заменить максимальный элемент...

1
Puporev
Модератор
56636 / 43310 / 29941
Регистрация: 18.05.2008
Сообщений: 103,045
25.09.2016, 17:26 2
Лучший ответ Сообщение было отмечено ZX Spectrum-128 как решение

Решение

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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
const nmax=10;
var a:array[1..nmax,1..2*nmax] of integer;
    m,n,i,j,jmx,k:byte;
    mx,x:integer;
begin
randomize;
repeat
write('Количество строк от 2 до ',nmax,' n=');
readln(n);
until n in [2..nmax];
repeat
write('Количество столбцов от 2 до ',nmax,' m=');
readln(m);
until m in [1..nmax];
writeln('Исходная матрица:');
for i:=1 to n do
 begin
  for j:=1 to m do
   begin
    a[i,j]:=random(20);
    write(a[i,j]:4);
   end;
  writeln;
 end;
{пункт 1}
for i:=1 to n do
 begin
  jmx:=1;
  for j:=1 to m do
  if a[i,j]>a[i,jmx] then jmx:=j;
  a[i,jmx]:=-a[i,jmx];
 end;
writeln('Замена максимальных в строках на противположные');
for i:=1 to n do
 begin
  for j:=1 to m do
  write(a[i,j]:4);
  writeln;
 end;
{пункт 2}
mx:=a[1,1];
for i:=1 to n do
for j:=1 to m do
if a[i,j]>mx then mx:=a[i,j];
writeln('Максимальный элемент матрицы=',mx);
j:=1;
while j<=m do
 begin
  i:=1;
  k:=0;
  while(i<=n)and(k=0) do
  if a[i,j]=mx then k:=1
  else inc(i);
  if k=1 then
   begin
    inc(m);
    if j=m-1 then
    for i:=1 to n do
    a[i,m]:=0
    else
     begin
      for k:=m downto j+2 do
      for i:=1 to n do
      a[i,k]:=a[i,k-1];
      for i:=1 to n do
      a[i,j+1]:=0;
     end;
    inc(j,2);
   end
  else inc(j);
 end;
writeln('Вставка столбцов из 0 за столбцами с максимальным');
for i:=1 to n do
 begin
  for j:=1 to m do
  write(a[i,j]:4);
  writeln;
 end;
{пункт 3}
j:=1;
while j<=m do
 begin
  k:=0;
  i:=1;
  while(i<=n)and(k=0) do
  if a[i,j]<0 then k:=1
  else inc(i);
  if k=1 then
   begin
    if j<m then
     begin
      for k:=j to m-1 do
      for i:=1 to n do
      a[i,k]:=a[i,k+1];
     end;
    dec(m);
   end
  else inc(j);
 end;
writeln('Удаление столбцов с отрицательными элементами');
for i:=1 to n do
 begin
  for j:=1 to m do
  write(a[i,j]:4);
  writeln;
 end;
{пункт 4}
for i:=1 to n do
 begin
  x:=a[i,1];
  a[i,1]:=a[i,m];
  a[i,m]:=x;
 end;
writeln('Обмен первого и последнего столбцов');
for i:=1 to n do
 begin
  for j:=1 to m do
  write(a[i,j]:4);
  writeln;
 end;
end.
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.09.2016, 17:26

Заменить в каждой строке матрицы максимальный элемент на 0.
Дана матрица А(4х4). Заменить в каждой строке матрицы максимальный элемент на 0.

Массивы. Заменить максимальный элемент на противоположный по знаку
Имеется массив А из N произвольных чисел (A(N)), среди которых есть положительные, отрицательные и...

Найти максимальный элемент в каждой строке матрицы и заменить его числом 1.
найти максимальный элемент в каждой строке матрицы и заменить его числом 1.Оформить в виде функции.


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

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

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