Форум программистов, компьютерный форум CyberForum.ru

Дана матрица N*M. Все положительные элементы в верхнюю левую область, а неположительные – в нижнюю - C++

Восстановить пароль Регистрация
 
denstr
3 / 3 / 0
Регистрация: 21.11.2011
Сообщений: 143
21.12.2012, 16:33     Дана матрица N*M. Все положительные элементы в верхнюю левую область, а неположительные – в нижнюю #1
В заданной матрице A размером N*M разместить все положительные элементы в верхнюю левую область матрицы (заполняя ими матрицу по строкам слева направо), а неположительные – в нижнюю правую область
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.12.2012, 16:33     Дана матрица N*M. Все положительные элементы в верхнюю левую область, а неположительные – в нижнюю
Посмотрите здесь:

Дана квадратная матрица, все элементы которой различны C++
C++ Дана матрица размера 5 x 10. Удалить первый (последний, все) столбцы, содержащие только положительные элементы.
C++ Дана матрица A(3,3). Заменить на главной диагонали все отрицательные элементы их абсолютными значениями.
C++ дана целочисленная матрица A , размером а х м, найти в матрице первую строку, все элементы которой равны нолю, Умножить элементы столбца с таким же н
C++ 7. Дана матрица размера M × N (M — четное число). Поменять местами верхнюю и нижнюю половины матрицы.
Двумерная матрица. Разместить сначала положительные элементы, а за ними - все остальные C++
Поменять местами левую верхнюю и правую нижнюю четверти матрицы - С и C++ C++
C++ Дана целочисленная матрица порядка N. Найти номера строк: все элементы в которых нули; элементы в каждой и

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
mr_free
 Аватар для mr_free
69 / 3 / 0
Регистрация: 08.08.2012
Сообщений: 223
Записей в блоге: 1
21.12.2012, 16:45     Дана матрица N*M. Все положительные элементы в верхнюю левую область, а неположительные – в нижнюю #2
Я не много не понял, сути вопроса!
Например, матрица n на m:
+4 -2 +1 +2
-3 +3 +2 +1
И что должно получиться?
Я так понял что выйдет :
+4 +1 +2 +3
+2 +1 -2 -3
Так?
Kuzia domovenok
 Аватар для Kuzia domovenok
1882 / 1737 / 116
Регистрация: 25.03.2012
Сообщений: 5,907
Записей в блоге: 1
21.12.2012, 17:12     Дана матрица N*M. Все положительные элементы в верхнюю левую область, а неположительные – в нижнюю #3
C++
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
int i, j, i1, j1;
int run=1;
int search;
i=j=0;
i1=M-1;
j1=N-1;
while(run){
  search=run;
  for(i; i<M&&/*amp;amp;*/search; i++)
    for(j=(j==N)?0:j; j<N&&/*amp;amp;*/search; j++)
      {
      run=((i!=i1)&&(j!=j1));
      search=run&&(a[i][j]>=0);
      }
  search=run;
  for(i1; i1>=0&&/*amp;amp;*/search; i1--)
    for(j1=(j1==-1)?N-1:j1; j1>=0&&/*amp;amp;*/search; j1--)
      {
      run=((i!=i1)&&(j!=j1));
      search=run&&(a[i1][j1]<=0);
      }
  if(search){
         a[i1][j1] ^= a[i][j];
          a[i][j] ^= a[i1][j1];
          a[i1][j1] ^= a[i][j];
  }
}
Да ёлки-палки! Слова amp; не убрать из текста!

Добавлено через 7 минут
правка: строка 22:
C++
1
if(!search){
Yandex
Объявления
21.12.2012, 17:12     Дана матрица N*M. Все положительные элементы в верхнюю левую область, а неположительные – в нижнюю
Ответ Создать тему
Опции темы

Текущее время: 20:40. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru