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

Двумерный массив: строка, в которой находится самая длинная серия одинаковых элементов - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Продолжаем писать маленький интерпретатор http://www.cyberforum.ru/cpp-beginners/thread1200708.html
Наконец то руки дошли дописать то что было тут : Маленький (команд на 10) интерпретатор на C++. #include <iostream> #include <vector> #include <cstring> using namespace std; class command { public: string name; }comm;
C++ Обеспечить сдвиг столбцов матрицы вправо или влево в зависимости от знака вводимого числа сдвигов Дана целочисленная матрица размерности n x m. Обеспечить сдвиг столбцов матрицы вправо или влево в зависимости от знака вводимого числа сдвигов k. http://www.cyberforum.ru/cpp-beginners/thread1200704.html
Проверить, чередуются ли в одномерном массиве четные и нечетные числа C++
помогите с С++ Дан целочисленный массив размера N. Проверить чередуются ли в нем четные и нечетные числа. Если чередуются, то вывести 0, если нет, то вывести порядковый номер первого элемента, нарушающего закономерность.
C++ Целочисленная квадратная матрица, сумма, минимум
дана целочисленная квадратная матрица.Определить: 1)сумму элементов в тез столбцах,которые не содержат отрицательных элементов; 2)минимум среди сумм модулей элементов диагоналей,параллельных побочной диагонали матрицы. Решить задачу с использованием указателей.
C++ Определите расстояние между двумя введенными точками http://www.cyberforum.ru/cpp-beginners/thread1200673.html
Есть задание: "Опишите переменную структуру для моделирования, предложенного понятия. Координаты точки (пара вещественных или комплексных чисел). Определите расстояние между двумя введенными точками." Поясните по-русски. "Переменная структура" – это как? Структура, которая меняется? :D И дальше: "предложенного понятия". Надо просто задать структура на ввод чисел и вычислить расстояние? P.S....
C++ К знатокам С++: это самодостаточный язык, или всё таки он зависит от Си Объясните мне пожалуйста, ибо я не догоняю... Я изучаю С++, языка Си я не знаю. Читать родоночальника языка слишком для меня хардова, половину не понимаю. Во всей остальной литературе, мб это такие авторы... не понимаю..., обучая и рассказывая о С++ они постоянно прибегают к инструментам и возможностям Си... Я очень много видел объяснений что С++ это не Си. типа С++ это законченный,... подробнее

Показать сообщение отдельно
GuGo1991
267 / 261 / 93
Регистрация: 02.08.2012
Сообщений: 609
06.06.2014, 04:17     Двумерный массив: строка, в которой находится самая длинная серия одинаковых элементов
Кликните здесь для просмотра всего текста
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
#include <iostream>
#include <conio.h>
#include <iomanip>
 
int main()
{
    srand(time(0));
    int H, W, zero_column = 0, max_repeats = 0, index;
    std::cout << "Type H: "; std::cin >> H;
    std::cout << "Type W: "; std::cin >> W;
    std::cout << std::endl;
    int** M = new int*[H];
    for(int i = 0; i < H; i++)
        M[i] = new int[W];
        
    for(int i = 0; i < H; i++)
    {
        for(int j = 0; j < W; j++)
        {
            M[i][j] = rand() % 100;
            std::cout << std::setw(4) << M[i][j];
        }
        std::cout << "\n\n";
    }
    
    for(int i = 0; i < W; i++)
    {
        for(int j = 0; j < H; j++)
        {
            if(M[j][i] == 0)
            {
                zero_column++;
                break;
            }
        }
    }
    
    for(int i = 0; i < H; i++)
    {
        for(int j = 0; j < W; j++)
        {
            int counter = 0;
            for(int z = 0; z < W; z++)
                if(M[i][j] == M[i][z])
                    counter++;
            if(counter > max_repeats)
            {
                max_repeats = counter;
                index = i;
            }
        }
    }
    
    (zero_column > 0) ? std::cout << "Columns with 0 element - "
                                  << zero_column << std::endl
                      : std::cout << "No such columns\n";
    (max_repeats > 1) ? std::cout << "First row with max repeats "
                                  << index + 1 << std::endl
                      : std::cout << "No such row\n";
    
    for(int i = 0; i < H; i++)
        delete [] M[i];
    delete [] M;
    
    std::cout << "\nOperation succeeded\n";
    getch();
    return 0;
}
 
Текущее время: 06:37. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru