Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.56/9: Рейтинг темы: голосов - 9, средняя оценка - 4.56
1 / 1 / 0
Регистрация: 13.10.2015
Сообщений: 28
1

Найти номер последней из строк матрицы, содержащих максимальное количество одинаковых элементов

20.10.2015, 20:42. Просмотров 1693. Ответов 2
Метки нет (Все метки)


Дана целочисленная матрица размера M × N. Найти номер последней из ее строк, содержащих максимальное количество одинаковых элементов.Подскажите какая ошибка есть в программе?
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
  int d = 0, c = 1, cc = 1, k, i, j, vcc = 1;
            const int M = 4, N = 4;
            int[,] A = new int[M, N] {
                {3,3,3,6},
                 {5,5,5,5},
                 {2,8,2,9},
                 {8,6,6,6}};
            for(i=0;i<N;i++){
    for(j=0;j<M-1;j++){
           for(k=M;k>j;k--){
            if(A[i,k]==A[i,j])
                c++; 
               
                             }
            if(c>cc)cc=c;
            c=1;
                                   }
        if(cc==vcc || cc>vcc)d=i;
        if(vcc<cc)vcc=cc;
            cc=1;
 
 
            } Console.WriteLine();
        }
        Console.WriteLine("максимальное количество одинаковых элементов:");
                               
    }
    }}
1
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.10.2015, 20:42
Ответы с готовыми решениями:

Найти номер первого из столбцов матрицы, содержащих максимальное количество одинаковых элементов
Доброго времени суток! Задание такое: Дана целочисленная Матрица размера M на N (пользователем...

Найти номер последней из строк матрицы, содержащих максимальное количество одинаковых элементов
/ Дана целочисленная матрица размера M.N. Найти номер последней из ее строк, содержащих...

Найти номер последней из строк матрицы, содержащих максимальное количество одинаковых элементов
Дана целочисленная матрица размера M × N. Найти номер последней из ее строк, содержащих...

Найти номер последней из строк матрицы, содержащих максимальное количество одинаковых элементов
Можете скинуть код от этой задачи плз Matrix40. Дана целочисленная матрица размера M × N....

__________________
Помогаю в написании курсовых работ и дипломов здесь.
Записывайтесь на профессиональные курсы С#-разработчиков‌
2
5 / 5 / 11
Регистрация: 25.01.2015
Сообщений: 205
25.10.2015, 02:34 2
Вот, ты скорее всего даже не прочитаешь, но я чисто для опыта решил ^^
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
 static void Main(string[] args)
        {
            
            int k = 0; 
            int b=0;
            int h=0;
            int l=0;
            const int  N = 4;
            int[] arr = { 3, 3, 3, 6, 5, 5, 5, 5, 2, 8, 2, 9, 8, 6, 6, 6 };  // это одномерный массив с числами, которые у тебя в двумерном
            
            int[,] A = new int[N, N] {
                {3,3,3,6},
                 {5,5,5,5},
                 {2,8,2,9},
                 {8,6,6,6}};
            
            {
                for (int i = 0; i < N; i++)              // цикл строки
                {
                    for (int j = 0; j < N; j++)              // цикл по столбцу
                    {
                       
                        {
 
                                if (A[i, j] == arr[b+i])            // условие , если A[i,j] = тому , что у тебя находится в одномерном в индексе 0,1,2,3
                                {
                                    k++;          // то флаг К больше на 1
                                }
                        }
 
                        if (h < k)      // условие если H ,равное нулю , меньше К 
                        {
                            h = k;           // то H = тому повторению чисел , которое было в строке
                            l = i;        // это флаг на ту строку, в которой , в данный момент цикла, находится больше всех повторений
                        }
                        
                       
                        if(j==3)     // если строка закончилась 
                        {
                            k=0;       // то число повторений обнуляется
                            b+=4;        // а индекс в одномерном массиве сдвигается на 4, т.е на строку. Если захочешь сделать массив другого размера, 
                                          // то b+=N; где Н - размер.
                        }                                                                                                       
                    }
                }
                Console.Write("Одинаковых чисел больше всего в строке:  "+(l+1) );  //+1 потому что это индекс, начинается с нуля 
                 }               
                 Console.ReadKey();             
        }
    }
    }
Добавлено через 26 минут
Это перевод двумерного массива в одномерный, а то я тебе там вручную в инициализации ввел

C#
1
2
3
4
5
6
7
8
 for (int i = 0; i < 10; i++)
            {
                for (int j = 0; j < 10; j++)
                {
                    arr[ch] = A[i, j];  // ch=0
                    ch++;
                }
            }
0
Модератор
880 / 789 / 326
Регистрация: 03.02.2015
Сообщений: 5,104
Записей в блоге: 9
25.10.2015, 02:57 3
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
int[] arr1 = new int[100];
            int[,] arr2 = new int[10, 12];
            Random rnd = new Random();
            
            for (int i = 0; i < 10; i++)
            {
                for (int j = 0; j < 12; j++)
                    arr2[i, j] = rnd.Next(-100, 100);
            }
 
            int[] tmpRep = new int[10];
 
            for (int i = 0; i < 10; i++)
            {
                int[] tmp = new int[12];
 
                for (int j = 0; j < 12; j++)
                    tmp[j] = arr2[i, j];
 
                tmpRep[i] = tmp.Where(x => tmp.Count(s => s == x) > 1).ToArray().Length;
            }
        }
В tmpRep получим число повторений в строках.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.10.2015, 02:57

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь или здесь.

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

Найти номер последней из строк матрицы, содержащих максимальное количество одинаковых элементов
Дана целочисленная матрица размера M × N. Найти номер последней из ее строк, содержащих...

Найти номер последней из строк матрицы, содержащих максимальное количество одинаковых элементов
Дана целочисленная матрица размера M х N. Найти номер последней из ее строк, содержащих...

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


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

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