Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.64/11: Рейтинг темы: голосов - 11, средняя оценка - 4.64
0 / 0 / 1
Регистрация: 06.11.2014
Сообщений: 9
1

В (0, 1)-матрице подсчитать число изолированных 0-областей

10.05.2015, 18:47. Показов 2076. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
В (0, 1)-матрице подсчитать число изолированных 0-областей, т.е. областей, состоящих из одних нулей. Отметим, что 0-область может состоять только из одного нулевого элемента. Например, для (0, 1)-матрицы вида А5х5 :
1 0 1 0 0
1 1 1 1 0
0 0 0 1 0
1 0 1 1 0
1 0 1 1 0 таких областей будет три.

Написал реализацию с помощью рекурсивной функции с ошибкой, помогите исправить.

Сам метод.
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
  public void rekurs(int j, int i)
        {
            if (pervyi_null)
            {
                p += 1;
                pervyi_null = false;
            }
            if (j < 0 || j > n - 1 || i < 0 || i > n - 1)
                return;
            if (zeromass[j, i] == 0)
            {
                zeromass[j, i] = 2;
                rekurs(j - 1, i);
                rekurs(j + 1, i);
                rekurs(j, i + 1);
                rekurs(j, i - 1);
            }
        }
Цикл
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
for (int j = 0; j < a.zeromass.GetLength(0); j++)
            {
                for (int i = 0; i < a.zeromass.GetLength(1); i++)
                {
                    if (a.zeromass[i, j] == 0)
                    {
                        a.pervyi_null = true;
                        a.rekurs(j, i);
                    }
                    
 
                }
 
            }
Вот ошибки. Неправильный подсчёт, нули не закрашиваются.
В (0, 1)-матрице подсчитать число изолированных 0-областей


Добавлено через 6 минут
В (0, 1)-матрице подсчитать число изолированных 0-областей
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.05.2015, 18:47
Ответы с готовыми решениями:

В (0, 1)-матрице подсчитать число изолированных 0-областей
Добрый день форумчане!Обращаюсь по поводу уже созданной теме, а именно: В (0, 1)-матрице...

Подсчитать число нулевых элементов во всей матрице
Здраствуйте!!! Задание такое:Если столбцы заданной прямоугольной целочисленной матрицы расположены...

Подсчитать число нулевых элементов во всей матрице
она выводит только последнее в коде сообщение. условие такое: если столбцы прямоугольной...

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

2
0 / 0 / 1
Регистрация: 06.11.2014
Сообщений: 9
11.05.2015, 03:36  [ТС] 2
Нашёл причину: в цикле время сверки с нулём перепутал переменные, указывающие индексы, лол.
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
for (int j = 0; j < a.zeromass.GetLength(0); j++)
            {
                for (int i = 0; i < a.zeromass.GetLength(1); i++)
                {
                    if (a.zeromass[j, i] == 0)
                    {
                        a.pervyi_null = true;
                        a.rekurs(j, i);
                    }
                    
 
                }
 
            }
0
0 / 0 / 0
Регистрация: 24.04.2016
Сообщений: 3
24.04.2016, 15:30 3
Добрый день bdgwsh!
Очень надеюсь на вашу помощь.Мне в курсовой работе попалась ваша задача.Если вам не сложно,не могли бы вы написать ту часть кода которая отвечает за нахождение изолированных нулевых областей в уже введенной матрице.
0
24.04.2016, 15:30
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.04.2016, 15:30
Помогаю со студенческими работами здесь

Подсчитать число нулевых элементов во всей матрице при выполнении условия
Разработать программу, выделив процедуры. Если столбцы заданной прямоугольной целочисленной...

В матрице Z(N) подсчитать количество нулевых чисел, каждое нулевое число заменить символом P
В матрице Z(N) подсчитать количество нулевых чисел, каждое нулевое число заменить символом P....

Выделение областей другим цветом в матрице
Помогите напишите код Дана матрица: 00000 00000 00000 00000 00000 Нужно чтобы выделил...

Определить количество областей, заполненных числами «1» и размер наибольшей области в матрице
Дано клеточное поле размера 10x10, заполненное числами «0» и «1». Определить количество областей,...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru