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

Обработка матриц - C++

Восстановить пароль Регистрация
 
Razen
0 / 0 / 0
Регистрация: 13.01.2012
Сообщений: 5
13.01.2012, 13:02     Обработка матриц #1
Добрый день, помогите.

Дана целочисленная матрица MxN.Найти элемент,являющийся максимальный в своей строке и минимальный в своем столбце
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.01.2012, 13:02     Обработка матриц
Посмотрите здесь:

C++ Обработка матриц
C++ обработка матриц
C++ Обработка матриц
C++ Обработка матриц
Обработка матриц C++
Обработка матриц в С++ C++
C++ Обработка матриц
C++ Обработка матриц

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
R136a1
 Аватар для R136a1
142 / 111 / 15
Регистрация: 14.04.2011
Сообщений: 261
13.01.2012, 13:53     Обработка матриц #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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
#include <iostream>
#include <cstdlib>
#include <ctime>
#include <iomanip>
 
int minf(int a, int b)
{
    return a > b ? b : a;
}
 
int main()
{
    const int row = 3;
    const int column = 4;
    int matr[row][column] = {0};
    int tmp_i = 0, tmp_j = 0;
    int max, min;
    bool ExitFlag = false;
 
    srand(time(NULL));
 
    matr[2][3] = 5;
 
    for(int i = 0; i < row; i++)
    {
        for(int j = 0; j < column; j++)
        {
            if(i < 2)
                matr[i][j] = 10 + rand() % 50;
 
            std::cout << std::setw(5) << matr[i][j];
        }
 
        std::cout << std::endl;
    }
 
    while(!ExitFlag)
    {
        bool minInColumn = true;
 
        max = matr[tmp_i][0];
 
        for(int j = 0; j < column; j++)
            if(matr[tmp_i][j] > max)
            {
                max = matr[tmp_i][j];
                tmp_j = j;
            }
 
        for(int i = 0; i < row; i++)
            if(matr[tmp_i][tmp_j] > matr[i][tmp_j])
                minInColumn = false;
 
        if(minInColumn)
        {
            std::cout << "Такой элемент есть! matr[" << tmp_i << "][" << tmp_j << "]: "
                  << matr[tmp_i][tmp_j] << std::endl;
            ExitFlag = true;
        }
        else
        {
            if(tmp_i < row - 1)
                tmp_i++;
            else
            {
                std::cerr << "Такого элемента нет" << std::endl;
                ExitFlag = true;
            }
        }
    }
 
    return 0;
}
Yandex
Объявления
13.01.2012, 13:53     Обработка матриц
Ответ Создать тему
Опции темы

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