Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
C++ Чтение из файлов. Отсеивание символов https://www.cyberforum.ru/ cpp-beginners/ thread627215.html
Добрый день. Необходимо реализовать программу, которая открывает файл и считывает числовые значения. К примеру, в файле написано: Mass = 70, Weight = 40. Необходимо, чтобы программа отсеяла все символы и поместила в массив 70 и 40. Вот я попробовал написать программку, она запускается, но когда доходит до шага вывода информации на экран возникает ошибка: "vector subscript out of range". Что...
C++ STL, push
Такое дело: написал класс, однако не работает функция push для очереди из STL queue . Объявлял объект как queue <goods> q; class goods{ public: int amount; int num; char* name; void input() {
C++ Как подключить dll и lib SDL? https://www.cyberforum.ru/ cpp-beginners/ thread627197.html
как подключить к проекту(в Visual Studio 2010) библиотеку SDL?// есть SDL.dll, SDL.lib и SDLmain.lib и еще папка с include'ами
C++ Как экранировать кавычки и другие опасные символы для записи в БД В переменной типа(класса) string иногда бывают кавычки типо " или ' как можно быстро проверить содержание переменной и как то экранировать чтобы можно было нормально записать все в базу данных Postgres знаю есть PQexecParams но не могу найти примеров записи в БД на с++ то что есть на С очень сложно понять и не компилируется нужны нормальные переменные string без всяких char* итд https://www.cyberforum.ru/ cpp-beginners/ thread627168.html
C++ Передача параметра в потоки
Добрый день уважаемые форумчане! Подскажите как правильно сделать передачу параметров в поток. В качестве параметра нужно передать число. Потоки создаю в цикле, хотя собственно вот пример кода. #include <Windows.h> #include <process.h> unsigned __stdcall potok(void* Param) { static int p = (int)Param;
C++ Найдите минимальный и максимальный элемент массива и поменяйте их местами https://www.cyberforum.ru/ cpp-beginners/ thread627151.html
прошу помочь найдите минимальный и максимальный элемент массива и поменяйте их местами
C++ Книги, статьи, сайты по ООП графике Доброго времени суток, форумчане! Посоветуйте, пожалуйста, сайт или книгу, на русском языке, где исчерпывающе и доходчиво объяснено, лучше на примерах, как использовать ООП в графике, желательно на C++, но если материал действительно стоящий, то можно и на другом языке программирования (будет решаться задача о моделировании движения частиц разных форм и свойств, код, видимо, придется писать с... https://www.cyberforum.ru/ cpp-beginners/ thread627146.html Сформировать и отсортировать массив C++
Прошу помочь буду блогодарна ,заранее спасибо!! Из данного массива и другого массива того же типа, но другой размерности сформируйте общий массив и отсортировать его по убыванию
C++ Найти сумму элементов массива Прошу помочь буду блогодарна ,заранее спасибо!! Найти сумму элементов массива,расположенных после первого положительного элемента https://www.cyberforum.ru/ cpp-beginners/ thread627126.html C++ Изменить порядок следования элементов массива Прошу помочь буду блогодарна ,заранее спасибо!! Изменить порядок следования элементов массива на противоположный https://www.cyberforum.ru/ cpp-beginners/ thread627124.html
C++ Вычислить количество элементов массива
Зарание спс 1.Вычеслить количество элементов массива,равных 0 2.Изменить порядок следования элементов массива на противоположный 3.Найти сумму элементов массива,расположенных после первого положительного элемента 4.Из данного массива и другого массива того же типа, но другой размерности сформируйте общий массив и отсортировать его по убыванию
C++ Количество элементов массива,равных 0 https://www.cyberforum.ru/ cpp-beginners/ thread627115.html
Прошу помочь буду блогодарна ,заранее спасибо!! Вычеслить количество элементов массива,равных 0
20 / 19 / 3
Регистрация: 20.02.2012
Сообщений: 526
Записей в блоге: 1
0

Игра "Морской бой" Рассстановка кораблей - C++ - Ответ 3290140

22.07.2012, 16:47. Показов 3255. Ответов 10
Метки (Все метки)

Author24 — интернет-сервис помощи студентам
Пишу игру "Морской бой". Нужно пока что только расставить корабли. На данный момент логика следующая. Все поле забито нулями (ноль - пустая ячейка).
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0

Если начинаю строить корабль, то сначала рэндомно выбираю координаты и тут же рассчитываю (в зависимости от количества палуб и направления), нет ли "по соседству" других кораблей, т.е. проверяю (отмечено иксами, где большие иксы - предполагаемое положение корабля)

0 0 0 0 0 0 0 0 0 0
0 х х х х х 0 0 0 0
0 х Х Х Х х 0 0 0 0
0 х х х х х 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0

В нижеприведенном коде не получается кое-что сделать. На данный момент не получается поставить корабли, чтобы они не прикасались друг к другу
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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
#include <iostream>
#include <time.h>
#include <stdlib.h>
#include <Windows.h>
 
 
using namespace std;
 
//Класс "Пустое поле", т.е. забитое нулями
class A
{
private:
    int i,j;
public:
    int n[10][10];
    int s[12][12];
    A()
    {
        for (i=0; i < 12; i++)
        {   
            for(j=0; j < 12; j++)
            {
                s[i][j] = 0;
            }
        }
        for (i=0; i < 10; i++)
        {   
            for(j=0; j < 10; j++)
            {
                n[i][j] = s[i+1][j+1];
            }
        }
    }
};
 
 
class B: public A
{
public:
    int x, y, z, i ,j, k, s;
        int str(int palub, int c)
        {
            int z = 0;
            if (c==0)
            {
                z = 9 - palub;
            }
            else
                z = 9;
            srand(int (time(NULL)));
            Sleep(10);
            x = rand()%z;
            return x;
        }
        int stb(int palub, int c)
        {
            int z = 0;
            if (c!= 0)
            {
                z = 9 - palub;
            }
            else
                z = 9;
            srand(int (time(NULL)));
            Sleep(10);
            y = rand()%z;
            return y;
        }
        int napr()
        {
            srand(int (time(NULL)));
            Sleep(10);
            z = rand()%2;
            return z;
        }
        int proverka_n(int a, int b, int palub, int c)
        {
            int k = 0;
            int temp = 0;
            int temp_a = 0;
            int temp_b = 0;
            if (c == 0)
            {
                temp_b = palub + 2;
                temp_a = 2;
            }
            else
            {
                temp_a = palub + 2;
                temp_b = 2;
            }
 
            for(i = a - 1; i < a + temp_b; i++)
            {
                for(j = b - 1; j < b + temp_a; j++)
                {
                    k += n[i][j];
                }
            }
            return k;
        }
        int fun(int palub)
        {
            int c=napr();
            int a=str(palub, c);
            int b=stb(palub, c);
            k = proverka_n(a,b,palub,c);
            if(k==0)
            {
                for(i = 0; i < palub; i++)
                {
                    n[a][b] = 1;
                    if(c==0)
                    {
                        b++;
                    }
                    else
                    {
                        a++;
                    }
                }
            }
            else 
            {
                a,b,c;
                fun(palub);
            }
            return 0;
        }
 
        int fun5()
        {
            for (i=0; i < 10; i++)
            {
                for(j=0; j < 10; j++)
                {
                    cout << n[i][j] << ' ';
                }
                cout << endl;
            }
            return 0;
        }   
};
 
 
int main()
{
    B b;
    for(int i=0;i<1;i++)
    {
        b.fun(4);
    }
    for(int i=0;i<2;i++)
    {
        b.fun(3);
    }
    for(int i=0;i<3;i++)
    {
        b.fun(2);
    }
    for(int i=0;i<4;i++)
    {
        b.fun(1);
    } 
    b.fun5();
    return 0;
}
То есть получается все время что-то типа этого
0 0 0 0 0 0 0 0 0 0
0 1 0 0 1 0 0 1 0 0
0 1 0 0 1 0 0 0 0 0
0 1 0 0 0 0 1 1 1 1
0 1 1 1 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
1 0 0 0 1 0 1 0 1 0
1 0 0 0 1 0 0 0 0 0
0 0 0 0 0 0 1 0 0 0
0 0 0 0 0 0 0 0 0 0

Вернуться к обсуждению:
Игра "Морской бой" Рассстановка кораблей C++
0
Заказать работу у эксперта
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.07.2012, 16:47
Готовые ответы и решения:

Расстановка кораблей (морской бой)
Доброго времени суток, при расстановке 2х палубных кораблей возникает проблема... При выборе точки...

Консольный морской бой. Расстановка кораблей
Добрый вечер, уважаемые форумчане. Хочу написать консольный морской бой. Начал с функции...

Морской бой. Ф-ция автоматической рассатновки кораблей.
Добрый день, ув. форумчане! Есть задание написать консольный морской бой. Есть задача расстановки...

Проверить правильность расстановки кораблей. Морской бой
Есть матрица NxM, где расставлены корабли. Корабли не стоят на краю матрицы, кол-во 4-х клеточных...

Морской бой - программа зацикливается на расстановке кораблей
Нужно написать курсовую(игру). Решила написать морской бой(пока что консольно). Написала программу...

10
22.07.2012, 16:47
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.07.2012, 16:47
Помогаю со студенческими работами здесь

Морской бой.Обработка массива. Расстановка кораблей
Пытаюсь написать морской бой. Свою карту я подгружаю из файла. Проблема в том, что у меня не...

Морской бой: расставляется кораблей больше, чем положено
Здравствуйте! Пишу игру &quot;Морской бой&quot; в консоли, и попалась одна неприятная ситуация. Есть функция...

Создать класс, реализующий хранилище кораблей для игрока в «Морской бой»
Всем привет. Это задача по теме контейнерные классы. Не бейте только за глупый вопрос. Но в данной...

Случайное распределение кораблей по полю в игре "морской бой"
Привет всем кто читал мой предыдущий пост про векторы в морском боем, в той же фунции появилась...

Игра Морской бой
Дан двумерный массив целых чисел a a из n n строк и m m столбцов. Требуется определить...

Игра Морской Бой
#include &lt;conio.h&gt; #include &lt;stdlib.h&gt; #include &lt;iostream.h&gt; #include &lt;dos.h&gt;Kletka ...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru