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

Нахождение в масивах наибольшего,наименьшего числа.

17.12.2010, 14:02. Показов 1754. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток.Скажите пожалуйста,как найти наибольший элемент в двумерном масиве,и как наименьший.И как поменять местами строку, содержащую элемент с наибольшим значением со строкой, содержащей элемент с наименьшим значением.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
17.12.2010, 14:02
Ответы с готовыми решениями:

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

Нахождение наибольшего и наименьшего элементов целочисленного массива
5)Составить программу для нахождения и вывода на экран номера наибольшего и наименьшего элементов целочисленного массива С...

Нахождение наибольшего общего делителя и наименьшего общего кратного двух натуральных
Составить программу для нахождения наибольшего общего делителя и наименьшего общего кратного двух натуральных чисел (НОК(А,В)= А*В/ НОД...

6
 Аватар для MILAN
899 / 793 / 186
Регистрация: 21.02.2009
Сообщений: 1,722
17.12.2010, 14:41
Цитата Сообщение от Silas Посмотреть сообщение
Скажите пожалуйста,как найти наибольший элемент в двумерном масиве,и как наименьший.И как поменять местами строку, содержащую элемент с наибольшим значением со строкой, содержащей элемент с наименьшим значением.
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
#include <iostream>
#include <ctime>
#include <iomanip>
 
using namespace std;
 
int** swap_string(int **mat,int M, int N, int imax, int imin)
{
    int temp;
    for(int i=0; i<M; i++)
    {
        for(int j=0; j<N; j++)
        {
            if(i==imin)
            {
                temp=mat[i][j];
                mat[i][j]=mat[imax][j];
                mat[imax][j]=temp;
            }
        }
    }
  return mat;
}
 
int main()
{
   
   srand(static_cast<int>(time(NULL)));
   int **mat;
   int M,N,max,min,imax=0,imin=0;
   cout<<"Enter M -> ";
   cin>>M;
   mat = new int*[M];
   cout<<"Enter N -> ";
   cin>>N;
   cout<<endl<<"Matrix "<<M<<"x"<<N<<endl;
    for(int i=0; i<M; i++)
    {
        mat[i]=new int[N];
         for(int j=0; j<N; j++)
          {
             mat[i][j]=rand()%50;
              cout<<setw(4)<<mat[i][j]<<setw(4);
          }
       cout<<endl;
    }
   max=mat[0][0];
   min=mat[0][0];
   for(int i=0; i<M; i++)
    {
         for(int j=0; j<N; j++)
          {
             if(mat[i][j] > max)
             {
                 max=mat[i][j];
                 imax=i;
             }
             if(mat[i][j] < min)
             {
                 min=mat[i][j];
                 imin=i;
             }
          }
    }
  cout<<endl<<"Min is "<<imin+1<<" -> "<<min<<endl;
  cout<<"Max is "<<imax+1<<" -> "<<max<<endl;
   swap_string(mat,M,N,imax,imin);
   cout<<endl<<"New matrix: "<<endl;
   for(int i=0; i<M; i++)
    {
         for(int j=0; j<N; j++)
          {
              cout<<setw(4)<<mat[i][j]<<setw(4);
          }
       cout<<endl;
    }
  system("pause");
return 0;
}
0
 Аватар для Silas
0 / 0 / 1
Регистрация: 13.09.2010
Сообщений: 14
25.12.2010, 18:50  [ТС]
Спасибо конечно же,но можно ли попроще код?А то этот сложноват для меня.
0
 Аватар для MILAN
899 / 793 / 186
Регистрация: 21.02.2009
Сообщений: 1,722
25.12.2010, 18:52
Silas, а что вам не понятно?
0
 Аватар для Silas
0 / 0 / 1
Регистрация: 13.09.2010
Сообщений: 14
25.12.2010, 19:40  [ТС]
что исполняет этот код "srand(static_cast<int>(time(NULL)));".И по подробней бы про эту "int** swap_string(int **mat,int M, int N, int imax, int imin)" ф-ю.
0
 Аватар для MILAN
899 / 793 / 186
Регистрация: 21.02.2009
Сообщений: 1,722
25.12.2010, 19:52
Цитата Сообщение от Silas Посмотреть сообщение
srand(static_cast<int>(time(NULL)));
Устанавливает исходное число для последовательности, генерируемой функцией rand(). В нашем случее мы берем в качастве етого числа системное время.


Цитата Сообщение от Silas Посмотреть сообщение
.И по подробней бы про эту "int** swap_string(int **mat,int M, int N, int imax, int imin)" ф-ю.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
int** swap_string(int **mat,int M, int N, int imax, int imin) // в качестве аргумента подаем указатель на матрицу, количество сторок, столбцов, номер строк с наибольшым и наименшым елементами 
{
        int temp; // переменая-буфер
        for(int i=0; i<M; i++) // цыкл проходит по строкам
        {
                for(int j=0; j<N; j++) // цыкл проходит по столбцам
                {
                        if(i==imin) //если номер строки совпал с номером строки, в которой находится минимальный елемент
                        {
                               // меняем местами елемент минимальной строки с елементом максимальной строки
                                temp=mat[i][j];
                                mat[i][j]=mat[imax][j];
                                mat[imax][j]=temp;
                        }
                }
        }
  return mat; // возвращаем новую матрицу
}
0
4 / 4 / 1
Регистрация: 23.12.2010
Сообщений: 27
25.12.2010, 23:04
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
#include <cstdlib>
#include <time.h>
#include <iostream>
#include <iomanip>
using namespace std;
 
/*
 * 
 */
int main(int argc, char** argv) {
    srand( time( NULL ) );
    int n, m, max = -101, min = 101, x = 0, y = 0;
    cout << "Введите количество строк - "; cin >> n;
    cout << "Введите количество столбцов - "; cin >> m;
    int a[n][m], b[n];
    for ( int i = 0; i < n; i++ ) {
        cout << "\n";
        for ( int j = 0; j < m; j++ ) {
            a[i][j] = rand()%100 - rand()%100;          //создаем массив, используя случайные числа от -100 до 100
            cout << setw(4) << a[i][j] << " ";          //контрольный вывод массива
        }
        
    }
    for ( int i = 0; i < n; i++ ) {
        for ( int j = 0; j < m; j++ ) {
            if (a[i][j] > max) {
                max = a[i][j];           //ищем наибольший элемент массива
                x = i;
            }
            if (a[i][j] < min) {
                min = a[i][j];           //ищем наименьший элемент массива
                y = i;
            }
        }
    }
    cout << "\n\nНаибольший элемент массива = " << max;
    cout << "\nНаименьший элемент массива = " << min << "\n\n";
    cout << "Строка с наибольшим элементом - " << x << "\n";
    cout << "Строка с наименьшим элементом - " << y << "\n\n";
    for ( int i = 0; i < n; i++ ) {         //в этом цикле меняем строки местами, записывая их в одномерный массив
        if ( i == x ) b[i] = y;
        if ( i == y ) b[i] = x;
        if ( i != x && i != y ) b[i] = i;
    }
    for ( int i = 0; i < n; i++ ) {
        for ( int j = 0; j < m; j++ ) {
            cout << setw(4) << a[b[i]][j] << " ";           //вывод массива с поменяными строками
        }
        cout << "\n";
    }
    cout << "\n";
    return 0;
}
что не понятно, спрашивай.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
25.12.2010, 23:04
Помогаю со студенческими работами здесь

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

Даны N целых чисел. Найти сумму наибольшего и наименьшего числа
Помогите решить задачу: Даны N целых чисел. Найти сумму наибольшего и наименьшего числа.

Нахождение наименьшего числа (С++)
Здравствуйте. Всех с наступающим праздником. Нужно, чтобы программа спрашивала, сколько чисел ты введешь, потом спрашивала сами...

Нахождение наименьшего числа в массиве
Почему тут находит мин число int n; int a; cin &gt;&gt; n; for (int i = 0; i &lt; n; i++) cin &gt;&gt; a; int m =...

Нахождение наибольшего числа в массиве
Здравствуйте! У меня такая проблема: есть задача написать функцию, которая принимает в качестве аргумента адрес массива и количество...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
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
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
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. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru