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

Циклический сдвиг матрицы - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Данная матрицы сложения со слов порядка n * n. http://www.cyberforum.ru/cpp-beginners/thread577133.html
Помогите решить срочно..Пожалуйста. Данная матрицы сложения со слов порядка n * n. Слова разделяются пробелами. Определить и вывести на экраны слова побочной диагонали.
C++ Разделить введенную строку пополам и соединять в обратном порядке помогите пожалуйста написать программу! программа должна разделять введенную строку пополам и соединять в обратном порядке!если слово нечетное то оставить букву в середине без изменений! http://www.cyberforum.ru/cpp-beginners/thread577125.html
C++ Массив Задача
День добрый!! Помогите с задачей. Дан массив размера N. Найти номера двух ближайших по значению элементов из этого массива (то есть элементов с наименьшим модулем разности) и вывести эти номера в порядке возрастания. Заранее спасибо!!
C++ Нужна помощь по блок схемах!
К этой програме мне нужна блок схема, помогите пожалуйста. class parampampam { private: #define DEFAULT_SIZE ( 5 ) int **matrix; int *array; size_t size; size_t index_array;
C++ Одномерные,двумерные массивы на языке С\С+ http://www.cyberforum.ru/cpp-beginners/thread577092.html
огромная просьба,извините заранее за назойливость только начала изучать с+,очень нужен для работы.тут встала проблема две задачи на массивы.не могли бы мне помочь с решением их и составлением блок-схем для них а дальше ухвачу. 1 задача.В произвольном одномерном массиве, содержащий числовые значения, определить местоположение элементов массива равными значению максимального элемента. 2 задача.В...
C++ Функция Polyline Подскажите использрвание этой функции! подробнее

Показать сообщение отдельно
Buckstabue
 Аватар для Buckstabue
175 / 124 / 6
Регистрация: 12.01.2012
Сообщений: 624
18.05.2012, 17:45     Циклический сдвиг матрицы
Блин, вы меня вечно разоблачаете. С указательной арифметикой выйдет всё тоже не так просто, он вроде оказывается не совсем беспрерывный, лучше через индексы, по старой доброй формуле
main.cpp

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
28
29
30
31
32
#include <iostream>
 
 
int main()
{
   const int rows = 3;
   const int columns = 3;
   int counter = 1;
   int **arr = 0;
 
   arr = new int*[ rows ];
   for ( int i = 0; i < rows; ++i )
   {
      arr[i] = new int[ columns ];
      for ( int j = 0; j < columns; ++j )
      {
         arr[i][j] = counter;
         counter++;
         std::cout << arr[i][j] << ' ';
      }
   }
   std::cout << std::endl;
   std::cout << "-------------" << std::endl;
 
   for ( int i = 0; i < rows * columns; ++i )
   {
      std::cout << arr[ i / columns ][ i % columns ] << ' ';
   }
   std::cout << std::endl;
 
   return 0;
}

Но вот копировать всю всю матрицу в отдельные временный массив не обязательно, достаточно создать массив последних ( MATRIX_SIZE - shiftValue ) элементов, а далее применить тот "мой" алгоритм, а затем скоировать данные из временного массива в начало измененной матрицы. А лучше меня не слушать вообще, а просто тупо скопипастить первый попавшийся алгоритм с гугла а то меня несёт
 
Текущее время: 07:17. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru