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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
dimoncheg
10 / 10 / 2
Регистрация: 18.10.2012
Сообщений: 220
#1

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

06.12.2012, 14:56. Просмотров 466. Ответов 6

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

Транспонировать произвольную матрицу - C++
// LR4.cpp: определяет точку входа для консольного приложения. // #include &lt;stdafx.h&gt; #include &lt;stdio.h&gt; #include &lt;conio.h&gt; ...

Повернуть произвольную матрицу на 90 градусов - C++
Надо повернуть произвольную матрицу на 90 градусов.

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

Сформировать квадратную матрицу; транспонировать матрицу и инвертировать порядок элементов каждой ее строки - C++
Заданы два одномерных массива одинаковой длины: R и S.Сформировать квадратную матрицу A, каждый элемент которой, что находится в i-той...

Сформировать матрицу - C++
Помогите сделать задачу:дан вектор размера (6;1),нужно сформировать матрицу(6;3) ,каждый столбец которой равен элементам исходного вектора...

сформировать матрицу - C++
Здравствуйте товарищи! Нужно сформировать матрицу В(4х4) из матрицы А (4х4), заменив элементы главной и побочной диагоналей матрицы А...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Afflicted
Обитатель форума
199 / 182 / 8
Регистрация: 28.10.2012
Сообщений: 543
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
10 / 10 / 2
Регистрация: 18.10.2012
Сообщений: 220
06.12.2012, 16:51  [ТС] #3
Спасибо, но это программа выводит только значение матрицы в первом столбце первой строки (1,1).
Afflicted
Обитатель форума
199 / 182 / 8
Регистрация: 28.10.2012
Сообщений: 543
06.12.2012, 17:13 #4
потому что это наименьшее значение. Попробуйте заменить единицу на другое число.
dimoncheg
10 / 10 / 2
Регистрация: 18.10.2012
Сообщений: 220
06.12.2012, 18:06  [ТС] #5
я заменял ее на другое число. ну, я поставил 4 вместо нее - выдало 4. а если это и выводит минимальное, то почему не выводит максимальное? заранее спасибо..
Afflicted
Обитатель форума
199 / 182 / 8
Регистрация: 28.10.2012
Сообщений: 543
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;
}
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;
}
не стоит изменений. вы итак многое для меня сделали. ваш ответ был взят за основу и очень мне помог.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.12.2012, 18:55
Привет! Вот еще темы с ответами:

Сформировать матрицу - C++
Составить программу для подсчета среднего арифметического ненулевых ячеек прямоугольной таблицы Х, что состоит из M*N целых чисел, лежащих...

Сформировать матрицу - C++
Здраствуйте я не знаю языка С++ но вот задали такую задачу, если кто может помочь буду благодарен. Сформировать матрицу B(M,N) элементами...

Сформировать треугольную матрицу - C++
Скажите почему у меня не выходить треугольная матрица?? вот задание: Коэффициенты системы линейных уравнений заданы в виде...

Сформировать матрицу по правилу - C++
Люди добрые помогите пожалуйста написать на С двумерный массив такого вида: http://s51.***********/i132/0912/21/878c45310e2b.jpg Я знаю,...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
09.12.2012, 18:55
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru