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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Determinant
2 / 2 / 0
Регистрация: 11.04.2009
Сообщений: 67
#1

Вывести номер строки матрицы с самой длинной последовательностью одинаковых элементов - C++

12.10.2009, 20:41. Просмотров 934. Ответов 3
Метки нет (Все метки)

Пожалуста, кто знает решите пожалуста задачку: Дана квадратная матрица m*m, написать программу которая выводит номер той строки в матрице где есть самая длинная последовательность из одинаковых елементов. Например если есть матрица :3 5 8
2 7 9
1 1 1
То программа должна дать результат 3, так как в третьей строке самая длинная последовательность из одинаковых елементов. Программа использует динамический двумерный масив, но мне хотя бы фрагмент кода, который выполняет задание, с вводом матрицы я знаком, пожалуста кто сможет помогите!
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.10.2009, 20:41
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Вывести номер строки матрицы с самой длинной последовательностью одинаковых элементов (C++):

Двумерный массив. Определить номер строки с самой длинной серией одинаковых элементов - C++
Всем привет! Нужна помощь в следующем задании: дана целочисленная прямоугольная матрица, определить номер строки с самой длинной серией...

Найти строку матрицы с самой длинной серией одинаковых элементов - C++
Нужно в матрице найти строку с самой длинной серией одинаковых элементов.Подскажите, пожалуйста, хоть идею как это сделать, а то в голове...

Поиск самой длинной цепочки из подряд идущих одинаковых элементов в массиве - C++
Помогите пожалуйста решить программу. Если можно как можно проще используя только циклы, ветвления , массивы и переменные. Сам не...

Файловые потоки: узнать номер самой длинной строки и её размер - C++
Я с файла считываю информацию, а мне нужно узнать номер самой длинной строки и её размер

Вывести размер самой длинной строки - C++
как вывести наибольшее кол-во символов через max не получается, и есть ли вообще такая функция "max" ? string a,b,c,f; cout...

Переделать функцию поиска самой длинной строки так, чтобы она правильно печатала размер произвольно длинной входной строки и воспроизводила ее - C++
Переделать головную функцию поиска самой длинной строки так, чтобы она правильно печатала размер произвольно длинной входной строки...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
valeriikozlov
Эксперт C++
4670 / 2496 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
12.10.2009, 20:46 #2
Посмотрите рядышком с Вашей темой, тема: "Двухмерные массивы(матрица символов)"
0
Determinant
2 / 2 / 0
Регистрация: 11.04.2009
Сообщений: 67
12.10.2009, 22:48  [ТС] #3
Да задание почти такое же, но я всё же не могу разобратся со своим, в том задании нужно вывести сами элементы массива, а мне необходимо вывести номер той строки в которой находится последовательность из одинаковых элементов. Когда я вместо элемента ставлю номер индекса программа выводит просто номер последней строки, и вообще тот код не очень понятен, например зачем в двумерном масиве используется три индекса i,j,k? Пожалуста, кто знает подскажите.
0
valeriikozlov
Эксперт C++
4670 / 2496 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
13.10.2009, 06:18 #4
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
#include <iostream.h>
#include <process.h>
#include <windows.h>
int n, m, **mas, i, j, y,  num_str, temp1, temp2, znach;
int main()
{
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    cout<<"Ââåäèòå êîëè÷åñòâî ñòðîê Г¬Г*Г±Г±ГЁГўГ*"<<endl;
    cin>>n;
    cout<<"Ââåäèòå êîëè÷åñòâî ñòîëáöîâ Г¬Г*Г±Г±ГЁГўГ*"<<endl;
    cin>>m;
    mas=new int*[n];
    for(i=0; i<n; i++)
        mas[i]=new int [m];
    cout<<"Ââåäèòå ýëåìåГ*ГІГ» Г¬Г*Г±Г±ГЁГўГ*:"<<endl;
    for(i=0; i<n; i++)
        for(j=0; j<m; j++)
        {
            cout<<"["<<i<<"]["<<j<<"] = ";
            cin>>mas[i][j];
        }
    num_str=0;
    temp2=0;
    for(i=0; i<n; i++)
    {
        for(j=0; j<m; j++)
        {
            znach=mas[i][j];
            temp1=0;
            for(y=j+1; y<m; y++)
                {
                    if(mas[i][y]==znach)
                        temp1++;
                    if(temp1>temp2)
                    {
                        temp2=temp1;
                        num_str=i;
                    }
                }
        }
    }
    cout<<"ÑòðîêГ* Г± Г±Г*ìîé äëèГ*Г*îé ïîñëåäîâГ*òåëüГ*îñòüþ:  "<<num_str+1<<endl;                           
    system("pause");    
    return 0;
}
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.10.2009, 06:18
Привет! Вот еще темы с ответами:

Найти номер строки матрицы, в которой находится самая длинная серия одинаковых элементов - C++
2.Данная прямоугольная целочисленная матрица. Определить: 1)сколько столбцов,которые содержат хотя б один нулевой элемент 2)номер...

Найти номер строки матрицы, в которой находится самая длинная серия одинаковых элементов - C++
Вот полное задание: 1) количество столбцов, содержащих хотя бы один нулевой элемент; 2) номер строки, в которой находится самая длинная...

Вывести строку с самой длиной последовательностью цифр подряд - C++
Write a program that finds the row in the given NxM matrix with longest sequence that contains same values. The &quot;sequence&quot; in this...

Вывести номер строки матрицы, содержащей равное количество положительных и отрицательных элементов - C++
Здравствуйте, помогите пожалуйста написать программу. Дана целочисленная матрица размера n × m. Вывести номер ее последней строки,...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
13.10.2009, 06:18
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru