Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/11: Рейтинг темы: голосов - 11, средняя оценка - 4.73
0 / 0 / 0
Регистрация: 16.01.2015
Сообщений: 29

В прямоугольной матрице найдите наименьший элемент, и выведите на экран строки, в которых он находится

23.01.2015, 22:46. Показов 2036. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
В прямоугольной матрице размером MхN найдите наименьший элемент и выведите на экран строки, в которых этот элемент находится. Отсортируйте четные столбцы матрицы по убыванию. Выведите на экран исходную и преобразованную матрицы, значение наименьшего элемента строки

Добавлено через 5 минут
помогите решить пожалуйста, срочно нужно сдать кучу задач, может с этой хоть поможите
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
23.01.2015, 22:46
Ответы с готовыми решениями:

Дана матрица A(n,m). Найдите ее наибольший и наименьший элемент и номера строки и столбца на пересечении которых он находится
Дана матрица A(n,m). Найдите ее наибольший и наименьший элемент и номера строки и столбца на пересечении которых он находится. Спасибо!!!

В прямоугольной матрице найти наименьший элемент и удалить столбец, в котором он находится
В заданной прямоугольной матрице найти наименьший элемент и удалить столбец, в котором он находится.

Определить наименьший по модулю элемент матрицы и номер строки и столбца, на пересечении которых элемент находится.
Помогите решить задачу. Дана действительная квадратная матрица А n x n. Определить наименьший по модулю элемент матрицы и номер строки и...

10
 Аватар для 19dmitry
37 / 37 / 22
Регистрация: 18.01.2014
Сообщений: 150
24.01.2015, 02:38
Лучший ответ Сообщение было отмечено Tana12334 как решение

Решение

По просьбам трудящихся, представляю решение данной задачи:
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
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
#include<iostream>
#include<ctime>
using namespace std;
 
const int MAX=10;   
 
int main()
{
    setlocale (LC_ALL, "RUSSIAN");
    srand((unsigned)time(NULL));
    int mas[MAX][MAX];
    int str[MAX];
    int n,m;
    int count=0;
    int l=0;
 
    cout << "Введите количество столбцов: "; cin >> n;
    cout << "Введите количество строк: "; cin >> m;
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    //1. Заполняем двумерный массив, находим его минимальное значение, выводим строки, содержащие минимальное значение массива
    cout << "Массив равен: " << endl;
 
    for(int j=1; j<m+1; j++)
    {
        for(int i=1; i<n+1; i++)
        {
            mas[i][j]=rand()%10;
            cout << mas[i][j] << "\t";
            
        }
        cout << endl;
    }
    
    cout << endl;
 
    int min=mas[1][1];
    for(int j=1; j<m+1; j++)
    {
        for(int i=1; i<n+1; i++)
        {
            if(min>mas[i][j])
            {
                min=mas[i][j];
            }
        }
    }
 
    cout << "\nМинимальный элемент: " << min << endl;
 
    for(int j=1; j<m+1; j++)
    {
        for(int i=1; i<n+1; i++)
        {
            if(min==mas[i][j])
            {
                str[count++]=j;
            }
        }
    }
 
    cout << "\nСтроки содержащие минимальный элемент: \n" << endl;
 
    for(int j=0; j<count; j++)
    {
        if(str[j]!=str[j+1])
        {
            for(int i=1; i<n+1; i++)
            {
                l=str[j];
                cout << mas[i][l] << "\t";
            }
            cout << endl;
        }
    }
    cout << endl;
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    //2. Сортируем по убыванию четные столбцы матрицы
    cout << "Отсортированный массив: " << endl;
    int temp=0;
    int i,j;
 
    for(int k=1; k<n+1; k++)
    {
        if(k%2==0)
        {
            for(i=1; i<n+1; i++)
            {
                for(j=1; j<n; j++)
                {
                    if(mas[k][j]<mas[k][j+1])
                    {
                        temp=mas[k][j];
                        mas[k][j]=mas[k][j+1];
                        mas[k][j+1]=temp;
                    
                    }
                }
            }
        }
    }
 
    // вывод измененного массива
    for(int j=1; j<m+1; j++)
    {
        for(int i=1; i<n+1; i++)
        {
            cout << mas[i][j] << "\t";
            
        }
        cout << endl;
    }
 
    cout << endl;
    system("PAUSE");
    return 0;
}
0
0 / 0 / 0
Регистрация: 16.01.2015
Сообщений: 29
24.01.2015, 12:53  [ТС]
спасибо большое
0
0 / 0 / 0
Регистрация: 16.01.2015
Сообщений: 29
25.01.2015, 23:04  [ТС]
19dmitry, а можете эту задачу написать через функцию, просто очень нужно!!
очень сильно поможете)
0
 Аватар для 19dmitry
37 / 37 / 22
Регистрация: 18.01.2014
Сообщений: 150
25.01.2015, 23:27
Могу
0
0 / 0 / 0
Регистрация: 16.01.2015
Сообщений: 29
26.01.2015, 01:49  [ТС]
19dmitry, напишите пожалуйста!)
0
173 / 131 / 74
Регистрация: 04.12.2013
Сообщений: 552
26.01.2015, 01:51
Tana12334, давай остальные задачи =) Только в новые темы.
0
 Аватар для 19dmitry
37 / 37 / 22
Регистрация: 18.01.2014
Сообщений: 150
26.01.2015, 02:09
Решение задачи, через функции. Код не отличается особой изысканностью, в функциях передаются аргументы по значению. Но думаю, что так он будет более понятен. Если возникнут вопросы, обращайтесь.
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
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
#include<iostream>
#include<ctime>
using namespace std;
 
