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

Сформировать произвольную матрицу - C++

Восстановить пароль Регистрация
 
dimoncheg
 Аватар для dimoncheg
10 / 10 / 2
Регистрация: 18.10.2012
Сообщений: 220
06.12.2012, 14:56     Сформировать произвольную матрицу #1
Здравствуйте ув. участники форума. Помогите пожалуйста. Даны натуральные числа n, M (n<M). Cформировать произвольную матрицу размерностью n*M. Найти наибольший и наименьший элемент заштрихованной области.
Изображения
 
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.12.2012, 14:56     Сформировать произвольную матрицу
Посмотрите здесь:

Сформировать матрицу C++
транспонировать произвольную матрицу C++
повернуть произвольную матрицу на 90 градусов C++
C++ Сформировать матрицу
Сформировать матрицу C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Afflicted
Обитатель форума
199 / 182 / 8
Регистрация: 28.10.2012
Сообщений: 538
06.12.2012, 15:59     Сформировать произвольную матрицу #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
#include <iostream>
using namespace std;
 
int main()
{
    int const n = 4, M = 5;
 
    int arr[n][M] =
    {
        1, 3, 6, 2, 2,
        6, 9, 3, 1, 2,
        3, 4, 7, 5, 8,
        6, 3, 4, 2, 7
    };
 
    for (int i=0; i<n; ++i)
    {
        for (int j = 0; j<M; ++j)
            cout << arr[i][j] << " ";
 
            cout << endl;
    }
    
    cout << endl;
    int row, col, min = arr[0][0];
    cin >> row >> col;
    cout << endl;
    for (int i=0; i < n; ++i)
        for (int j=0; j < M; ++j)
            if ((i <= row && j >= col) || (i >= row && j <= col))
                if (min > arr[i][j])
                    min = arr[i][j];
 
    cout << min << endl;
    system("pause");
    return 0;
}
dimoncheg
 Аватар для dimoncheg
10 / 10 / 2
Регистрация: 18.10.2012
Сообщений: 220
06.12.2012, 16:51  [ТС]     Сформировать произвольную матрицу #3
Спасибо, но это программа выводит только значение матрицы в первом столбце первой строки (1,1).
Afflicted
Обитатель форума
199 / 182 / 8
Регистрация: 28.10.2012
Сообщений: 538
06.12.2012, 17:13     Сформировать произвольную матрицу #4
потому что это наименьшее значение. Попробуйте заменить единицу на другое число.
dimoncheg
 Аватар для dimoncheg
10 / 10 / 2
Регистрация: 18.10.2012
Сообщений: 220
06.12.2012, 18:06  [ТС]     Сформировать произвольную матрицу #5
я заменял ее на другое число. ну, я поставил 4 вместо нее - выдало 4. а если это и выводит минимальное, то почему не выводит максимальное? заранее спасибо..
Afflicted
Обитатель форума
199 / 182 / 8
Регистрация: 28.10.2012
Сообщений: 538
09.12.2012, 18:20     Сформировать произвольную матрицу #6
dimoncheg, да, действительно, в решении закралась ошибка. Поправил, проверил - работает. Прошу прощения. Так же добавил наибольший элемент

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
#include <iostream>
using namespace std;
 
int main()
{
    int const n = 4, M = 5;
 
    int arr[n][M] =
    {
        8, 3, 6, 9, 2,
        6, 9, 3, 1, 2,
        3, 4, 7, 5, 8,
        6, 3, 4, 1, 11
    };
 
    for (int i=0; i<n; ++i)
    {
        for (int j = 0; j<M; ++j)
            cout << arr[i][j] << " ";
 
            cout << endl;
    }
    
    cout << endl;
    int row, col, min = arr[0][0], max = arr[0][0];
    cin >> row >> col;
    cout << endl;
 
    for (int i=0; i < n; ++i)
    {
        for (int j=0; j < M; ++j)
        {
            if ((i <= row || j >= col) && (i >= row || j <= col))
            {
                if (min > arr[i][j])
                    min = arr[i][j];
 
                if (max < arr[i][j])
                    max = arr[i][j];
            }
        }
    }
 
    cout << "min: " << min << " max: "<< max << endl;
    system("pause");
    return 0;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.12.2012, 18:55     Сформировать произвольную матрицу
Еще ссылки по теме:

C++ сформировать матрицу
Сформировать произвольную матриц размерностью NxN.Найти наибольший и наименьший элемент выше побочной диагонали C++
Сформировать квадратную матрицу; транспонировать матрицу и инвертировать порядок элементов каждой ее строки C++

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

Или воспользуйтесь поиском по форуму:
dimoncheg
 Аватар для dimoncheg
10 / 10 / 2
Регистрация: 18.10.2012
Сообщений: 220
09.12.2012, 18:55  [ТС]     Сформировать произвольную матрицу #7
Цитата Сообщение от Afflicted Посмотреть сообщение
dimoncheg, да, действительно, в решении закралась ошибка. Поправил, проверил - работает. Прошу прощения. Так же добавил наибольший элемент

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
#include <iostream>
using namespace std;
 
int main()
{
    int const n = 4, M = 5;
 
    int arr[n][M] =
    {
        8, 3, 6, 9, 2,
        6, 9, 3, 1, 2,
        3, 4, 7, 5, 8,
        6, 3, 4, 1, 11
    };
 
    for (int i=0; i<n; ++i)
    {
        for (int j = 0; j<M; ++j)
            cout << arr[i][j] << " ";
 
            cout << endl;
    }
    
    cout << endl;
    int row, col, min = arr[0][0], max = arr[0][0];
    cin >> row >> col;
    cout << endl;
 
    for (int i=0; i < n; ++i)
    {
        for (int j=0; j < M; ++j)
        {
            if ((i <= row || j >= col) && (i >= row || j <= col))
            {
                if (min > arr[i][j])
                    min = arr[i][j];
 
                if (max < arr[i][j])
                    max = arr[i][j];
            }
        }
    }
 
    cout << "min: " << min << " max: "<< max << endl;
    system("pause");
    return 0;
}
не стоит изменений. вы итак многое для меня сделали. ваш ответ был взят за основу и очень мне помог.
Yandex
Объявления
09.12.2012, 18:55     Сформировать произвольную матрицу
Ответ Создать тему

Метки
матрица, произвольную, Сформировать
Опции темы

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