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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 14, средняя оценка - 4.93
TheMachinist
 Аватар для TheMachinist
242 / 174 / 15
Регистрация: 14.06.2010
Сообщений: 422
#1

Консольный морской бой - C++

09.10.2010, 13:25. Просмотров 1800. Ответов 3
Метки нет (Все метки)

Привет всем.
Вот поле:
int Matrix[10][10];
Размещаем корабль на х = 5, y = 5:
Matrix[5][5] = 0;
0 значит на эту координату больше нельзя размещать корабль(координата занята).

Подскажите пожалуйста хороший алгоритм для установки значения 0 для всех 8 соседних координат
Matrix[5][4],Matrix[5][6],Matrix[4][5],Matrix[6][5],Matrix[4][4],Matrix[6][6],Matrix[4][6],Matrix[6][4]
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.10.2010, 13:25     Консольный морской бой
Посмотрите здесь:

Морской Бой C++
Морской бой C++
Консольный морской бой. Расстановка кораблей C++
C++ Консольный морской бой
C++ Морской бой
C++ Консольный морской бой, реализация циклами
Консольный морской бой. Stack overflow C++
C++ Морской бой C++
C++ Морской бой С++
C++ Морской бой
C++ Написать консольный морской бой с использованием ООП

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ForEveR
Модератор
Эксперт С++
 Аватар для ForEveR
7958 / 4720 / 319
Регистрация: 24.06.2010
Сообщений: 10,525
Завершенные тесты: 3
09.10.2010, 15:36     Консольный морской бой #2
NikolaWhite,

C++
1
2
3
4
5
6
7
8
9
for(int i=n-1; i<=n+1; ++i)
{
    for(int j=n-1; j<=n+1; ++j)
    {
         if(i==n&&j==n)
            continue;
         Matrix[i][j]=0;
    }
}
Не самый хороший, но вроде удовлетворяет условиям.
TheMachinist
 Аватар для TheMachinist
242 / 174 / 15
Регистрация: 14.06.2010
Сообщений: 422
09.10.2010, 16:15  [ТС]     Консольный морской бой #3
Спасибо конечно, но я прибегну к такому:
C++
1
Matrix[n][n-1] = Matrix[n][n] = Matrix[n][n+1] = Matrix[n-1][n-1] = Matrix[n-1][n] = Matrix[n-1][n+1] = Matrix[n+1][n-1] = Matrix[n+1][n] = Matrix[n+1][n+1] = 0;
Mencey
 Аватар для Mencey
147 / 94 / 7
Регистрация: 22.07.2010
Сообщений: 424
09.10.2010, 17:50     Консольный морской бой #4
Непровеял, но думаю работает.

C
1
2
3
4
5
6
7
8
...
int i;
for( i = 0; i < 9; i++ )
  if( i == 5 )
    continue;
  else
    matrix[centery-1+(i/3)][centerx-1+(i%3)];
...
Yandex
Объявления
09.10.2010, 17:50     Консольный морской бой
Ответ Создать тему
Опции темы

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