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

Перевернуть все четные строки матрицы - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.75
ALEKS991
0 / 0 / 0
Регистрация: 30.05.2012
Сообщений: 10
30.05.2012, 21:59     Перевернуть все четные строки матрицы #1
Подскажите пожалуйста как перевернуть все четные строки матрицы. Заранее благодарю.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.05.2012, 21:59     Перевернуть все четные строки матрицы
Посмотрите здесь:

C++ Как выделить четные строки матрицы для изменения?
Перевернуть все нечётные строки матрицы C++
Найти количество простых чисел в массиве. Перевернуть все нечетные строки матрицы. Перевернуть каждое четное слово в строке C++
Определить, что все элементы строки первой матрицы больше соответствующих элементов строки второй матрицы C++
Как перевернуть четные столбцы матрицы? C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Infinity3000
 Аватар для Infinity3000
1057 / 576 / 24
Регистрация: 03.12.2009
Сообщений: 1,255
30.05.2012, 22:17     Перевернуть все четные строки матрицы #2
что значить перевернуть?
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4920 / 2663 / 243
Регистрация: 29.11.2010
Сообщений: 7,411
30.05.2012, 22:24     Перевернуть все четные строки матрицы #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
28
29
30
31
32
33
#include <iostream>
#include <ctime>
 
int main()
{
    const int M = 10, N = 5;
    int matrix[M][N];
    srand( time(0) );
    for (int i=0; i < M; i++)
    {
        for (int j=0; j < N; j++)
        {
            matrix[i][j] = rand() % 10;
            std::cout<< matrix[i][j]<< " ";
        }
        std::cout<< std::endl;
        if (i % 2 == 0)
        for (int j=0; j < N/2; j++)
        {
            int tmp = matrix[i][j];
            matrix[i][j] = matrix[i][N-1-j];
            matrix[i][N-1-j] = tmp;
        }
    }
    std::cout<< std::endl;
    for (int i=0; i < M; i++)
    {
        for (int j=0; j < N; j++)
            std::cout<< matrix[i][j]<< " ";
        std::cout<< std::endl;
    }
    return 0;
}
ALEKS991
0 / 0 / 0
Регистрация: 30.05.2012
Сообщений: 10
30.05.2012, 22:26  [ТС]     Перевернуть все четные строки матрицы #4
Тема: Функции и массивы в С++
Задание: Перевернуть все нечётные строки матрицы
на форуме была такая тема
Тема у меня такая же Тема: Функции и массивы в С++
Вот только в задании Перевернуть все четные строки матрицы
Ternsip
 Аватар для Ternsip
660 / 188 / 6
Регистрация: 10.05.2012
Сообщений: 595
30.05.2012, 22:29     Перевернуть все четные строки матрицы #5
Цитата Сообщение от Infinity3000 Посмотреть сообщение
что значить перевернуть?
Спешл фо ю http://www.cplusplus.com/reference/algorithm/reverse/
instagib
122 / 85 / 3
Регистрация: 14.02.2011
Сообщений: 341
30.05.2012, 22:30     Перевернуть все четные строки матрицы #6
ALEKS991,
C++
1
if( x % 2 == 0) \\ -для четных
C++
1
if(x % 2 == 1) \\ - для нечетных

Не по теме:

трудно изменить 1 цифру?:

Ternsip
 Аватар для Ternsip
660 / 188 / 6
Регистрация: 10.05.2012
Сообщений: 595
30.05.2012, 22:38     Перевернуть все четные строки матрицы #7
Вот решение, только без вывода
(для чётных i%2==0 для нечётныйх i%2!=0)
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <stdio.h>
#include <stdlib.h>
#include <iostream>
#include <vector>
using namespace std;
 
int main(){
    int n,m;
    cin>>n>>m;
    vector <vector <int>> mas(n,vector <int>(m));
    for (int i=0;i<n;i++){
        for (int j=0;j<m;j++)
            cin>>mas[i][j];
        if (i%2==0) reverse(mas[i].begin(),mas[i].end());
    };
    return 0;
};

А вот с выводом

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
#include <stdio.h>
#include <stdlib.h>
#include <iostream>
#include <conio.h>
#include <vector>
using namespace std;
 
int main(){
    int n,m;
    cin>>n>>m;
    vector <vector <int>> mas(n,vector <int>(m));
    for (int i=0;i<n;i++){
        for (int j=0;j<m;j++)
            cin>>mas[i][j];
        if (i%2==0) reverse(mas[i].begin(),mas[i].end());
    };
    for (int i=0;i<n;i++){
        cout<<endl;
        for (int j=0;j<m;j++)
            cout<<mas[i][j]<<" ";
    };
    getch();
    return 0;
};

PS лайк поставьте
ALEKS991
0 / 0 / 0
Регистрация: 30.05.2012
Сообщений: 10
30.05.2012, 22:39  [ТС]     Перевернуть все четные строки матрицы #8
Спасибо огромное.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.05.2012, 22:47     Перевернуть все четные строки матрицы
Еще ссылки по теме:

Перевернуть все нечетные строки матрицы C++
Помогите дописать код: Перевернуть все нечетные строки матрицы C++
C++ Переставить в строке все элементы матрицы из нечетных позиций на четные, а четные на нечетные, по условию

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

Или воспользуйтесь поиском по форуму:
Ternsip
 Аватар для Ternsip
660 / 188 / 6
Регистрация: 10.05.2012
Сообщений: 595
30.05.2012, 22:47     Перевернуть все четные строки матрицы #9
ALEKS991, Лучше бы вы "+1 Спасибо" нажали чем писать Спасибо огр. =))
Yandex
Объявления
30.05.2012, 22:47     Перевернуть все четные строки матрицы
Ответ Создать тему
Опции темы

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