Форум программистов, компьютерный форум, киберфорум
C++/CLI Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
-5 / 0 / 2
Регистрация: 06.10.2015
Сообщений: 36

Не могу разобраться с рекурсией

13.04.2019, 14:04. Показов 488. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Суть такова, что есть массив matrix. По краям у которого стоят единички. Нужно рекурсивно заполнить его двойками, не выходя за единички. Отслеживая значения переменных выходит, что зацикливается на (1, 26)(1, 27)(не важно откуда начинать. всегда на этом месте.
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
private: array<Int32, 2>^ matrix;
private: System::Void MyForm_Load(System::Object^  sender, System::EventArgs^  e)
{
    sideValue = this->picture->Width / PixelSize;//=29
    matrix = gcnew array<Int32, 2>(sideValue, sideValue);
}
private: void FillArea(int pX, int pY)
{
    if ((pX < sideValue) && (pY < sideValue) && (pX >= 0) && (pY >= 0))
    if (matrix[pX, pY] == 0)
    {
        matrix[pX, pY] == 2;
        Console::Write("{0} ", pX);
        Console::WriteLine("{0} ", pY);
        Sleep(100);//Если его тут не будет, то программа сразу вылетает
        if (pY + 1 < sideValue)
            if (matrix[pX, pY + 1] == 0) FillArea(pX, pY + 1);
        if (pX - 1 > 0)
            if (matrix[pX - 1, pY] == 0) FillArea(pX - 1, pY);
        if (pY - 1 > 0)
            if (matrix[pX, pY - 1] == 0) FillArea(pX, pY - 1);
        if (pX + 1 < sideValue)
            if (matrix[pX + 1, pY] == 0) FillArea(pX + 1, pY);
    }
    return;
}
Добавлено через 2 часа 35 минут
Цитата Сообщение от dvoechnik Посмотреть сообщение
matrix[pX, pY] == 2;
А вот и ошибочка. Прям как искать точку с запятой))
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
13.04.2019, 14:04
Ответы с готовыми решениями:

Не могу разобраться с рекурсией
def factorial(x): def iter(prod, counter): if counter &gt; x: return prod else: return iter(counter*prod,counter+1) ...

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

Помогите разобраться с рекурсией...
Здравствуйте, нашел решение задачи &quot;ханойских башен&quot;, проблема с пониманием. &lt;...&gt; tn(n,1,2,3); &lt;...&gt; ...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
13.04.2019, 14:04
Помогаю со студенческими работами здесь

Задали работу, не могу разобраться. Используется делфи 10, не могу разобраться, как это сделать
В одномерном массиве, состоящем из n вещественных элементов, вычислить: минимальный элемент массива и сумму элементов массива,...

Разобраться с рекурсией: stack overflow
#include&lt;iostream&gt; #include&lt;vector&gt; #include&lt;string&gt; #include&lt;math.h&gt; #include&lt;cmath&gt; #include&lt;algorithm&gt; using namespace std; ...

Написал программку с рекурсией. Не могу понять, почему не изменяется аргумент.
Еще раз здравствуйте. Днем будучи в очереди которая затянулась на 2 часа, решил побаловаться с кодом. Написал программку(если ее так можно...

Не могу разобраться разобраться с кодом меню
Добрый день. Я понимаю, что тут все, наверное, элементарно. Но я только начала изучение js и пока для меня все страшно и сложно. Проблема...

Приветствую, не могу разобраться с кодом программы и не могу сделать .obj файл
.model tiny; нужно будет получить исполняемый файл формата СОМ .code org 100h start: mov ax, 3 int 10h ; устанавливаем...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru