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

В двухмерном массиве целых чисел поменять местами строки, симметричные относительно середины массива - C++

Восстановить пароль Регистрация
 
Petelin STepan
0 / 0 / 0
Регистрация: 17.01.2012
Сообщений: 19
12.12.2012, 11:21     В двухмерном массиве целых чисел поменять местами строки, симметричные относительно середины массива #1
В двухмерном массиве целых чисел поменять местами строки, симметричные относительно середины массива (горизонтальной линии)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.12.2012, 11:21     В двухмерном массиве целых чисел поменять местами строки, симметричные относительно середины массива
Посмотрите здесь:

C++ В массиве целых чисел поменять местами минимальный и максимальный элементы
C++ )В массиве из 6 целых чисел найти наибольший элемент и поменять его местами с первым элементом массива
C++ Симметрично поменять местами все столбцы чисел относительно среднего столбца матрицы
В двумерном массиве поменять местами столбцы, симметричные относительно середины массива C++
Найти в двухмерном массиве максимум и минимум, и поменять их местами C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Пaтрик
 Аватар для Пaтрик
394 / 387 / 38
Регистрация: 21.01.2012
Сообщений: 972
Завершенные тесты: 1
12.12.2012, 11:43     В двухмерном массиве целых чисел поменять местами строки, симметричные относительно середины массива #2
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
33
34
35
36
37
38
39
#include <iostream>
#include <iomanip>
#include <algorithm>
 
template < typename T, size_t rows, size_t columns >
void dump(T (&matrix)[rows][columns], std::streamsize size = 4, const char *line_delimiter = "\n")
{
    for (size_t i = 0; i < rows; i++)
    {
        for (size_t j = 0; j < columns; j++)
            std::cout << std::setw(size) << matrix[i][j];
        std::cout << line_delimiter;
    }
}
 
template < typename T, size_t rows, size_t columns >
void mirror(T (&matrix)[rows][columns])
{
    for (size_t i = 0; i < rows >> 1; i++)
        for (size_t j = 0; j < columns; j++)
            std::swap<T>(matrix[i][j], matrix[rows - i - 1][j]);
}
 
int main()
{
    int matrix[5][3] = 
    {
        { 1, 2, 3 },
        { 4, 5, 6 },
        { 7, 8, 9 },
        { 10, 11, 12 },
        { 13, 14, 15 }
    };
    dump<int>(matrix);
    mirror<int>(matrix);
    std::cout << "-------------\n";
    dump<int>(matrix);
    return 0;
}
Petelin STepan
0 / 0 / 0
Регистрация: 17.01.2012
Сообщений: 19
12.12.2012, 11:44  [ТС]     В двухмерном массиве целых чисел поменять местами строки, симметричные относительно середины массива #3
Спасибо большое....А на C# сможешь написать?
Пaтрик
 Аватар для Пaтрик
394 / 387 / 38
Регистрация: 21.01.2012
Сообщений: 972
Завершенные тесты: 1
12.12.2012, 11:44     В двухмерном массиве целых чисел поменять местами строки, симметричные относительно середины массива #4
Смогу
Petelin STepan
0 / 0 / 0
Регистрация: 17.01.2012
Сообщений: 19
12.12.2012, 11:45  [ТС]     В двухмерном массиве целых чисел поменять местами строки, симметричные относительно середины массива #5
Напиши пожалуйста
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
12.12.2012, 12:10     В двухмерном массиве целых чисел поменять местами строки, симметричные относительно середины массива #6
Petelin STepan, Первое - одна тема - одна задача.
Второе - для C# есть раздел C#. Вам нужно и в C# и в C++ или только в C#?
Yandex
Объявления
12.12.2012, 12:10     В двухмерном массиве целых чисел поменять местами строки, симметричные относительно середины массива
Ответ Создать тему
Опции темы

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