begin process at 2012 02 11 20:22:45
  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 Récuération chaine de caractère taille variable stdin [ par omarino_007 ] Bonsoir, Je cherche a enregistrer une chaine de caractère (en pratique c'est le résumé d'un livre pour un projet de gestion de bibliothèque), que j'éc Taille de tableau de string de taille variable [ par laurent134 ] Bonjour, J'ai un petit soucis de débutant : comment determiner la taille (nombre d'élément) d'un tableau de string, sachant que les string n'ont pas Projet jeux d'échecs : déplacement d'une pièce dans une case [ par Razily ] Bonjour à tous , je débute en C++ et je travaille sur projet de jeu d'échec [^^sad1] en ce moment ; dans un premier je voulais simplifier les chose en STL : Comment afficher les élements dans un vector dans un endroit voulu [ par Razily ] Bonjour à tous ; je voudrai avoir de ce code un affichage de ce genre: [code=cpp] 1 a b c d e f g h 1 8 t c f d r f c t 8 7 p p p p p p p p 7 6 _ _ Taille d'une chaine de caracteres + malloc [ par underprog ] Bonjour (ou plutot bonsoir ^^) Mon problème est simple : je veux récupérer le contenu d'un fichier (lecture en mode binaire donc aucun caractère n'es Augmenter la taille d'une pile [ par ssana83 ] Bonsoir, comment je peux augmenter la taille d'une pile en visual c++ pour éviter le problème de débordement de pile. Merci. le contenu d'une case mémoire dont on connait son adresse [ par tahsgh ] Bonjour, pouvez vous me donnez un outil (commande Linux, code en C, code en assembleur...) qui permet d'extraire le contenu d'une case mémoire dont on


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

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 : 3,557 sec (4)

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