const int MAX=10;  
 
 
// объявляем функции
 
void in_arr(int [MAX][MAX], int , int );
void min_element(int [MAX][MAX], int , int , int );
void min_str(int [MAX][MAX], int [MAX], int , int , int );
void change_arr(int [MAX][MAX], int , int );
void out_arr(int [MAX][MAX], int , int );
 
int main()
{
    setlocale (LC_ALL, "RUSSIAN");
    srand((unsigned)time(NULL));
    
    int mas[MAX][MAX];
    int str[MAX];
    int n,m;
    int min=0;
   
 
    cout << "Введите количество столбцов: "; cin >> n;
    cout << "Введите количество строк: "; cin >> m;
 
    // вызываем функции
 
    in_arr(mas, n, m); // создаём массив
    min_element(mas, n, m, min); // находим минимальный элемент
    min_str(mas, str, n, m, min); // находим строки с этим элементом, выводим их на экран
    change_arr(mas, n, m); // сортируем элементы четных столбцов по убыванию
    out_arr(mas, n, m); // выводим на экран, готовый массив
 
    cout << endl;
 
    system("PAUSE");
    return 0;
}
 
 
// определение функций
 
void in_arr(int mas1[MAX][MAX], int n1, int m1) // формируем массив, выводим его на экран
{
    cout << "Массив равен: " << endl;
 
    for(int j=1; j<m1+1; j++)
    {
        for(int i=1; i<n1+1; i++)
        {
            mas1[i][j]=rand()%10;
            cout << mas1[i][j] << "\t";
            
        }
        cout << endl;
    }
}
 
void min_element(int mas2[MAX][MAX], int n2, int m2, int min2) // определяем минимальный элемент
{
    min2=mas2[1][1];
    for(int j=1; j<m2+1; j++)
    {
        for(int i=1; i<n2+1; i++)
        {
            if(min2>mas2[i][j])
            {
                min2=mas2[i][j];
            }
        }
    }
    cout << "\nМинимальный элемент: " << min2 << endl;
}
 
void min_str(int mas3[MAX][MAX], int str3[MAX], int n3, int m3, int min3) // определяем строки, содержащие минимальный элемент, выводим их на экран
{
    int l=0;
    int count=0;
 
    for(int j=1; j<m3+1; j++)
    {
        for(int i=1; i<n3+1; i++)
        {
            if(min3==mas3[i][j])
            {
                str3[count++]=j;
            }
        }
    }
 
    cout << "\nСтроки содержащие минимальный элемент: \n" << endl;
 
    for(int j=0; j<count; j++)
    {
        if(str3[j]!=str3[j+1])
        {
            for(int i=1; i<n3+1; i++)
            {
                l=str3[j];
                cout << mas3[i][l] << "\t";
            }
            cout << endl;
        }
    }
    cout << endl;
}
 
void change_arr(int mas4[MAX][MAX], int n4, int m4) // Сортируем по убыванию четные столбцы матрицы
{
    int temp=0;
    int i,j;
 
    for(int k=1; k<n4+1; k++)
    {
        if(k%2==0)
        {
            for(i=1; i<n4+1; i++)
            {
                for(j=1; j<n4; j++)
                {
                    if(mas4[k][j]<mas4[k][j+1])
                    {
                        temp=mas4[k][j];
                        mas4[k][j]=mas4[k][j+1];
                        mas4[k][j+1]=temp;
                    }
                }
            }
        }
    }
}
 
void out_arr(int mas5[MAX][MAX], int n5, int m5) // отображаем отсортированный массив
{
    cout << "Отсортированный массив: " << endl;
    for(int j=1; j<m5+1; j++)
    {
        for(int i=1; i<n5+1; i++)
        {
            cout << mas5[i][j] << "\t";     
        }
        cout << endl;
    }
}
1
0 / 0 / 0
Регистрация: 16.01.2015
Сообщений: 29
26.01.2015, 02:20  [ТС]
19dmitry, спасибо большое))
очень помог,нереально благодарна))

Добавлено через 3 минуты
Prorok2323, Сформировать из элементов линейного массива квадратную таблицу А максимально возможных размеров
0
 Аватар для 19dmitry
37 / 37 / 22
Регистрация: 18.01.2014
Сообщений: 150
26.01.2015, 02:23
Нереальное пожалуйста )))
0
0 / 0 / 0
Регистрация: 16.01.2015
Сообщений: 29
27.01.2015, 23:05  [ТС]
Prorok2323, Из одномерного массива сформировать квадратную матрицу
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
27.01.2015, 23:05
Помогаю со студенческими работами здесь

Номер строки и столбца, в которых находится наименьший элемент
Задается матрица 3х3 вещественных чисел. Найти номер строки и столбца, в которых находится наименьший элемент. Добавлено через 39...

Определить и вывести на экран наименьший элемент каждой четной строки прямоугольной матрицы.
Необходимо написать программу, выполняющую следующие действия: 1) Ввод пользователем с клавиатуры количества строк и столбцов...

В прямоугольной матрице выявить все строки, у которых максимальный элемент превосходит сумму остальных элементов строки
С++ Кому не сложно, пожалуйста помогите новичку.. В прямоугольной матрице выявить все строки, у которых максимальный элемент...

Вывести номер строки и столбца прямоугольной матрицы, на пересечении которых находится минимальный элемент
Программа должна выводить номер строки и столбца прямоугольной матрицы n*m, на пересечении которых минимальный элемент. procedure...

Найти наименьший элемент матрицы и номер строки и столбца, в которых он находится
1. Задана матрица С. Найти наименьший элемент матрицы С и номер строки и столбца, в которых он находится. Вывести найденные значения. ...


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru