Partage
  • Partager sur Facebook
  • Partager sur Twitter

Jeux

Debut

    17 octobre 2018 à 22:40:42

    Bonjour, 
    j'ai un projet à faire (pour le cours de C# dans le cadre de mes études)en C# (Applications Winforms), il s'agit de faire l'interface et programmer un jeux qui affiche aléatoirement des Calculs (-,+,%...) 
    et avec 4 propositions de réponses parmi lesquelles une seule à sélectionner est vraie. Je suis un peu perdu et je ne sais pas trop 
    comment procéder. quelqu'un pour m'aider svp??
    • Partager sur Facebook
    • Partager sur Twitter
      18 octobre 2018 à 0:15:25

      La question est un peu vague, faudrait voir à préciser la demande un minimum
      • Partager sur Facebook
      • Partager sur Twitter
      Censément, quelqu'un de sensé est censé s'exprimer sensément.
        18 octobre 2018 à 11:07:59

        Commencez par découper le problème en plus petits problèmes.
        • Partager sur Facebook
        • Partager sur Twitter
        Je recherche un CDI/CDD/mission freelance comme Architecte Logiciel/ Expert Technique sur technologies Microsoft.
          18 octobre 2018 à 11:40:35

          en fait c'est un jeux de QCM : et on prevoir plusieurs plages pour les calculs (0-10; 0-20;...). Gestion du niveau de jeu via le menu C#, prevoir un nombre de calcul par niveau.

          -
          Edité par JohnLepouvoir 18 octobre 2018 à 11:51:03

          • Partager sur Facebook
          • Partager sur Twitter
            18 octobre 2018 à 13:45:28

            Concrètement y'a toujours pas de question, ça laisse un arrière goût de «faites le job pour moi»
            • Partager sur Facebook
            • Partager sur Twitter
            Censément, quelqu'un de sensé est censé s'exprimer sensément.
              10 novembre 2018 à 10:23:37

              Bonjour  à tous!!

              Pour mon jeu, je parviens à afficher les calculs aléatoirement. 

                  pour les différentes réponses, j'ai utilisé 4 Radiobutton. et pour le moment l'addition s'affiche sur une seule position, la soustraction sur une seule position, multiplication sur l'autre et la division également. Je veux une méthode ou encore des objet me permettant de faire afficher ces réponses aussi aléatoirement sur ces Radiobutton de tel sorte que la réponse du '-' ne s'affiche pas toujours à la meme position pour le'+' non plus ainsi de suite. pour le moment lorsque je choisi une réponse et je valide sur "OK" mon application ne dit pas si c'est une bonne ou une mauvaise réponse.

              Merci,

              • Partager sur Facebook
              • Partager sur Twitter
                12 novembre 2018 à 9:17:37

                Extraits de code pour voir l'architecture, pour minimiser le travail, SVP.
                • Partager sur Facebook
                • Partager sur Twitter
                Je recherche un CDI/CDD/mission freelance comme Architecte Logiciel/ Expert Technique sur technologies Microsoft.
                  12 novembre 2018 à 18:45:24

                  bacelar a écrit:

                  Extraits de code pour voir l'architecture, pour minimiser le travail, SVP.

                  Voici l'extrait du bouton OK
                  private void btnOk(object sender, EventArgs e)
                          {
                              rbn1.Checked = false;
                              rbn2.Checked = false;
                              rbn3.Checked = false;
                              rbn4.Checked = false;
                  
                              Random nbrSigneCalcul = new Random();
                              Random nbrPositionR = new Random(); // pour la position de la réponse dans les radiobuton
                  
                              nbr1 = nbrSigneCalcul.Next(0, 11);
                              nbr2 = nbrSigneCalcul.Next(0, 11);
                  
                              lblNbr1.Text = nbr1.ToString();
                              lblNbr2.Text = nbr2.ToString();
                  
                              signe = nbrSigneCalcul.Next(0, 4);
                  
                    
                                  switch (signe)
                                  {
                                      case '+':  //addition
                                          {
                                              resultat = nbr1 + nbr2;
                                              lblSigne.Text = "+";
                                              rbn1.Text = resultat.ToString();
                                              rbn2.Text = (resultat + 1).ToString();
                                              rbn3.Text = (resultat - 1).ToString();
                                              rbn4.Text = (resultat - 2).ToString();
                                              if (rbn1.Checked == true)
                                              {
                  
                                              }
                                              else if(rbn2.Checked==true||rbn3.Checked==true||rbn4.Checked==true)
                                              {
                                                  MessageBox.Show("recommencer");
                                              }
                                          }
                                          break;
                  
                                      case '-':  //soustraction
                                          {
                                              resultat = nbr1 - nbr2;
                                              lblSigne.Text = "-";
                                              rbn2.Text = resultat.ToString();
                                              rbn1.Text = (resultat + 1).ToString();
                                              rbn3.Text = (resultat - 1).ToString();
                                              rbn4.Text = (resultat - 2).ToString();
                                              if (rbn2.Checked == true)
                                              {
                  
                                              }
                                              else if (rbn1.Checked == true || rbn3.Checked == true || rbn4.Checked == true)
                                              {
                                                  MessageBox.Show("recommencer");
                                              }
                                          }
                  
                                          break;
                  
                                      case '*':  //multiplication
                                          {
                                              resultat = nbr1 * nbr2;
                                              lblSigne.Text = "*";
                                              rbn3.Text = resultat.ToString();
                                              rbn2.Text = (resultat + 1).ToString();
                                              rbn1.Text = (resultat - 1).ToString();
                                              rbn4.Text = (resultat - 2).ToString();
                                              if (rbn3.Checked == true)
                                              {
                  
                                              }
                                              else if (rbn2.Checked == true || rbn1.Checked == true || rbn4.Checked == true)
                                              {
                                                  MessageBox.Show("recommencer");
                                              }
                                          }
                  
                                          break;
                  
                                      case '/': //division
                                          {
                                          //resultat = divisions( nbr1, nbr2);
                                          resultat = nbr1 * nbr2;
                                          lblSigne.Text = "/";
                                          rbn4.Text = resultat.ToString();
                                          rbn2.Text = (resultat + 1).ToString();
                                          rbn1.Text = (resultat - 1).ToString();
                                          rbn3.Text = (resultat - 2).ToString();
                                          if (rbn4.Checked == true)
                                              {
                  
                                              }
                                              else if (rbn2.Checked == true || rbn3.Checked == true || rbn1.Checked == true)
                                              {
                                                  MessageBox.Show("recommencer");
                                              }
                  
                                          }
                                          break;
                  
                                  
                              }
                  
                          }



                  -
                  Edité par JohnLepouvoir 12 novembre 2018 à 18:46:57

                  • Partager sur Facebook
                  • Partager sur Twitter
                    12 novembre 2018 à 20:02:48

                    Ok, bon, niveau architecture, c'est très moyen.

                    Vous avez tout en dur et "btnOk" fait à la fois le tirage et la vérification de la réponse (peut-être pour faire des tests, mais on fait pas ça comme ça).

                    Découpez bien le travail en fonction.

                    Une fonction qui crée la question et une fonction qui vérifie la réponse.

                    Vous avez tout en dure.

                    Vous devriez, après le tirage ligne 17, affecter aléatoirement l'une opération à chaque" rbn" et donc calculer son texte après avoir choisi l'opérateur associé.

                    • Partager sur Facebook
                    • Partager sur Twitter
                    Je recherche un CDI/CDD/mission freelance comme Architecte Logiciel/ Expert Technique sur technologies Microsoft.

                    Jeux

                    × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                    × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                    • Editeur
                    • Markdown