C/C++ - Цикл?(
|
Новый участник Сообщения: 17 |
Профиль | Отправить PM | Цитировать Здравствуйте! Такой вопрос как реализовать цикл который бы делал так:
есть массив. генерируеться положение числа 2. 00000 00000 00200 00000 00000 Чтобы цикл обрисовал двойку 1 00000 01110 01210 01110 00000 |
|
Отправлено: 01:29, 07-12-2012 |
Будем жить, Маэстро... Сообщения: 6694
|
Профиль | Сайт | Отправить PM | Цитировать Определить индекс массива где находится двойка и запомнить его, пусть это будет [2][2] (цикл обхода массива и условие если, равно 2 мы нашли индексы местоположения двойки)
Дальше "шагаем" на единицу вверх [2-1][2] вниз [2+1][2] в право [2][2+1] влево [2][2-1] вверх влево [2-1][2-1] вниз влево [2+1][2-1] вверх в право [2-1][2+1] вниз в право [2+1][2+1] заполняем эти индексы единичкой. Естественно не забываем проверять выход за диапазоны массива если двойка будет в углу или с краю. |
------- Последний раз редактировалось Drongo, 08-12-2012 в 01:34. Причина: Поправил "шажочки" :) Отправлено: 03:00, 07-12-2012 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 17
|
Профиль | Отправить PM | Цитировать Я это понимаю... Я могу по отдельности вводить условие установки/проверки выхода за массив) 1.. Я не могу вкурить как циклом организовать.
|
Отправлено: 10:52, 07-12-2012 | #3 |
Будем жить, Маэстро... Сообщения: 6694
|
Профиль | Сайт | Отправить PM | Цитировать SAU-trade, цикл вам нужен только для определения индексов двоечки.
... const int row = 10; const int column = 10; int array[row][column] = {0}; // Здесь весь массив забит нулями, вы введёте свои данные // Заполнение массива for(int i = 0; i < row; i++){ for(int j = 0; j < column; j++){ if(array[i][j] == 2 ){ // Если равно двойке, мы нашли индексы и цикл нам больше не нужен. // Шагаем обводкой и проверкой // условия проверки выхода за диапазон и присваивание единички если всё гуд if(j-1 < column) // вверх array[i][j-1] = 0; // вниз ... } } } ... |
------- Отправлено: 14:15, 07-12-2012 | #4 |
Необычный Сообщения: 4463
|
Профиль | Сайт | Отправить PM | Цитировать В качестве оффтопа.
SAU-trade, а этот вопрос с темой про морской бой никак не связан? |
|
------- Отправлено: 19:57, 07-12-2012 | #5 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
.NET - цикл do-while c# | rom4ik_93@vk | Программирование и базы данных | 1 | 24-03-2012 01:11 | |
CMD/BAT - [решено] Цикл FOR | mark23 | Скриптовые языки администрирования Windows | 2 | 15-07-2011 10:52 | |
C/C++ - Задача на цикл. | Hardcore | Программирование и базы данных | 6 | 27-09-2010 18:00 | |
C/C++ - Цикл | ganselo | Программирование и базы данных | 4 | 31-10-2008 12:13 |
|