IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C Discussion :

Bataille Navale à l'aide d'un tableaux 2D


Sujet :

C

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Etudiant en Infomatique
    Inscrit en
    Septembre 2019
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : Suisse

    Informations professionnelles :
    Activité : Etudiant en Infomatique

    Informations forums :
    Inscription : Septembre 2019
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Bataille Navale à l'aide d'un tableaux 2D
    Bonjour,

    Alors voilà, j'essaie de faire une bataille navale plutôt basique, et je voudrais qu'au moment où l'utilisateur a trouvé tous les bateaux sur le tableau que la boucle se stop. Et après bon nombre d'essais infructueux je suis perdu...Auriez-vous un conseil, une piste que je devrais suivre ?
    P.S je suis plutôt débutant dans le domaine soyez indulgent s.v.p.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    int main()
    {
        int tab[10][10];
        int i,j,k,m,C,L;
        int coup = 0;
        int Colonne = 10,Ligne = 10;
     
     
     
     
        for(i=0;i<Ligne;i++) //création de la grille de base du jeux composé de 0 pour l'eaux
        {
            for(j=0;j<Colonne;j++)
            {
                tab[i][j]=0;
            }
        };
     
        tab[4][4]=1; //mise en place d'un bateaux pour les testes ceux ci sont représenter pars des 1
     
     
        for (k=0;k<1;k++) //boucle du jeux principale
        {
            printf(" Entrer coordonner bateaux: ");
            scanf("%d %d",&C, &L);  //prise des coordonnée du user
            printf("%d",tab[C][L]);
            if (tab[C][L]==0)
            {
                printf("\nlouper!");
                tab[C][L]=3;            //comparaison des coordonnée user avec les points sur le  tableaux
            }else if (tab[C][L]==1)
            {
                printf("\nToucher !");
                tab[C][L]=2;
            }
            coup++;
        };
     for(i=0;i<Ligne;i++)
        {
            printf("\n");
            for(j=0;j<Colonne;j++)      //affichage de la grille de jeux une fois la partie terminer 
            {
                printf("%3d",tab[i][j]);
            }
        }
     
        return 0;
    }

  2. #2
    Membre éclairé
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Septembre 2015
    Messages
    204
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Septembre 2015
    Messages : 204
    Points : 839
    Points
    839
    Par défaut
    d'après ton code :
    0 = case vide non encore jouée
    1 = morceau de bateau non encore touché
    2 = morceau de bateau touché

    si tu veux faire un truc simple :
    tu mets en place un compteur des morceaux de bateau non encore touchés
    quand un bateau est touché, tu décrémentes ce compteur
    dès que ce compteur est à 0, tu sais que tu as perdu


    ps : pense à l'orthographe

  3. #3
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 684
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 684
    Points : 30 973
    Points
    30 973
    Billets dans le blog
    1
    Par défaut
    Bonjour
    Citation Envoyé par Fils-De-Pouple Voir le message
    et je voudrais qu'au moment où l'utilisateur a trouvé tous les bateaux sur le tableau que la boucle se stoppe.
    Code c : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    // Boucle de jeu
    while (1) {
    	// Saisie coup joué
    	...
     
    	// Evaluation résultat
    	if (... /* coup dans l'eau */) continue;
     
    	// Donc ici le coup n'est pas dans l'eau => Il a donc tapé un bateau => Gestion bateau touché
    	...
     
    	// Si tous bateaux coulés
    	if (...) break;
    }

    Citation Envoyé par Fils-De-Pouple Voir le message
    P.S je suis plutôt débutant dans le domaine soyez indulgent s.v.p.
    Pense à découper les tâches au lieu de tout benner dans le main(). Une fonction pour placer les bateaux. Une fois écrite tu la testes encore et encore jusqu'à ce qu'elle soit parfaite. Ensuite une fonction pour jouer. Et etc. Ainsi tu sépares et simplfies les problèmes.
    Et essaye de ne pas tomber dans la fausse facilité des variables globales.
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

Discussions similaires

  1. aide pour bataille navale
    Par isn14 dans le forum GUI
    Réponses: 6
    Dernier message: 17/05/2015, 20h43
  2. Réponses: 8
    Dernier message: 09/05/2008, 21h08
  3. aide pour jeu de la bataille navale
    Par Jeannot Alpin dans le forum Delphi
    Réponses: 17
    Dernier message: 19/11/2006, 20h33
  4. [vb excel]Aide avec les tableaux
    Par Mugette dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 27/09/2005, 12h07
  5. [LG]Programme Bataille Navale en Pascal
    Par RaFaL dans le forum Langage
    Réponses: 21
    Dernier message: 10/06/2003, 21h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo