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

В двумерном массиве все числа различны.В каждой строке находим мин.элемент,затем среди этим мин.элементов выбираем максимальный.Напечатать индексы. - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ передать указатель http://www.cyberforum.ru/cpp-beginners/thread315925.html
как передать указатель чтобы функция его изменяла и он был измененный в функции которая его ПЕРЕДАЛА. вот так указатель просто void func(float *pointer); float x ; float *pointer = x; func...
C++ Вычисление VS C++ Честно говоря задача детская, но вот то что получается вводит меня в ступор, вот код: float x = (float) -0.5; while (x <= 0.5) { cout << x << endl; x = x + (float)0.1; http://www.cyberforum.ru/cpp-beginners/thread315919.html
C++ Книгами по C\C++
Просто я читаю одну Н.Мартинов программирование для Windows на C/C++ в этой книги сильно много не нужной информации. На ваше мнение какие книги лучше всего по С/С++ понятные(для лузеров) и что бы...
C++ первый курс. с++
1)Даны числа x, y, x1, y1, x2, y2. Проверить истинность высказывания: «Точка с координатами (x, y) лежит внутри прямоугольника, левая верхняя вершина которого имеет координаты (x1, y1), правая нижняя...
C++ Оформить сортировку элементов отдельной строки матрицы в виде функции http://www.cyberforum.ru/cpp-beginners/thread315908.html
Помогите, срочно нужно сдать. Программу надо переделать. Нужно оформить как функцию сортировку элементов отдельной строки. Ввод и вывод элементов матрицы оформить как функцию. #include...
C++ С++Оформить как функцию сортировку элементов отдельной строки. Ввод и вывод элементов матрицы оформить как функцию. Помогите, срочно нужно сдать. Программу надо переделать. Нужно оформить как функцию сортировку элементов отдельной строки. Ввод и вывод элементов матрицы оформить как функцию. Заранее спасибо. ... подробнее

Показать сообщение отдельно
Airzi
-3 / 0 / 0
Регистрация: 02.03.2011
Сообщений: 32
08.06.2011, 16:58  [ТС]
Цитата Сообщение от soon Посмотреть сообщение
ну если это массив, то как строки могут иметь различную длину?
динамический массив:
C++
1
2
3
int **arr = new int* [n];
for (int i = 0; i < n; ++i)
     arr[i] = new int [m]
это в заданий написано) нужно как-то это замутить,я не могу догнать как,а сдавать надо в ближайщиий час)
вот ещё вариант
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
#include <iostream>
using namespace std;
 
int main()
{
        int rows, cols;
        int i, j;
        int max_i, max_j, min_j; // ГЁГ*äåêñû
        int counter = 0;
 
        cout << "Enter rows: ";
        cin >> rows;
        cout << "Enter cols: ";
        cin >> cols;
        
        int** arr = new int *[rows];
        for(i = 0; i < rows; i++)
        {
                arr[i] = new int [cols];
        }
        
        // ââîä
        for (i = 0; i < rows; ++i)
        {
                for (j = 0; j < cols; ++j)
                {
                        cout << "Enter arr[" << i << "][" << j << "]: ";
                        cin >> arr[i][j];
                }
        }
        
        // âûâîä
        cout << "\nSource array:\n";
        for (i = 0; i < rows; ++i)
        {
                for (j = 0; j < cols; ++j)
                {
                        cout << arr[i][j] << '\t';
                }
                cout << '\n';
        }
        
        // ГЁГ№ГҐГ¬ ìèГ* (+ Г¬Г*ГЄГ± ñðåäè Г*ГЁГµ)
        max_i = 0;
        max_j = 0;
 
        for (i = 0; i < rows; ++i)
        {
                min_j = 0;
                
                for (j = 0; j < cols; ++j)
                {
                        if (arr[i][j] < arr[i][min_j])
                        {
                                // Г§Г*ïîìèГ*Г*ГҐГ¬ ГЁГ*äåêñ ìèГ*.ýëåìåГ*ГІГ* ГЄГ*æäîé ñòðîêè
                                min_j = j;
                        }
                }
 
                if(arr[i][min_j] > arr[max_i][max_j] || i == 0)
                {
                        // Г§Г*ïîìèГ*Г*ГҐГ¬ ГЁГ*äåêñû Г¬Г*êñèìóìГ*
                                max_i = i;
                                max_j = min_j;
                }
                        
                // ГЇГҐГ·Г*ГІГ*ГҐГ¬ ìèГ*èìóìû
                cout << "Minimum in " << i << " row is arr" 
                        << "[" << i << "][" << min_j << "] = " 
                        << arr[i][min_j] << '\n';
        }
        
        // ГЇГҐГ·Г*ГІГ*ГҐГ¬ Г¬Г*êñèìóì
        cout << "Maximal element of minimums is arr[" 
                << max_i << "][" << max_j << "] = " 
                << arr[max_i][max_j] << '\n';
        
        // ГЁГ№ГҐГ¬ ñîâïГ*äåГ*ГЁГї
        cout << "\nEqual elements:";
        for (j = 0; j < cols; ++j)
        {
                if (arr[max_i][j] == arr[max_i][max_j])
                {
                        ++counter;
                        cout << " arr[" << max_i << "][" << j << "] ";
                }
        }
        
        cout << "\n(there are " << counter << " elements with walue of " << arr[max_i][max_j] << " in this row)\n";
        
        return 0;
}
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru