0 / 0 / 0
Регистрация: 15.01.2011
Сообщений: 12
1

Реверс масива по строках.

12.02.2011, 17:23. Показов 633. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Задание: Поменять первую строку с последней, вторую с предпоследней и так далее.

Я делаю вот так:
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
40
41
42
# include <iostream>
#include <ctime>
using namespace std;
int main()
{
    srand(time(NULL));
    const int row=4, col=5, a=-20, b=20;
    double matrix [col][row];
    double res=0;
    int kilkist_0=0;
    cout<<"MATRIX 5x4:"<<endl<<endl;
    for (int i=1; i<=row; i++)
    {
        for (int j=1; j<=col; j++)
        {
            matrix[i][j]=a+rand()%(b-a+1);
            cout<<"["<<i<<"]["<<j<<"]="<<matrix[i][j]<<"\t";
        }
        cout<<endl;
    }
    cout<<endl;
    for (int i=1; i<=row/2; i++)
    {
        for (int j=1; j<=col; j++)
        {
            res=matrix[i][j];
            matrix[i][j]=matrix[row-i+1][j];
            matrix[row-i+1][j]=res;
        }
    }
    cout<<"REVERS MATRIX: \n";
    for (int i=1; i<=row; i++)
    {
        for (int j=1; j<=col; j++)
        {
            cout<<"["<<i<<"]["<<j<<"]="<<matrix[i][j]<<"\t";
        }
        cout<<endl;
    }
    cout<<endl;
    return 0;
}
Что здесь не так!?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.02.2011, 17:23
Ответы с готовыми решениями:

Заполнение масива по формуле и нахождение наименьшего положительного элемента масива
Итак условие задачи: Написать программу для заполнения масива з 20 элементов по формуле...

Найти номер макс. элемента масива и произведение элементов масива между 1-м и 2-м нулевыми элементами
В одномерном масиве,состоящем из н элементов,вычеслить номер макс. масива,и произведение элементов...

Дано масив чисел. Найти количество элементов масива, которые расположены между max и min элементами масива
Помогите, пожалуйста, вычислить количество элементов между максимальным и минимальным элементами....

Найти среднее арифметическое для масива B и среднее геометрическое масива С
Помогите пожалуйста решить задачу: від'ємні елементи масиву А(10) записати в масив В, додатні...

5
Каратель
Эксперт С++
6609 / 4028 / 401
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
12.02.2011, 17:31 2
особо не всматривался но нумерация массивов идет с 0, а у вас с 1 и кажется вы путаете rows и cols
0
0 / 0 / 0
Регистрация: 15.01.2011
Сообщений: 12
12.02.2011, 17:32  [ТС] 3
Maxwe11, Если я ставлю с нуля, то там еще больше ошибок получается...
0
Каратель
Эксперт С++
6609 / 4028 / 401
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
12.02.2011, 17:38 4
C++
1
for (int i = 0; i < row; i++) //   0 <= i < row
Добавлено через 2 минуты
c col аналогично)
0
0 / 0 / 0
Регистрация: 15.01.2011
Сообщений: 12
12.02.2011, 17:40  [ТС] 5
Maxwe11, сделала с нуля...
И вот что получается:
Реверс масива по строках.

И еще выдает вот такую ошибку:
Реверс масива по строках.
0
Каратель
Эксперт С++
6609 / 4028 / 401
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
12.02.2011, 18:01 6
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
40
41
42
43
44
45
46
47
48
//Поменять первую строку с последней, вторую с предпоследней и так далее.
#include <iostream>
#include <ctime>
 
using namespace std;
 
int main()
{
    srand(time(NULL));
    const int row = 4; //строки
    const int col=5; // столбцы
    const int a=-20, b=20;
    double matrix[row][col]; //сначала строки потом столбцы
    double res=0;
    int kilkist_0=0;
    cout<<"MATRIX 4x5:"<<endl<<endl;
    for (int i=0; i<row; i++)
    {
    for (int j=0; j<col; j++)
           {
        matrix[i][j]=a+rand()%(b-a+1);
               cout<<"["<<i<<"]["<<j<<"]="<<matrix[i][j]<<"\t";
           }
           cout<<endl;
     }
     cout<<endl;
     for (int i=0; i<row/2; i++)
     {
    for (int j=0; j<col; j++)
           {
                res=matrix[i][j];
                matrix[i][j]=matrix[row-i-1][j]; //здесь у вас была ошибка в индексах
                matrix[row-i-1][j]=res; // ну и здесь тоже
    }
    }
    cout<<"REVERS MATRIX: \n";
    for (int i=0; i<row; i++)
    {
        for (int j=0; j<col; j++)
        {
            cout<<"["<<i<<"]["<<j<<"]="<<matrix[i][j]<<"\t";
        }
        cout<<endl;
    }
    cout<<endl;
    getchar();
    return 0;
}
2
12.02.2011, 18:01
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.02.2011, 18:01
Помогаю со студенческими работами здесь

Найти наибольшие элементы в чётных строках матрицы, а наименьшие в нечётных строках
Дана матрица n*m. Найти наибольшие элементы в чётных строках, а наименьшие в нечётных строках. ...

Заменить отрицательные элементы в нечетных строках матрицы на нули, а в четных строках - на единицу
Заменить отрицательные элементы в нечетных строках матрицы на нули, а в четных строках - на единицу...

Во сколько раз сумма элементов, стоящих на четных строках, больше, чем на нечетных строках?
Задана целочисленная матрица. Во сколько раз сумма элементов, стоящих на четных строках, больше,...

Вводится десять 99-значных чисел(в нечётных строках) и набор операций(+,-,*) между ними в (чётных строках). res/18?
Добрейшего времени суток, необходима помощь в решении задачи на с++. Сама задача: &quot;Вводится...

Задана целочисленная матрица. Во сколько раз сумма элементов, стоящих на четных строках, больше, чем на нечетных строках.
Помогите с решением такой вот задачки: Задана целочисленная матрица. Во сколько раз сумма...

Дан целый массив максимальной размерности 20*20. Провести сортировку по возрастанию в нечетных строках массива и по убыванию в четных строках.
Дан целый массив максимальной размерности 20*20. Провести сортировку по возрастанию в нечетных...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru