begin process at 2010 02 10 03:53:19
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Divers

 > 

Débutant(e)

 > 

aide placement aleatoire sur une grille


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

aide placement aleatoire sur une grille

samedi 3 mai 2008 à 16:59:13 | aide placement aleatoire sur une grille

dyslesia

Bonjour à tous,
Dans le cadre de nos cours de C je doit faire un petit projet, et j'ai choisi de réaliser une bataille navale en graphique (j'utilise allegro, faute de connaitre autre chose...)
Et je bloque totalement à la fonction qui place aléatoirement les bateaux sur la grille (plus particulièrement au cas ou un bateau viendrait à en croiser un autre)

voila la boucle que j'ai deja faite mais qui ne marche pas... :

for(Tbateaux=0;Tbateaux<5;Tbateaux++)
    {
        direction = nb_aleatoire_0_1(); //on genere la direction du bateau

        if(direction == 0) //si direction en x
        {
            i = 0;
            while(x[Tbateaux]+(Tbateaux+1)>9&&x[Tbateaux]-(Tbateaux+1)<0) //si ca depasse a gauche ou a droite
            {
                while(bateauxPJ[x[Tbateaux]+i++][y[Tbateaux]] == 1) //si le bateau a placer en croise un autre
                {
                    x[Tbateaux] = nb_aleatoire_1_10();
                    y[Tbateaux] = nb_aleatoire_1_10();
                    if(i>Tbateaux+1) i = 0;
                }
            }

            for(i=0;i<=Tbateaux+1;i++) //une fois qu'on est sur que les bateaux sont bien placés, on les inscrits réellement dans le tableau
            {
                bateauxPJ[x[Tbateaux]+i][y[Tbateaux]] = 1;
            }

        }
    }


Pour indication, les tableaux x[] et y[] correspondent aux cases de départs d'un bateau :
     x[0] = n° de case en x du minier (taille : 2)
     x[1] = n° de case en x du sous-marin (taille : 3)
     x[2] = n° de case en x de la fregate (taille : 4)
     x[3] = n° de case en x du destroyer   (taille : 5)
     x[4] = n° de case en x du porte-avion (taille : 6)
    la meme chose en y.
Je suis débutant( de moin en moin ), excusez-moi si le code n'est pas tres propre.
Merci d'avance pour votre aide!


Cette discussion est classée dans : taille, case, aleatoire, bateau, tbateaux


Répondre à ce message

Sujets en rapport avec ce message

Le getch() ne fonctionne pas comme je veux [ par kobee12 ] Bonjour à tous,j'ai un ch'tit programme avec une fonction de saisie. J'utilise la fonction getch() pour récupérer chaque caractère que l'on tape.J'uti Recuperer la notification EN_CHANGE [ par KinNoShishi ] Bonjour à tous, Je suis dans impasse depuis plusieurs heures maintenant... Je n'arrive pas à récupérer le message EN_CHANGE qui me permettrait de pou savoir quel case d'un tableau bidimensionel est lié au clic de la souris [ par juju116 ] bonjour j'ai un petit souci de comprehension j'ai un tableau declaré ainsi: int tableau[3][3]; tout mes cases sont intialisé à zero à l'aide de deux b Comment fait-on pour changer la police et la taille dans une editbox?? [ par Hakim ] merci d'avance.Hakim. randomize [ par niconico ] salut à tous, je débute en C++ et j'utilise VC++ pour compiler mes prog :le prob :avec ce petit programe (plus bas)il me sort 2 erreurs :error C2065: [VC++] Taille du text dans une application console [ par Cybmat ] SalutVoila je voudrai savoir comment on change la taille du text ecrit dans uneapplication console avec printf() .Merci d'avance Bouton " fuyant" & modif taille d'un bouton [ par tovey ] Salut à tous,Pour un projet en C++, je cherche le moyen de déplacer un bouton à l'approche du pointeur de la souris ...Ainsi que de réduire la taille Lire la taille d'un fichier avec la DTA [ par metman ] Comment pouvons-nous avoir la taille d'un fichier a partir des octets 26 27 28 29 de la DTA ?Intéruption 21hfonction 4foctect 26 - 27 = mot faible de Qui veut gagné 50Frs!!!!!!!!!!!!!! [ par Akil ] Bonjour à tousJe cherche quelqu'un qui sait bien programmer en langage C++ et Vb.J'ai un projet d'éditeur de texte Farsi (Righttoleft)en C++ et je vou Tromper windows ! (taille reelle : 1Ko ; taille avec simulation : 650Mo) [ par Xs ] salut !au lieu de creer reelement des fichiers extrements lourd pour gfaire du share, j'aimerais faire comme la protection de CD : oversize en un mot


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,076 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales