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 :

Tourner la grille de puissance 4


Sujet :

C++

  1. #1
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    55
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 55
    Par défaut Tourner la grille de puissance 4
    Bonjour, je travaille sur un projet de puissance 4, le but est de réaliser le jeu, avec une nouvelle version: celle de tourner la grille avec une rotation de 90°.
    c'est une grille G[7][7].
    je ne sais pas comment le faire avec les pions , j'ai essayer, mais je n'y arrrive pas , pouvez vous m'aider SVP?
    merci!!!!

  2. #2
    Membre éclairé Avatar de befalimpertinent
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    561
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Avril 2007
    Messages : 561
    Par défaut

    Quelsques précisions avant tout !
    je ne sais pas comment le faire avec les pions , j'ai essayer, mais je n'y arrrive pas
    Tu n'arrive pas graphiquement à faire tourner ta grille ou mathématiquement à transposer ta matrice ?
    • si graphiquement : sous quel OS, avec quels bibliothèques graphiques, compilateur, ...
    • si mathématiquement : un bout de code présentant ta grille et ses principales fonctonnalitées serait le bienvenu
    • Si Le projet n'est pas encore réellement commencé, répond d'abord aux questions précédentes.

  3. #3
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    55
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 55
    Par défaut
    Tu n'arrive pas graphiquement à faire tourner ta grille ou mathématiquement à transposer ta matrice ?
    je ne sais pas utiliser du graphisme en C++.


    si mathématiquement : un bout de code présentant ta grille et ses principales fonctonnalitées serait le bienvenu
    Mathématique je n'arrive pas à le faire, j'essaye mais
    voici le ptit code que j'ai fait pour l'instant.

    #include<stdlib.h>
    #include<stdio.h>
    #include<string.h>
    #include<iostream.h>
    #include<fstream.h>
    #include <conio.h>
    // ========= Declaration des classes ========== //

    class grille
    { int l,c;
    //char *G;
    char G[7][7];
    public:
    grille()
    {
    c=l=7;
    int i,j;
    for (i=0;i<l;i++)
    for (j=0;j<l;j++)
    { G[i][j] = '.';}
    }

    void affiche()
    { int i,j;
    cout <<"\n\t";
    for (i=0;i<l;i++)
    //cout <<i+1;
    { for (j=0;j<l;j++)
    { cout <<"\t" << G[i][j] ; }

    cout<<"\n\n\t"; }
    }

    grille tourner90(grille & gr1)
    { grille gr2 ;
    gr2 = new grille[gr1];
    /// Planter ///
    }
    };

  4. #4
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 035
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur expert
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2004
    Messages : 10 035
    Par défaut
    Bonjour,
    pas trés lisible ton code...dsl

    Dans ton code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    grille tourner90(grille & gr1)
    { grille gr2 ;
    gr2 = new grille[gr1];//pourquoi tu fai cela???
    /// Planter ///
    }
    sinon en gros, il faut que tu parcoure le tableau résultat et que pour chaque position de calcul sa position dans la grille d'entrée
    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
    15
    grille tourner90(grille & gr1)
    { grille gr2 ;
    int iin,jin,iout,jout;
    
    for (iout=0;iout<l;++iout)
     for (jout=0;jout<c;++jout)//attention dans la creation de ta class tu fait la même erreur
       { 
    iin = ...;//je te laisse cherche le calcul
    jin = ...;//je te laisse cherche le calcul
    gr2 [iout][jout] = gr1[iin][jin]
    }
    
    return gr2;
    }

    Il te faudrait aussi un constructeur par recopie pour que ce code fonctionne.

    Par contre tu devrait réécrit ta class grille avec :
    1- des fonction d'accés aux elements. Par exemple GetElement(i,j) ou SetElement(i,j)
    2- des prefixes sur tes variable propre a ta class. par exemple m_
    3- utiliser un tableau 1D avec les coord (i,j) devienne i*c+j. Cherche sur le forum c'est assez récurrent
    4- utiliser un vector pour ce tableau 1D

    bon courage

  5. #5
    Membre éclairé Avatar de befalimpertinent
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    561
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Avril 2007
    Messages : 561
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    #include<string.h>
    #include<iostream.h>
    En c++ on utilise plutot
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    #include <string>
    #include <iostream>
    Entre autre ...
    Autre chose pour un projet même de petite taille, il est intéressant de commencer directement par séparer la définition de l'implémentation des classes. Tu gagneras en lisibilité.

    je ne sais pas utiliser du graphisme en C++.
    Si tu souhaite rajouter du graphisme, de mon point de vue, le plus simple à appréhender est peut être OpenGL + glut ou OpenGL + SDL. Mais la ce sont des questions de préférences.

    Outre toutes les remarques de MontGaulois (notamment sur l'interet du vector) je rajouterais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    grille tourner90(grille & gr1)
    { grille gr2 ;
    gr2 = new grille[gr1];
    /// Planter ///
    }
    };
    Pourquoi passer une grille en référence si au final on renvoit une nouvelle grille ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    void tourner90(grille & gr1)
    { 
    //gr1 est modifiée directement
    }
    };

Discussions similaires

  1. jaimerais savoir commen creer une grille.......
    Par zephyr dans le forum Flash
    Réponses: 5
    Dernier message: 29/04/2003, 12h14
  2. [VB6] [Interface] Grille avec combobox
    Par khany dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 15/01/2003, 09h55
  3. x² et puissance de x par récurrence
    Par olivieram dans le forum Algorithmes et structures de données
    Réponses: 7
    Dernier message: 15/12/2002, 23h59
  4. Réponses: 2
    Dernier message: 11/07/2002, 08h31
  5. Besoin d'aide pour l'I.A. d'un puissance 4
    Par Anonymous dans le forum C
    Réponses: 2
    Dernier message: 25/04/2002, 17h05

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