Форум программистов, компьютерный форум, киберфорум
Наши страницы

зацикливание - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Определить длину отрезка в случае, если он лежит в первом квадранте http://www.cyberforum.ru/cpp-beginners/thread430565.html
Дан отрезок с координатами точек А (X1 , Y1) и В ( X2, Y21 ) .Написать программу, определяющую его длину в случае, если этот отрезок лежит в первом квадранте. В противном случае вывести на экран...
C++ Как сделать шаблон, с параметром-классом - потомком определённого класса? Хочется сделать шаблон с параметром-классом, который обязан реализовывать определённый интерфейс. class IService { public: virtual int main () = 0; virtual void handler (int) = 0; }; http://www.cyberforum.ru/cpp-beginners/thread430536.html
C++ Вывести на экран дату следующего дня
ребят помогите пожалуйста с кодом, Ввести дату в формате ДД,ММ,ГГГГ.Вывести на экран дату следующего дня заранее спасибо.с языком си туго очень
Eclipse: Symbol 'cout' could not be resolved C++
Поставил себе Эклипс для общего развития, так сказать, но не могу разобраться, чего он хочет от меня. такой код: #include <iostream> using namespace std; int main() { cout << "Hello World"...
C++ Сформировать новый массив из двух исходных по данному правилу http://www.cyberforum.ru/cpp-beginners/thread430518.html
Даны два одномерных массива A и B размерности 12. Вычислить массив C, если известно, что первый элемент этого массива равен сумме первого элемента массива A и последнего элемента массива B, второй...
C++ не могу понять,почему не идет #include "stdafx.h" #include <iostream> #include <stdio.h> #include <math.h> struct crs Matrix { int N; int Nz; double*value; подробнее

Показать сообщение отдельно
vetal10
35 / 35 / 5
Регистрация: 25.05.2010
Сообщений: 211

зацикливание - C++

18.01.2012, 15:32. Просмотров 360. Ответов 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
int k=1;
while(k<5){
        for(int j=(5-k);j>0;j--)
            setShip(k);
        k++;
    }
 
 
void setShip(const int deck){
    bool isSet=false;
    srand(time(NULL));
    while(!isSet){
        int str=rand()%10;
        int col=rand()%10;
        int dir=rand()%2;
        switch(dir){
            case 0:
                if(!ships[str][col+deck-1]){
                    if(checkAround(str,col,dir,deck)){
                        for (int i=0;i<deck;i++)
                            ships[str][col+i]=true;
                        isSet++;
                    }
                }break;
            case 1:
                if(!ships[str+deck-1][col]){
                    if(checkAround(str,col,dir,deck)){
                        for (int i=0;i<deck;i++)
                            ships[str+i][col]=true;
                    isSet++;
                    }
                }
        }
    }
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.