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

Напишите подпрограмму, меняющую местами минимальный и максимальный элементы матрицы

15.05.2015, 19:51. Показов 601. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Вот сделал матрицу, а как и куда вставить обменный цикл. Помогите плиз завтра сдать надо.
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
#include "matr.h"
 
 
int main(void)
{
setlocale (LC_ALL, "RUS");
int i,j,N,M,a[20][20];
cout<<"Ведите колличество строк N= ";
cin>>N;
cout<<"Введите колличество столбцов M= ";
cin>>M;
cout<<"Введите значение для матрицы A \n";
for (i=0; i<N; i++)
for (j=0; j<M; j++)
cin>>a[i][j]; 
cout<<"matrix A \n";
for (i=0; i<N; i++)
{
for (j=0; j<M; j++)
cout<<a[i][j]<<"\t"; 
cout<<endl; 
}
system("pause");
return 0;
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
15.05.2015, 19:51
Ответы с готовыми решениями:

Напишите подпрограмму, меняющую местами минимальный и максимальный элементы матрицы
Напишите подпрограмму, меняющую местами минимальный и максимальный элементы матрицы. помогите написать программу.можно код с комментарии

Поменять местами максимальный и минимальный элементы матрицы
Задание: ввести с клавиатуры массив, состоящий из n строк и m столбцов. Создать библиотеку, в которой будет содержаться функция, которая ...

Поменять местами максимальный и минимальный элементы матрицы
Здравствуйте. Помогите, пожалуйста, написать следующую программу: Дана матрица порядка n. Поменять местами максимальный и минимальный...

8
368 / 256 / 65
Регистрация: 22.06.2010
Сообщений: 1,566
15.05.2015, 21:22
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
int imin=0, imax=0, jmin=0, jmax=0; //это можно записать по-другому, всё зависит от компилятора
for(int i=0; i<N; i++){ //ищем минимальный элемент и максимальный и записываем его координаты
   for(int j=0; j<N; j++){
      if(a[i][j] < a[imin][jmin]){ //минимальный
         imin = i;                   
         jmin = j;                   
        }                              
      if(a[i][j] > a[imax][jmax]){ //максимальный
         imax = i;                    
         jmax = j;                    
      }                
}                   
}
int swap = a[imin][jmin]; //меняем местами
a[imin][jmin] = a[imax][jmax];
a[imax][jmax] = swap;
Вроде правильно. Есть вопросы?
0
-5 / 0 / 4
Регистрация: 12.01.2015
Сообщений: 54
15.05.2015, 21:24
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
for (i=1; i<N; i++){
for (j=1; j<M; j++){
if (a[i-1][j]<a[i][j] || a[i-1][j-1]<a[i][j] ||a[i][j-1]<a[i][j])
max=a[i][j];
else( a[i-1][j]>a[i][j] || a[i-1][j-1]>a[i][j] ||a[i][j-1]>a[i][j])
min=a[i][j];
}
}
for (i=0; i<N; i++){
for (j=0; j<M; j++){
if (a[i][j]=max)
a[i][j]=min;
else if(a[i][j]=min)
a[i][j]=max;
}
}
Вроде так
0
368 / 256 / 65
Регистрация: 22.06.2010
Сообщений: 1,566
15.05.2015, 21:27
somebodyelse, объясните кратко алгоритм. Зачем цикл начинается с единицы? (просто непонятно)
0
-5 / 0 / 4
Регистрация: 12.01.2015
Сообщений: 54
15.05.2015, 21:35
Упс, перепутал, почему то подумал,что надо сравнивать каждый элемент с каждым сейчас изменю
Спасибо.

Добавлено через 1 минуту
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
min=a[0][0];
max=a[0][0]
for (i=0; i<N; i++){
for (j=0; j<M; j++){
if (max<a[i][j])
max=a[i][j];
else(min>a[i][j])
min=a[i][j];
}
}
for (i=0; i<N; i++){
for (j=0; j<M; j++){
if (a[i][j]=max)
a[i][j]=min;
else if(a[i][j]=min)
a[i][j]=max;
}
}
0
368 / 256 / 65
Регистрация: 22.06.2010
Сообщений: 1,566
15.05.2015, 21:37
Sergei1996, короче для вас аж два варианта Первый более быстрый, второй - более понятный и прозрачный.
0
0 / 0 / 0
Регистрация: 25.09.2014
Сообщений: 30
16.05.2015, 09:01  [ТС]
Что-то не могу сообразить куда подставить, и да нужна "подпрограмма, меняющая местами минимальный и максимальный элементы матрицы"
0
368 / 256 / 65
Регистрация: 22.06.2010
Сообщений: 1,566
16.05.2015, 09:02
Sergei1996, между 22 и 23 строкой, после вставки снова вывести массив на экран. Ну или в функцию вынести.
0
Модератор
Эксперт С++
 Аватар для zss
13773 / 10966 / 6491
Регистрация: 18.12.2011
Сообщений: 29,244
16.05.2015, 09:57
somebodyelse, Будьте внимательнее с операцией сравнения (==)!
Цитата Сообщение от somebodyelse Посмотреть сообщение
if (a[i][j]=max)
Это грубая ошибка! Но компилятор ее пропустит присвоив a[j][i] значение max.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
16.05.2015, 09:57
Помогаю со студенческими работами здесь

Создать функцию, меняющую местами максимальный и минимальный элемент одномерного массива
создать функцию которая поменяет местами максимальный и минимальный элемент одномерного массива, и снова вывести массив на экран. Ввод...

Найти максимальный и минимальный элементы матрицы и поменять их местами
2.Матрица B, содержащая целые числа, вводится с клавиатуры. Найти максимальный и минимальный элементы матрицы и поменять их местами.

Найти максимальный и минимальный элементы матрицы и поменять их местами
Помогите пожалуйста нужно создать программу в с++ которая вычисляет определитель квадратной матрицы второго порядка и третьего...

Напишите функцию, меняющую местами элементы массива
17. Напишите функцию, меняющую местами наибольший и наименьший элементы массива.

В каждой строке матрицы поменять местами максимальный и минимальный элементы
Дана действительная матрица размера (nxm), (n,m меньше или равно 10). В каждой строке матрицы поменять местами максимальный и ...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек SDL3 и Box2D из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия SDL 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual. . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru