Inscription / Connexion Nouveau Sujet

1 2 3 +


Posté par
Riley
re : Sauvegarde d'informations sur java 05-02-15 à 12:30

je suis aller voir sur le net et apparemment ce genre d'erreur peut être causée par le fait que le programme essai de diviser par zéro. mais je ne vois pas trop comment y remédier.

Posté par
gggg1234
re : Sauvegarde d'informations sur java 05-02-15 à 12:58

ben avce ton code, si le gars repond "non", la variable reponse devient 'n' et donc qd tu "repasses dans ton WHILE (reponse=='0')
tu ne remplis pas la condition et donc tu "saute" , tu sors du WHILE.

Atention peut etre a bien mettre des majuscules partout sur les "N" et les "O" que tu utilies, il faudrait pas que ca soit 'o' d'un cote et 'O' de l'autre et que ca colle pas.

Posté par
gggg1234
re : Sauvegarde d'informations sur java 05-02-15 à 13:01

pour ta division par 0, c'est au debut de ton programme qd tu declares tes varibales, comme tu en mets certianes à 0, il y en a d'autre (les taux) qui font des divisions par 0.
Il ne faut commencer à calculer les taux que quand il y a des parties qui commencent a etre enregistrées

Posté par
Riley
re : Sauvegarde d'informations sur java 05-02-15 à 13:02

D'accord ok merci pour la précision, j'ai vérifié et tout me semble ok de ce coté là.
Par contre toujours le même message d'erreur.

Posté par
Riley
re : Sauvegarde d'informations sur java 05-02-15 à 13:03

Ah ok donc il faut que je déplace la variable?

Posté par
Riley
re : Sauvegarde d'informations sur java 05-02-15 à 13:54

En effet ça viens bien de là car j'ai remplacé le 0 par 1 et ça marche jusqu'à "Pour continuer taper ? O pour oui" où le programme s'arrête j'ai tapé O et il apparaît en vert mais rien ne se passe.

Posté par
gggg1234
re : Sauvegarde d'informations sur java 05-02-15 à 13:59

envoie moi ton code complet si tu veux que je teste..

C'est peut etre ta fonction de "saisie" qui est buggué?
tu as fait "enter" ? avec ton clavier?

Posté par
Riley
re : Sauvegarde d'informations sur java 05-02-15 à 14:14

Le voilà:
import java.util.Scanner;
public class Information{

static Scanner sudoku = new Scanner (System.in);

public static void main(String[] args){

//initalisation variables
     int Sudoku = 0;// niveau de jeu
     int Resultat = 0;// la condition, remplie ou pas
     int nbrpartie_faciles = 1;// nombre de parties faciles jouées
     int nbrpartie_moyennes = 1;// nombre de parties moyennes jouées
     int nbrpartie_dificiles = 1;// nombre de parties dificiles jouées
     int nbrpartiefaciles_terminées = 1;// nombre de parties faciles gagnées
     int nbrpartiemoyennes_terminées = 1;// nombre de parties moyennes gagnées
     int nbrpartiedificiles_terminées = 1;// nombre de parties dificiles gagnées
     int tauxreussite_facile = nbrpartiefaciles_terminées/nbrpartie_faciles*100;// taux de réussite des parties de niveau facile
     int tauxreussite_moyen = nbrpartiemoyennes_terminées/nbrpartie_moyennes*100;// taux de réussite des parties de niveau moyen
     int tauxreussite_dificile = nbrpartiedificiles_terminées/nbrpartie_dificiles*100;// taux de réussite des parties de niveau dificile
     int tempsreso_facile = 0;// temps de resolution d'une partie de niveau facile
     int tempsreso_moyen = 0;// temps de resolution d'une partie de niveau moyen
     int tempsreso_dificile = 0;// temps de resolution d'une partie de niveau dificile
     int tempsmoyreso_facile = tempsreso_facile/nbrpartiefaciles_terminées;//temps de resolution moyen d'une partie de niveau facile
     int tempsmoyreso_moyen = tempsreso_moyen/nbrpartiemoyennes_terminées;// temps de resolution moyen d'une partie de niveau moyen
     int tempsmoyreso_dificile = tempsreso_dificile/nbrpartiedificiles_terminées;// temps de resolution moyen d'une partie de niveau dificile
     int nbrpartieperdue = (nbrpartie_faciles+nbrpartie_moyennes+nbrpartie_dificiles)-(nbrpartiefaciles_terminées+nbrpartiemoyennes_terminées+nbrpartiedificiles_terminées);// nombre de parties perdues
     int nbrpartiegagnée = nbrpartiefaciles_terminées+nbrpartiemoyennes_terminées+nbrpartiedificiles_terminées;// nombre de parties gagnées
     int nbrpartiejouée = nbrpartie_faciles+nbrpartie_moyennes+nbrpartie_dificiles;// nombre de parties jouées
     int tempsresomoy = (tempsmoyreso_facile+tempsmoyreso_moyen+tempsmoyreso_dificile)/(nbrpartiefaciles_terminées+nbrpartiemoyennes_terminées+nbrpartiedificiles_terminées);// temps de resolution moyen

    
           //affichage message de bienvenue et enregistrement du nom, prénom, age

           System.out.println ("Bonjour, veuillez suivre les informations qui s'afficheront sur votre écran");//affichage message de bienvenue

          
                                Scanner Unscanner1 = new Scanner(System.in);//initialisation du scanner correspondant

                                      System.out.print(" Entrez votre nom : ");

                                        String Afficheur1 = Unscanner1.nextLine();//extraction du contenu de la dernière ligne tapée par l'utilisateur
        
                                        
        
    
                                                Scanner Unscanner2 = new Scanner(System.in);//initialisation du scanner correspondant
                                        
                                                  System.out.print(" Entrez votre Prénom : ");
        
                                                    String Afficheur2 = Unscanner2.nextLine();//extraction du contenu de la dernière ligne tapée par l'utilisateur
        
        
        
        
                                                            Scanner Unscanner3 = new Scanner(System.in);//initialisation du scanner correspondant
        
                                                              System.out.print(" Entrez votre âge :");
        
                                                                 String Afficheur3 = Unscanner3.nextLine();//extraction du contenu de la dernière ligne tapée par l'utilisateur
                            
                        
                        
                        
                    
                        
                         System.out.print("Pour continuer taper O pour oui");// demande si le joueur veut continuer, si oui alors initialisation de la boucle
                 
                        char reponse = 'O';
              
                       Scanner rep = new Scanner(System.in);// Scan de la reponse
              
              
              
               while (reponse == 'O');// quand la réponse égale à O alors lancement de la boucle
               {
              

                         System.out.println("Veuillez choisir un niveau de jeu:");
                          System.out.println (" -----------------------------------");              
                           System.out.println (" Entrez 1 pour Sudoku Debutant");
                   System.out.println (" Entrez 2 pour Sudoku Intermediaire");
                    System.out.println (" Entrez 3 pour Sudoku Expert");
                     System.out.println (" -----------------------------------");  
                     
                Sudoku = sudoku.nextInt();// extraction de la réponse
          
          
                     
             if(Sudoku ==1){// si le niveau choisi est égale à 1 alors lancement de la boucle corespondante
                            nbrpartie_faciles++; // incrémentaion du nombre parties faciles      
                    
                    System.out.println("Avez-vous gagné la partie?");
          
                    Scanner Unscanner4 = new Scanner(System.in);//initialisation du scanner correspondant

                              System.out.print(" Tapez 4 pour oui ");
                              System.out.print(" Tapez 5 pour non ");

                        String Afficheur4 = Unscanner4.nextLine(); //extraction du contenu de la dernière ligne tapée par l'utilisateur
                         
                       
                              System.out.println("En combien de temps vous avez remplie la grille?");
                             
                    Scanner Unscanner5 = new Scanner(System.in);//initialisation du scanner correspondant
                   
                  System.out.println("Donnez la réponse en minutes");
        
                      String Afficheur5 = Unscanner5.nextLine();//extraction du contenu de la dernière ligne tapée par l'utilisateur
        
        
                      if(Resultat ==4)// si le joueur a gagné la partie alors
                                     nbrpartiefaciles_terminées++;// incrémentation du nombre de parties faciles gagnées                                    
                                  tempsreso_facile = (nbrpartiefaciles_terminées * tempsreso_facile) + Integer.parseInt(Afficheur5) / ( nbrpartiefaciles_terminées); //calcul du temps de résolution        
                                   tauxreussite_facile = nbrpartiefaciles_terminées/nbrpartie_faciles*100;// calcul du taux de réussite
               
         }        
               else {              
               tauxreussite_facile = nbrpartiefaciles_terminées-1/nbrpartie_faciles*100;//sinon calcul du taux de reussite en ajoutant un echec
               }

          
               if(Sudoku ==2){// si le niveau choisi est égale à 2 alors lancement de la boucle corespondante
                                  nbrpartie_moyennes++; //incrémentaion du nombre parties moyennes
                   
                                 
                           System.out.println("Avez-vous gagné la partie?");
          
                    Scanner Unscanner6 = new Scanner(System.in);//initialisation du scanner correspondant

                              System.out.print(" Tapez 4 pour oui ");                   
                                System.out.print(" Tapez 5 pour non ");

                        String Afficheur6 = Unscanner6.nextLine(); //extraction du contenu de la dernière ligne tapée par l'utilisateur
                 
                              System.out.println("En combien de temps vous avez remplie la grille?");
                             
                    Scanner Unscanner7 = new Scanner(System.in);//initialisation du scanner correspondant
        
                  System.out.println("Donnez la réponse en minutes");
                   
                      String Afficheur7 = Unscanner7.nextLine();  //extraction du contenu de la dernière ligne tapée par l'utilisateur               
          
                    if(Resultat ==4)// si le joueur a gagné la partie alors
                                nbrpartiemoyennes_terminées++;// incrémentation du nombre de parties moyennes gagnées                                  
                                 tempsreso_moyen = (nbrpartiemoyennes_terminées * tempsreso_moyen) + Integer.parseInt(Afficheur7) / ( nbrpartiemoyennes_terminées);//calcul du temps de résolution                            
                                  tauxreussite_moyen = nbrpartiemoyennes_terminées/nbrpartie_moyennes*100;// calcul du taux de réussite
           }
           else {
           tauxreussite_moyen = nbrpartiemoyennes_terminées-1/nbrpartie_moyennes*100;//sinon calcul du taux de reussite en ajoutant un echec
             }
          
          
          
               if(Sudoku ==3){// si le niveau choisi est égale à 3 alors lancement de la boucle corespondante
                              nbrpartie_dificiles++;// incrémentaion du nombre parties dificiles  
          
                             
                      System.out.println("Avez-vous gagné la partie?");
          
                    Scanner Unscanner8 = new Scanner(System.in);//initialisation du scanner correspondant

                              System.out.print(" Tapez 4 pour oui ");                   
                                System.out.print(" Tapez 5 pour non ");
  
                          String Afficheur8 = Unscanner8.nextLine();//extraction du contenu de la dernière ligne tapée par l'utilisateur          
                                        
                                System.out.println("En combien de temps vous avez remplie la grille?");
                               
                    Scanner Unscanner9 = new Scanner(System.in);//initialisation du scanner correspondant
                   
                  System.out.println("Donnez la réponse en minutes");
                 
                      String Afficheur9 = Unscanner9.nextLine();//extraction du contenu de la dernière ligne tapée par l'utilisateur
        
                      if(Resultat ==4)// si le joueur a gagné la partie alors
                                nbrpartiedificiles_terminées++;// incrémentation du nombre de parties dificiles gagnées                                  
                                 tempsreso_dificile= (nbrpartiedificiles_terminées * tempsreso_dificile) + Integer.parseInt(Afficheur9) / ( nbrpartiedificiles_terminées);//calcul du temps de résolution
                                   tauxreussite_dificile = nbrpartiedificiles_terminées/nbrpartie_dificiles*100;// calcul du taux de réussite
          
               
           }
           else {
           tauxreussite_dificile = nbrpartiedificiles_terminées-1/nbrpartie_dificiles*100;//sinon calcul du taux de reussite en ajoutant un echec
             }
          

          
             System.out.println("Voulez-vous inserer d'autres parties? (O/N)");
                       reponse = rep.nextLine().charAt(0); //extraction de la reponse
                                
                                 //si la reponse est non alors sortie de la boucle
                    
                           //et affichage des résultats des variables

        
              
             System.out.println("*****************************Statistiques Sudoku*****************************");
            
             System.out.println("-------Informations personnelles");
             System.out.println("Nom:"+" "+Afficheur1+".");
             System.out.println("Prénom:"+""+Afficheur2+".");
             System.out.println("Âge:"+""+Afficheur3+"ans.");
            
            
             System.out.println("---------------------------Statistiques détaillées--------------------------");
            
             System.out.println("------Statistiques niveau facile ");
             System.out.println("Nombre de parties non terminées: "+String.valueOf(nbrpartie_faciles-nbrpartiefaciles_terminées));
             System.out.println("Nombre de parties gagnées: "+nbrpartiefaciles_terminées+" "+"Temps de résolution moyen: "+tempsmoyreso_facile);
             System.out.println("Nombre total de parties jouées: "+nbrpartie_faciles);
             System.out.println("Taux de réussite du joueur : "+tauxreussite_facile);
            
             System.out.println("------Statistiques niveau moyen ");
             System.out.println("Nombre de parties non terminées: "+String.valueOf(nbrpartie_moyennes-nbrpartiemoyennes_terminées));
             System.out.println("Nombre de parties gagnées: "+nbrpartiemoyennes_terminées+" "+"Temps de résolution moyen: "+tempsmoyreso_moyen);
             System.out.println("Nombre total de parties jouées: "+nbrpartie_moyennes);
             System.out.println("Taux de réussite du joueur : "+tauxreussite_moyen);
            
             System.out.println("------Statistiques niveau dificile ");
             System.out.println("Nombre de parties non terminées: "+String.valueOf(nbrpartie_dificiles-nbrpartiedificiles_terminées));
             System.out.println("Nombre de parties gagnées: "+nbrpartiedificiles_terminées+" "+"Temps de résolution moyen: "+tempsmoyreso_dificile);
             System.out.println("Nombre total de parties jouées: "+nbrpartie_dificiles);
             System.out.println("Taux de réussite du joueur : "+tauxreussite_dificile);
            
            
             System.out.println("---------------------------Statistiques globales--------------------------");
            
             System.out.println("Nombre de parties perdues: "+nbrpartieperdue);
             System.out.println("Nombre de parties gagnées: "+nbrpartiegagnée+" "+"Temps de résolution moyen: "+tempsresomoy);
             System.out.println("Nombre total de parties jouées: "+nbrpartiejouée);
             System.out.println("Taux de réussite du joueur : "+(nbrpartiegagnée)/(nbrpartiejouée)*100);
            
            
            
          
             }

              
            


}
}

            

Posté par
Riley
re : Sauvegarde d'informations sur java 05-02-15 à 14:15

oui j'ai fais enter et ça fait rien

Posté par
gggg1234
re : Sauvegarde d'informations sur java 05-02-15 à 14:45

déjà, pares:

Scanner rep = new Scanner(System.in);// Scan de la reponse

tu as oublié de lire la sasiie..

et le probleme ensuite, c'est que faire xhile (reponde=='0') ca marche pas!
pour comprarer des chaines de caractères il faut utiliser uen fonction particuliere que je te laise trouver.

La en fait il compare pa la valeur de reponse avce la chaine 'O' mais un truc plus compliqué,e t au final, il entre pas dans le while

Posté par
gggg1234
re : Sauvegarde d'informations sur java 05-02-15 à 14:46

et je crois que topn bloc "stats", est à "tord" dabns le while, elle doti etre en dessous

Posté par
Riley
re : Sauvegarde d'informations sur java 05-02-15 à 15:07

pour lire la saisie c'est bien ça?
      String reponse = rep.nextLine();

Posté par
Riley
re : Sauvegarde d'informations sur java 05-02-15 à 15:17

J'ai trouvé ces deux formules, par contre je la met où la formule?
Character.toString(char)
String.valueOf(char)

Posté par
Riley
re : Sauvegarde d'informations sur java 05-02-15 à 15:43

Voilà là je crois que c'est bon
System.out.print("Pour continuer taper O pour oui");// demande si le joueur veut continuer, si oui alors initialisation de la boucle
                           Scanner sc = new Scanner(System.in);
                                  String str = sc.nextLine();
                                     char reponse = str.charAt(0);      

J'essaye et on verra bien

Posté par
Riley
re : Sauvegarde d'informations sur java 05-02-15 à 15:46

Mais c'est pas possible, à chaque fois que je crois en être sortit il y a un truc qui cloche.
Maintenant il me sousligne ça  
System.out.println("Voulez-vous inserer d'autres parties? (O/N)");
                       reponse = rep.nextLine().charAt(0); //extraction de la reponse

et il me dit
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
rep cannot be resolved

at Information.main(Information.java:185)

Posté par
Riley
re : Sauvegarde d'informations sur java 05-02-15 à 17:05

je regardais et en plus du problème précédent il faut que je rajoute quelque chose qui me permette de limiter les caractères car on me demande :
Nom: Une chaine de caractère dont la longueur est comprise entre 3 et 256 caractères.
Prénom: Une chaine de caractère dont la longueur est comprise entre 3 et 256 caractères.
Âge: entier compris entre 10 et 90 inclusivement.

Posté par
Riley
re : Sauvegarde d'informations sur java 05-02-15 à 17:18

problème d'avant réglé par contre ça change rien au fait que je soit toujours bloqué  au choix oui ou non, j'ai du me tromper sur la formule :
System.out.print("Pour continuer taper O pour oui");// demande si le joueur veut continuer, si oui alors initialisation de la boucle
                         Scanner rep = new Scanner(System.in);
                              String str = rep.nextLine();
                              char reponse = str.charAt(0);
                       
              
                       
                       
                                     
              
               while (reponse == 'O');// quand la réponse égale à O alors lancement de la boucle
               {

Posté par
gggg1234
re : Sauvegarde d'informations sur java 05-02-15 à 17:48

c'est toujours pareil, tu as du oublié de déclarer la variable rep, ou alors tu l'as fait après la ligne ou tu l'utilse.

pour les controle, une fois que tu as "lu" les valeurs  avec le scanner, ben tu dois faire un IF

(en controlant la longeur de la chaine d ecaractère ou la valeur du nombre  et en focntion, redemander une saisie
(dans l'absolue, il faudrait meme refaire un WHILE et refaire une saisie tant que les controles ne sont pas validés


du style:

boolean test_nom_valide=0
WHILE (test_nom_valide != 1)
{demander saisie de la valeur;
if (longuer nom compris entre 1 et 255){test_nom_valide = 1}else {test_nom_valide = 0}
}

NB: ton programme est compliqué , c'est normal qu'il soit diffisle à coder

Posté par
Riley
re : Sauvegarde d'informations sur java 05-02-15 à 20:21

pour le passage du char en string j'ai trouvé ça:
char a='v';
String mot=Character.toString(a);
le problème c'est que je ne voit pas trop comment l'appliquer à ça:
    char reponse = 'O';
                       Scanner rep = new Scanner(System.in);
                            String str = rep.nextLine();
                            char reponse = str.charAt(0);

Posté par
Riley
re : Sauvegarde d'informations sur java 05-02-15 à 23:23

En cherchant sur Internet j'ai trouvé ça:
String id = reader.readLine();
       if id.length()>9)
           System.out.println("Erreur longueur de "+id.length()+" ne peux depasser 9 char");
       else
       {
           if (id.length()==0)
               System.out.println("Ne peux etre à 0");
           else
              ident=Integer.parseInt(id);
Bon c'est pour un identifiant mais je pourrais utiliser la partie avec length pour limiter le nombres de caractères.

Posté par
gggg1234
re : Sauvegarde d'informations sur java 05-02-15 à 23:24

Je precise mon propos:

Si tu ecris
While(reponse=='o')

C'est un peu complique a expliquer mais en fait le programme ne fait pas la compraison que tu imagines. En fait il teste si les deux variables, les deux chaines de caracteres ici, ont la meme adresse memoire, ce qui est faux, dans tous les cas, meme si reponse vaut effectivement 'o'

Donc pour bien faire, il faut ecrire

While ( reponse.equals('o'))
Et là ca doit aller mieux.

Il comprera bien ta saisie avec 'o' et le programme devrait avancer..'

Bon courage

Posté par
Riley
re : Sauvegarde d'informations sur java 06-02-15 à 11:08

D'accord j'ai compris, je vais faire comme ça, merci

Posté par
Riley
re : Sauvegarde d'informations sur java 06-02-15 à 11:18

J'ai fait ce que tu m'as dit:
while (reponse.equals('O'));
par contre il me dit que je ne peux pas invoquer equals(char) sur une primitive de type char.
J'ai surement oublié de mettre quelque chose plus haut.
System.out.print("Pour continuer taper O pour oui");// demande si le joueur veut continuer, si oui alors initialisation de la boucle                         
                         char reponse = 'O';
                       Scanner rep = new Scanner(System.in);
                            String str = rep.nextLine();
                          
          
                       
                       
                                     
              
               while (reponse.equals('O'));// quand la réponse égale à O alors lancement de la boucle
}

Posté par
Riley
re : Sauvegarde d'informations sur java 06-02-15 à 11:49

Concernant l'autre problème sur la longueur des caractères, j'ai fait ça:
System.out.println ("Bonjour, veuillez suivre les informations qui s'afficheront sur votre écran");//affichage message de bienvenue
                          
          
                                Scanner Unscanner1 = new Scanner(System.in);//initialisation du scanner correspondant
                              
                                      System.out.print(" Entrez votre nom : ");

                                        String Afficheur1 = Unscanner1.nextLine();//extraction du contenu de la dernière ligne tapée par l'utilisateur
                                        
                                        
                            if(Afficheur1.length()<3)// condition si les caractères sont inferieur à 3 alors affichage
                            
                                        System.out.println("Vous devez inserez un nom compris entre 3 et 256 caractères");
                               else
                               {
                                if(Afficheur1.length()>256)// condition si les caractères sont superieur à 256 alors affichage
                                
                                        System.out.println("Vous devez inserez un nom compris entre 3 et 256 caractères");
                                    }

Par contre dis moi si je me trompe, mais la boucle que j'ai fait n'empêche en rien l'utilisateur de continuer.

Posté par
Riley
re : Sauvegarde d'informations sur java 06-02-15 à 12:24

J'ai vraiment du mal avec cette partie:
System.out.print("Pour continuer taper O pour oui");// demande si le joueur veut continuer, si oui alors initialisation de la boucle                         
                         char reponse = 'O';
                       Scanner rep = new Scanner(System.in);
                       
                            String str = Character.toString(reponse);
                            String reponse = rep.nextLine();
                          
              
                       
                       
                                     
              
               while (reponse.equals('O'));// quand la réponse égale à O alors lancement de la boucle
               {
Maintenant le problème c'est que j'ai dupliqué la variable locale.

Posté par
gggg1234
re : Sauvegarde d'informations sur java 06-02-15 à 14:06

tu as raison, ca ne l'empeche pas de continuer !
Pour bloquer un utilisateur il faut le mettre dans une boucle WHILE et le faire sortie de la boucle que quand il remplit les conditions demandées.

du style: (je reprends ton code et je l'entoure avec ce qu'il manque EN MAJUSCULE)


BOOLEAN CONDITIONS_NOM = 0;
WHILE (CONDITIONS_NOM == 0){

Scanner Unscanner1 = new Scanner(System.in);//initialisation du scanner correspondant
System.out.print(" Entrez votre nom : ");
String Afficheur1 = Unscanner1.nextLine();//extraction du contenu de la dernière ligne tapée par l'utilisateur
if(Afficheur1.length()<3)// condition si les caractères sont inferieur à 3 alors affichage
                            
System.out.println("Vous devez inserez un nom compris entre 3 et 256 caractères");
CONDITIONS_NOM = 0;

else IF
         {
  if(Afficheur1.length()>256)// condition si les caractères sont superieur à 256 alors affichage
                                
System.out.println("Vous devez inserez un nom compris entre 3 et 256 caractères");
CONDITIONS_NOM = 0;
                                    }
else {CONDITIONS_NOM = 1;}
}


avce ce principe, tant qu'il y a un probleme, on reste dans la boucle, et on en sort que quand tout est ok et que la varibale passe à 1.

Posté par
gggg1234
re : Sauvegarde d'informations sur java 06-02-15 à 14:11

et pour bien comprendre ton code, prends l'habitude de bien "l'indenter" c'est important..su style:

BOOLEAN CONDITIONS_NOM = 0;
WHILE (CONDITIONS_NOM == 0){

    Scanner Unscanner1 = new Scanner(System.in);
    System.out.print(" Entrez votre nom : ");
    String Afficheur1 = Unscanner1.nextLine();
    
    if(Afficheur1.length()<3){
              System.out.println("Vous devez inserez un nom compris entre 3 et 256 caractères");
              CONDITIONS_NOM = 0;
                             }
    else IF (Afficheur1.length()>256){
              System.out.println("Vous devez inserez un nom compris entre 3 et 256 caractères");
              CONDITIONS_NOM = 0;
                              }
     else {CONDITIONS_NOM = 1;}
}

Posté par
Riley
re : Sauvegarde d'informations sur java 06-02-15 à 14:38

Ok d'accord je vais l'appliquer aux autres, par contre ça coince au niveau de :
boolean condition_nom = 0;
          while (condition_nom == 0){
Apparemment un problème entre les types int et boolean
je suppose qu'il faut que je rajoute une formule, j'ai trouvé ça est ce que c'est correct?
boolean b = ....;
int i = -("false".indexOf("" + b));

Posté par
gggg1234
re : Sauvegarde d'informations sur java 06-02-15 à 14:40

trop compliqué.
déclare juste la variable en int directement:

int condition_nom =0 //ca devrait marcher.

Posté par
Riley
re : Sauvegarde d'informations sur java 06-02-15 à 14:57

Magique, ça marche
Bon je l'applique au reste, sinon concernant l'autre problème celui du
         System.out.print("Pour continuer taper O pour oui");// demande si le joueur veut continuer, si oui alors initialisation de la boucle                         
                         char reponse = 'O';
                       Scanner rep = new Scanner(System.in);
                       
                            String str = Character.toString(reponse);
                            String reponse = rep.nextLine();
                          
              
                       
                       
                                     
              
               while (reponse.equals('O'));// quand la réponse égale à O alors lancement de la boucle
               {
               Je bloque sérieusement sur le soucis de compatibilité entre la variable char et celle string.

Posté par
Riley
re : Sauvegarde d'informations sur java 06-02-15 à 15:28

C'est fait pour les conditions au niveau des caractères par contre la dernière est une condition d'age compris entre 10 et 90 évidement il me met qu'il y a un problème de compatibilité entre string et int, il faut que je caste en ajoutant String.valueOf ?


                                          int condition_age = 0;
                                          int a = 10;
                                          int b = 90;
                                          while (condition_age == 0){
                                           
                                                            Scanner Unscanner3 = new Scanner(System.in);//initialisation du scanner correspondant
        
                                                              System.out.print(" Entrez votre âge :");
        
                                                                 String Afficheur3 = Unscanner3.nextLine();//extraction du contenu de la dernière ligne tapée par l'utilisateur    
                                                                
                                                                                                                                                                                
                                                                 if(Afficheur3 < 10){
                                                                     System.out.println("Vous devez inserez un nombre compris entre 10 et 90");
                                                                    condition_age = 0;
                                                                     }
                                                                  else if (Afficheur3 > 90){
                                                                     System.out.println("Vous devez inserez un nom compris entre 10 et 90");
                                                                     condition_age = 0;
                                                                                     }
                                                                   else {condition_age = 1;}
                                                                   }  
                            

Posté par
Riley
re : Sauvegarde d'informations sur java 06-02-15 à 16:51

Si je dois mettre String.valueOf je dois le mettre dans la condition if ?

Posté par
gggg1234
re : Sauvegarde d'informations sur java 06-02-15 à 16:56

oui tu peux le faire en un seul coup dans le IF

Posté par
Riley
re : Sauvegarde d'informations sur java 06-02-15 à 17:13

Comme ça if(Afficheur3 < String.valueOf(10)){

Posté par
gggg1234
re : Sauvegarde d'informations sur java 06-02-15 à 17:34

plutot l'inverse
il faut transformer afficheur3 en nombre pour le comparer à 10.

Posté par
Riley
re : Sauvegarde d'informations sur java 06-02-15 à 17:42

ok comme ça :
int condition_age = 0;
                                          int a = 10;
                                          int b = 90;
                                          while (condition_age == 0){
                                           
                                                            Scanner Unscanner3 = new Scanner(System.in);//initialisation du scanner correspondant
        
                                                              System.out.print(" Entrez votre âge :");
        
                                                                 String Afficheur3 = Unscanner3.nextLine();//extraction du contenu de la dernière ligne tapée par l'utilisateur    
                                                                
                                                                                                                                                                                
                                                                 if(Integer.parseInt(Afficheur3) < 10){
                                                                     System.out.println("Vous devez inserez un nombre compris entre 10 et 90");
                                                                    condition_age = 0;
                                                                     }
                                                                  else if (Integer.parseInt(Afficheur3) > 90){
                                                                     System.out.println("Vous devez inserez un nom compris entre 10 et 90");
                                                                     condition_age = 0;
                                                                                     }
                                                                   else {condition_age = 1;}
                                                                   }  

Posté par
Riley
re : Sauvegarde d'informations sur java 06-02-15 à 17:43

par contre j'ai toujours le problème concernant ça:

                         System.out.print("Pour continuer taper O pour oui");// demande si le joueur veut continuer, si oui alors initialisation de la boucle                         
                         char reponse = 'O';
                       Scanner rep = new Scanner(System.in);
                       
                            String str = Character.toString(reponse);
                            String  reponse = rep.nextLine();
                          
              
                       
                       
                                     
              
               while (reponse.equals('O'));// quand la réponse égale à O alors lancement de la boucle

Posté par
Riley
re : Sauvegarde d'informations sur java 06-02-15 à 17:44

Si tu veux je te met tout le code complet comme ça tu peux tester.

Posté par
gggg1234
re : Sauvegarde d'informations sur java 06-02-15 à 17:50

ok

Posté par
Riley
re : Sauvegarde d'informations sur java 06-02-15 à 17:57

voilà:

import java.util.Scanner;
public class Information{

static Scanner sudoku = new Scanner (System.in);

public static void main(String[] args){

//initalisation variables
     int Sudoku = 0;// niveau de jeu
     int Resultat = 0;// la condition, remplie ou pas
     int nbrpartie_faciles = 1;// nombre de parties faciles jouées
     int nbrpartie_moyennes = 1;// nombre de parties moyennes jouées
     int nbrpartie_dificiles = 1;// nombre de parties dificiles jouées
     int nbrpartiefaciles_terminées = 1;// nombre de parties faciles gagnées
     int nbrpartiemoyennes_terminées = 1;// nombre de parties moyennes gagnées
     int nbrpartiedificiles_terminées = 1;// nombre de parties dificiles gagnées
     int tauxreussite_facile = nbrpartiefaciles_terminées/nbrpartie_faciles*100;// taux de réussite des parties de niveau facile
     int tauxreussite_moyen = nbrpartiemoyennes_terminées/nbrpartie_moyennes*100;// taux de réussite des parties de niveau moyen
     int tauxreussite_dificile = nbrpartiedificiles_terminées/nbrpartie_dificiles*100;// taux de réussite des parties de niveau dificile
     int tempsreso_facile = 0;// temps de resolution d'une partie de niveau facile
     int tempsreso_moyen = 0;// temps de resolution d'une partie de niveau moyen
     int tempsreso_dificile = 0;// temps de resolution d'une partie de niveau dificile
     int tempsmoyreso_facile = tempsreso_facile/nbrpartiefaciles_terminées;//temps de resolution moyen d'une partie de niveau facile
     int tempsmoyreso_moyen = tempsreso_moyen/nbrpartiemoyennes_terminées;// temps de resolution moyen d'une partie de niveau moyen
     int tempsmoyreso_dificile = tempsreso_dificile/nbrpartiedificiles_terminées;// temps de resolution moyen d'une partie de niveau dificile
     int nbrpartieperdue = (nbrpartie_faciles+nbrpartie_moyennes+nbrpartie_dificiles)-(nbrpartiefaciles_terminées+nbrpartiemoyennes_terminées+nbrpartiedificiles_terminées);// nombre de parties perdues
     int nbrpartiegagnée = nbrpartiefaciles_terminées+nbrpartiemoyennes_terminées+nbrpartiedificiles_terminées;// nombre de parties gagnées
     int nbrpartiejouée = nbrpartie_faciles+nbrpartie_moyennes+nbrpartie_dificiles;// nombre de parties jouées
     int tempsresomoy = (tempsmoyreso_facile+tempsmoyreso_moyen+tempsmoyreso_dificile)/(nbrpartiefaciles_terminées+nbrpartiemoyennes_terminées+nbrpartiedificiles_terminées);// temps de resolution moyen

    
           //affichage message de bienvenue et enregistrement du nom, prénom, age

           System.out.println ("Bonjour, veuillez suivre les informations qui s'afficheront sur votre écran");//affichage message de bienvenue
                          
          int condition_nom = 0;
          while (condition_nom == 0){
          
                                Scanner Unscanner1 = new Scanner(System.in);//initialisation du scanner correspondant
                              
                                      System.out.print(" Entrez votre nom : ");

                                        String Afficheur1 = Unscanner1.nextLine();//extraction du contenu de la dernière ligne tapée par l'utilisateur
                                        
                                        if(Afficheur1.length()<3){
                                        
                                            System.out.println("Vous devez inserez un nom compris entre 3 et 256 caractères");
                                            
                                           condition_nom = 0;
                                          
                                            }
                                      else if (Afficheur1.length()>256){
                                       
                                            System.out.println("Vous devez inserez un nom compris entre 3 et 256 caractères");
                                            
                                            condition_nom = 0;
                                                                                                        }
                                    else {condition_nom = 1;}
                                          }  
                                      
                                        
                          
                              int condition_nom1 = 0;
                              while (condition_nom == 0){
    
                                                Scanner Unscanner2 = new Scanner(System.in);//initialisation du scanner correspondant
                                        
                                                  System.out.print(" Entrez votre Prénom : ");
        
                                                    String Afficheur2 = Unscanner2.nextLine();//extraction du contenu de la dernière ligne tapée par l'utilisateur
                                                    
                                                    
                                                    if(Afficheur2.length()<3){
                                                    
                                                        System.out.println("Vous devez inserez un nom compris entre 3 et 256 caractères");
                                                        
                                                       condition_nom1 = 0;
                                                      
                                                        }
                                                  else if (Afficheur2.length()>256){
                                                   
                                                        System.out.println("Vous devez inserez un nom compris entre 3 et 256 caractères");
                                                        
                                                        condition_nom1 = 0;
                                                        
                                                                        }
                                                else {condition_nom1 = 1;}
                                                      }  
        
        
                                          int condition_age = 0;
                                          int a = 10;
                                          int b = 90;
                                          while (condition_age == 0){
                                           
                                                            Scanner Unscanner3 = new Scanner(System.in);//initialisation du scanner correspondant
        
                                                              System.out.print(" Entrez votre âge :");
        
                                                                 String Afficheur3 = Unscanner3.nextLine();//extraction du contenu de la dernière ligne tapée par l'utilisateur    
                                                                
                                                                                                                                                                                
                                                                 if(Integer.parseInt(Afficheur3) < 10){
                                                                     System.out.println("Vous devez inserez un nombre compris entre 10 et 90");
                                                                    condition_age = 0;
                                                                     }
                                                                  else if (Integer.parseInt(Afficheur3) > 90){
                                                                     System.out.println("Vous devez inserez un nom compris entre 10 et 90");
                                                                     condition_age = 0;
                                                                                     }
                                                                   else {condition_age = 1;}
                                                                   }  
                            
                         System.out.print("Pour continuer taper O pour oui");// demande si le joueur veut continuer, si oui alors initialisation de la boucle                         
                         char reponse = 'O';
                       Scanner rep = new Scanner(System.in);
                       
                            String str = Character.toString(reponse);
                            String  reponse = rep.nextLine();
                          
              
                       
                       
                                     
              
               while (reponse.equals('O'));// quand la réponse égale à O alors lancement de la boucle
               {
              

                         System.out.println("Veuillez choisir un niveau de jeu:");
                          System.out.println (" -----------------------------------");              
                           System.out.println (" Entrez 1 pour Sudoku Debutant");
                   System.out.println (" Entrez 2 pour Sudoku Intermediaire");
                    System.out.println (" Entrez 3 pour Sudoku Expert");
                     System.out.println (" -----------------------------------");  
                     
                Sudoku = sudoku.nextInt();// extraction de la réponse
          
          
                     
             if(Sudoku ==1){// si le niveau choisi est égale à 1 alors lancement de la boucle corespondante
                            nbrpartie_faciles++; // incrémentaion du nombre parties faciles      
                    
                    System.out.println("Avez-vous gagné la partie?");
          
                    Scanner Unscanner4 = new Scanner(System.in);//initialisation du scanner correspondant

                              System.out.print(" Tapez 4 pour oui ");
                              System.out.print(" Tapez 5 pour non ");

                        String Afficheur4 = Unscanner4.nextLine(); //extraction du contenu de la dernière ligne tapée par l'utilisateur
                         
                       
                              System.out.println("En combien de temps vous avez remplie la grille?");
                             
                    Scanner Unscanner5 = new Scanner(System.in);//initialisation du scanner correspondant
                   
                  System.out.println("Donnez la réponse en minutes");
        
                      String Afficheur5 = Unscanner5.nextLine();//extraction du contenu de la dernière ligne tapée par l'utilisateur
        
        
                      if(Resultat ==4)// si le joueur a gagné la partie alors
                                     nbrpartiefaciles_terminées++;// incrémentation du nombre de parties faciles gagnées                                    
                                  tempsreso_facile = (nbrpartiefaciles_terminées * tempsreso_facile) + Integer.parseInt(Afficheur5) / ( nbrpartiefaciles_terminées); //calcul du temps de résolution        
                                   tauxreussite_facile = nbrpartiefaciles_terminées/nbrpartie_faciles*100;// calcul du taux de réussite
               
         }        
               else {              
               tauxreussite_facile = nbrpartiefaciles_terminées-1/nbrpartie_faciles*100;//sinon calcul du taux de reussite en ajoutant un echec
               }

          
               if(Sudoku ==2){// si le niveau choisi est égale à 2 alors lancement de la boucle corespondante
                                  nbrpartie_moyennes++; //incrémentaion du nombre parties moyennes
                   
                                 
                           System.out.println("Avez-vous gagné la partie?");
          
                    Scanner Unscanner6 = new Scanner(System.in);//initialisation du scanner correspondant

                              System.out.print(" Tapez 4 pour oui ");                   
                                System.out.print(" Tapez 5 pour non ");

                        String Afficheur6 = Unscanner6.nextLine(); //extraction du contenu de la dernière ligne tapée par l'utilisateur
                 
                              System.out.println("En combien de temps vous avez remplie la grille?");
                             
                    Scanner Unscanner7 = new Scanner(System.in);//initialisation du scanner correspondant
        
                  System.out.println("Donnez la réponse en minutes");
                   
                      String Afficheur7 = Unscanner7.nextLine();  //extraction du contenu de la dernière ligne tapée par l'utilisateur               
          
                    if(Resultat ==4)// si le joueur a gagné la partie alors
                                nbrpartiemoyennes_terminées++;// incrémentation du nombre de parties moyennes gagnées                                  
                                 tempsreso_moyen = (nbrpartiemoyennes_terminées * tempsreso_moyen) + Integer.parseInt(Afficheur7) / ( nbrpartiemoyennes_terminées);//calcul du temps de résolution                            
                                  tauxreussite_moyen = nbrpartiemoyennes_terminées/nbrpartie_moyennes*100;// calcul du taux de réussite
           }
           else {
           tauxreussite_moyen = nbrpartiemoyennes_terminées-1/nbrpartie_moyennes*100;//sinon calcul du taux de reussite en ajoutant un echec
             }
          
          
          
               if(Sudoku ==3){// si le niveau choisi est égale à 3 alors lancement de la boucle corespondante
                              nbrpartie_dificiles++;// incrémentaion du nombre parties dificiles  
          
                             
                      System.out.println("Avez-vous gagné la partie?");
          
                    Scanner Unscanner8 = new Scanner(System.in);//initialisation du scanner correspondant

                              System.out.print(" Tapez 4 pour oui ");                   
                                System.out.print(" Tapez 5 pour non ");
  
                          String Afficheur8 = Unscanner8.nextLine();//extraction du contenu de la dernière ligne tapée par l'utilisateur          
                                        
                                System.out.println("En combien de temps vous avez remplie la grille?");
                               
                    Scanner Unscanner9 = new Scanner(System.in);//initialisation du scanner correspondant
                   
                  System.out.println("Donnez la réponse en minutes");
                 
                      String Afficheur9 = Unscanner9.nextLine();//extraction du contenu de la dernière ligne tapée par l'utilisateur
        
                      if(Resultat ==4)// si le joueur a gagné la partie alors
                                nbrpartiedificiles_terminées++;// incrémentation du nombre de parties dificiles gagnées                                  
                                 tempsreso_dificile= (nbrpartiedificiles_terminées * tempsreso_dificile) + Integer.parseInt(Afficheur9) / ( nbrpartiedificiles_terminées);//calcul du temps de résolution
                                   tauxreussite_dificile = nbrpartiedificiles_terminées/nbrpartie_dificiles*100;// calcul du taux de réussite
          
               
           }
           else {
           tauxreussite_dificile = nbrpartiedificiles_terminées-1/nbrpartie_dificiles*100;//sinon calcul du taux de reussite en ajoutant un echec
             }
          

          
             System.out.println("Voulez-vous inserer d'autres parties? (O/N)");
                       reponse = rep.nextLine().charAt(0); //extraction de la reponse
                                
                                 //si la reponse est non alors sortie de la boucle
                    
                           //et affichage des résultats des variables

               }
              
             System.out.println("*****************************Statistiques Sudoku*****************************");
            
             System.out.println("-------Informations personnelles");
             System.out.println("Nom:"+" "+Afficheur1+".");
             System.out.println("Prénom:"+""+Afficheur2+".");
             System.out.println("Âge:"+""+Afficheur3+"ans.");
            
            
             System.out.println("---------------------------Statistiques détaillées--------------------------");
            
             System.out.println("------Statistiques niveau facile ");
             System.out.println("Nombre de parties non terminées: "+String.valueOf(nbrpartie_faciles-nbrpartiefaciles_terminées));
             System.out.println("Nombre de parties gagnées: "+nbrpartiefaciles_terminées+" "+"Temps de résolution moyen: "+tempsmoyreso_facile);
             System.out.println("Nombre total de parties jouées: "+nbrpartie_faciles);
             System.out.println("Taux de réussite du joueur : "+tauxreussite_facile);
            
             System.out.println("------Statistiques niveau moyen ");
             System.out.println("Nombre de parties non terminées: "+String.valueOf(nbrpartie_moyennes-nbrpartiemoyennes_terminées));
             System.out.println("Nombre de parties gagnées: "+nbrpartiemoyennes_terminées+" "+"Temps de résolution moyen: "+tempsmoyreso_moyen);
             System.out.println("Nombre total de parties jouées: "+nbrpartie_moyennes);
             System.out.println("Taux de réussite du joueur : "+tauxreussite_moyen);
            
             System.out.println("------Statistiques niveau dificile ");
             System.out.println("Nombre de parties non terminées: "+String.valueOf(nbrpartie_dificiles-nbrpartiedificiles_terminées));
             System.out.println("Nombre de parties gagnées: "+nbrpartiedificiles_terminées+" "+"Temps de résolution moyen: "+tempsmoyreso_dificile);
             System.out.println("Nombre total de parties jouées: "+nbrpartie_dificiles);
             System.out.println("Taux de réussite du joueur : "+tauxreussite_dificile);
            
            
             System.out.println("---------------------------Statistiques globales--------------------------");
            
             System.out.println("Nombre de parties perdues: "+nbrpartieperdue);
             System.out.println("Nombre de parties gagnées: "+nbrpartiegagnée+" "+"Temps de résolution moyen: "+tempsresomoy);
             System.out.println("Nombre total de parties jouées: "+nbrpartiejouée);
             System.out.println("Taux de réussite du joueur : "+(nbrpartiegagnée)/(nbrpartiejouée)*100);
            
            
            
          
            

              
            


}
}

            

Posté par
gggg1234
re : Sauvegarde d'informations sur java 06-02-15 à 18:09

Voici une version légèremen corrigée.
Elle tourne mais il y a encore des bugs que tu dois corriger.
Genre si on tape "5" (partie echouée), il demande qd meme le temps ce qui n'est pas normal..tu dois verifier tes if

mais elles'execute donc tes tets sotn faciles:
import java.util.Scanner;
public class test{

static Scanner sudoku = new Scanner (System.in);

public static void main(String[] args){

//initalisation variables
     int Sudoku = 0;// niveau de jeu
     int Resultat = 0;// la condition, remplie ou pas
     int nbrpartie_faciles = 1;// nombre de parties faciles jouées
     int nbrpartie_moyennes = 1;// nombre de parties moyennes jouées
     int nbrpartie_dificiles = 1;// nombre de parties dificiles jouées
     int nbrpartiefaciles_terminées = 1;// nombre de parties faciles gagnées
     int nbrpartiemoyennes_terminées = 1;// nombre de parties moyennes gagnées
     int nbrpartiedificiles_terminées = 1;// nombre de parties dificiles gagnées
     int tauxreussite_facile = nbrpartiefaciles_terminées/nbrpartie_faciles*100;// taux de réussite des parties de niveau facile
     int tauxreussite_moyen = nbrpartiemoyennes_terminées/nbrpartie_moyennes*100;// taux de réussite des parties de niveau moyen
     int tauxreussite_dificile = nbrpartiedificiles_terminées/nbrpartie_dificiles*100;// taux de réussite des parties de niveau dificile
     int tempsreso_facile = 0;// temps de resolution d'une partie de niveau facile
     int tempsreso_moyen = 0;// temps de resolution d'une partie de niveau moyen
     int tempsreso_dificile = 0;// temps de resolution d'une partie de niveau dificile
     int tempsmoyreso_facile = tempsreso_facile/nbrpartiefaciles_terminées;//temps de resolution moyen d'une partie de niveau facile
     int tempsmoyreso_moyen = tempsreso_moyen/nbrpartiemoyennes_terminées;// temps de resolution moyen d'une partie de niveau moyen
     int tempsmoyreso_dificile = tempsreso_dificile/nbrpartiedificiles_terminées;// temps de resolution moyen d'une partie de niveau dificile
     int nbrpartieperdue = (nbrpartie_faciles+nbrpartie_moyennes+nbrpartie_dificiles)-(nbrpartiefaciles_terminées+nbrpartiemoyennes_terminées+nbrpartiedificiles_terminées);// nombre de parties perdues
     int nbrpartiegagnée = nbrpartiefaciles_terminées+nbrpartiemoyennes_terminées+nbrpartiedificiles_terminées;// nombre de parties gagnées
     int nbrpartiejouée = nbrpartie_faciles+nbrpartie_moyennes+nbrpartie_dificiles;// nombre de parties jouées
     int tempsresomoy = (tempsmoyreso_facile+tempsmoyreso_moyen+tempsmoyreso_dificile)/(nbrpartiefaciles_terminées+nbrpartiemoyennes_terminées+nbrpartiedificiles_terminées);// temps de resolution moyen
     String Afficheur1 = null;
     String Afficheur2 = null;
     String Afficheur3 = null;
    
           //affichage message de bienvenue et enregistrement du nom, prénom, age

           System.out.println ("Bonjour, veuillez suivre les informations qui s'afficheront sur votre écran");//affichage message de bienvenue
                          
          int condition_nom = 0;
          while (condition_nom == 0){
          
                    Scanner Unscanner1 = new Scanner(System.in);//initialisation du scanner correspondant
                    System.out.print(" Entrez votre nom : ");
                     Afficheur1 = Unscanner1.nextLine();//extraction du contenu de la dernière ligne tapée par l'utilisateur
                    if(Afficheur1.length()<3){
                                        
                                            System.out.println("Vous devez inserez un nom compris entre 3 et 256 caractères");
                                           condition_nom = 0;
                                          
                                            }
                                      else if (Afficheur1.length()>256){
                                      
                                            System.out.println("Vous devez inserez un nom compris entre 3 et 256 caractères");
                                            condition_nom = 0;
                                                                                                        }
                                    else {condition_nom = 1;}
                                          }  
                                      
                                        
                          
                              int condition_nom1 = 0;
                        while (condition_nom1 == 0){
    
                                                Scanner Unscanner2 = new Scanner(System.in);
                                        
                                                  System.out.print(" Entrez votre Prénom : ");
        
                                                    Afficheur2 = Unscanner2.nextLine();
                                                    
                                                    
                                                    if(Afficheur2.length()<3){
                                                    
                                                        System.out.println("Vous devez inserez un nom compris entre 3 et 256 caractères");
                                                        
                                                       condition_nom1 = 0;
                                                      
                                                        }
                                                  else if (Afficheur2.length()>256){
                                                  
                                                        System.out.println("Vous devez inserez un nom compris entre 3 et 256 caractères");
                                                        
                                                        condition_nom1 = 0;
                                                        
                                                                        }
                                                else {condition_nom1 = 1;}
                                                      }  
        
        
                                          int condition_age = 0;
                                          int a = 10;
                                          int b = 90;
                                          while (condition_age == 0){
                                          
                                                            Scanner Unscanner3 = new Scanner(System.in);//initialisation du scanner correspondant
        
                                                              System.out.print(" Entrez votre âge :");
        
                                                                 Afficheur3 = Unscanner3.nextLine();//extraction du contenu de la dernière ligne tapée par l'utilisateur    
                                                                
                                                                                                                                                                                
                                                                 if(Integer.parseInt(Afficheur3) < 10){
                                                                     System.out.println("Vous devez inserez un nombre compris entre 10 et 90");
                                                                    condition_age = 0;
                                                                     }
                                                                  else if (Integer.parseInt(Afficheur3) > 90){
                                                                     System.out.println("Vous devez inserez un nom compris entre 10 et 90");
                                                                     condition_age = 0;
                                                                                     }
                                                                   else {condition_age = 1;}
                                                                   }  
                            
                        
              
                      
                      
                String reponse="O";                    
              
               while (reponse.equals('O'));// quand la réponse égale à O alors lancement de la boucle
               {
              

                         System.out.println("Veuillez choisir un niveau de jeu:");
                          System.out.println (" -----------------------------------");              
                           System.out.println (" Entrez 1 pour Sudoku Debutant");
                   System.out.println (" Entrez 2 pour Sudoku Intermediaire");
                    System.out.println (" Entrez 3 pour Sudoku Expert");
                     System.out.println (" -----------------------------------");  
                    
                Sudoku = sudoku.nextInt();// extraction de la réponse
          
          
                    
             if(Sudoku ==1){// si le niveau choisi est égale à 1 alors lancement de la boucle corespondante
                            nbrpartie_faciles++; // incrémentaion du nombre parties faciles      
                    
                    System.out.println("Avez-vous gagné la partie?");
          
                    Scanner Unscanner4 = new Scanner(System.in);//initialisation du scanner correspondant

                              System.out.print(" Tapez 4 pour oui ");
                              System.out.print(" Tapez 5 pour non ");

                        String Afficheur4 = Unscanner4.nextLine(); //extraction du contenu de la dernière ligne tapée par l'utilisateur
                        
                      
                              System.out.println("En combien de temps vous avez remplie la grille?");
                            
                    Scanner Unscanner5 = new Scanner(System.in);//initialisation du scanner correspondant
                  
                  System.out.println("Donnez la réponse en minutes");
        
                      String Afficheur5 = Unscanner5.nextLine();//extraction du contenu de la dernière ligne tapée par l'utilisateur
        
        
                      if(Resultat ==4)// si le joueur a gagné la partie alors
                                     nbrpartiefaciles_terminées++;// incrémentation du nombre de parties faciles gagnées                                    
                                  tempsreso_facile = (nbrpartiefaciles_terminées * tempsreso_facile) + Integer.parseInt(Afficheur5) / ( nbrpartiefaciles_terminées); //calcul du temps de résolution        
                                   tauxreussite_facile = nbrpartiefaciles_terminées/nbrpartie_faciles*100;// calcul du taux de réussite
              
         }        
               else {              
               tauxreussite_facile = nbrpartiefaciles_terminées-1/nbrpartie_faciles*100;//sinon calcul du taux de reussite en ajoutant un echec
               }

          
               if(Sudoku ==2){// si le niveau choisi est égale à 2 alors lancement de la boucle corespondante
                                  nbrpartie_moyennes++;
                  
                                
                           System.out.println("Avez-vous gagné la partie?");
          
                    Scanner Unscanner6 = new Scanner(System.in);//initialisation du scanner correspondant

                              System.out.print(" Tapez 4 pour oui ");                  
                                System.out.print(" Tapez 5 pour non ");

                        String Afficheur6 = Unscanner6.nextLine(); //extraction du contenu de la dernière ligne tapée par l'utilisateur
                
                              System.out.println("En combien de temps vous avez remplie la grille?");
                            
                    Scanner Unscanner7 = new Scanner(System.in);//initialisation du scanner correspondant
        
                  System.out.println("Donnez la réponse en minutes");
                  
                      String Afficheur7 = Unscanner7.nextLine();  //extraction du contenu de la dernière ligne tapée par l'utilisateur              
          
                    if(Resultat ==4)// si le joueur a gagné la partie alors
                                nbrpartiemoyennes_terminées++;// incrémentation du nombre de parties moyennes gagnées                                  
                                 tempsreso_moyen = (nbrpartiemoyennes_terminées * tempsreso_moyen) + Integer.parseInt(Afficheur7) / ( nbrpartiemoyennes_terminées);//calcul du temps de résolution                            
                                  tauxreussite_moyen = nbrpartiemoyennes_terminées/nbrpartie_moyennes*100;// calcul du taux de réussite
           }
           else {
           tauxreussite_moyen = nbrpartiemoyennes_terminées-1/nbrpartie_moyennes*100;//sinon calcul du taux de reussite en ajoutant un echec
             }
          
          
          
               if(Sudoku ==3){// si le niveau choisi est égale à 3 alors lancement de la boucle corespondante
                              nbrpartie_dificiles++;// incrémentaion du nombre parties dificiles  
          
                            
                      System.out.println("Avez-vous gagné la partie?");
          
                    Scanner Unscanner8 = new Scanner(System.in);//initialisation du scanner correspondant

                              System.out.print(" Tapez 4 pour oui ");                  
                                System.out.print(" Tapez 5 pour non ");
  
                          String Afficheur8 = Unscanner8.nextLine();//extraction du contenu de la dernière ligne tapée par l'utilisateur          
                                        
                                System.out.println("En combien de temps vous avez remplie la grille?");
                              
                    Scanner Unscanner9 = new Scanner(System.in);//initialisation du scanner correspondant
                  
                  System.out.println("Donnez la réponse en minutes");
                
                      String Afficheur9 = Unscanner9.nextLine();//extraction du contenu de la dernière ligne tapée par l'utilisateur
        
                      if(Resultat ==4)// si le joueur a gagné la partie alors
                                nbrpartiedificiles_terminées++;// incrémentation du nombre de parties dificiles gagnées                                  
                                 tempsreso_dificile= (nbrpartiedificiles_terminées * tempsreso_dificile) + Integer.parseInt(Afficheur9) / ( nbrpartiedificiles_terminées);//calcul du temps de résolution
                                   tauxreussite_dificile = nbrpartiedificiles_terminées/nbrpartie_dificiles*100;// calcul du taux de réussite
          
              
           }
           else {
           tauxreussite_dificile = nbrpartiedificiles_terminées-1/nbrpartie_dificiles*100;//sinon calcul du taux de reussite en ajoutant un echec
             }
          

          
             System.out.println("Voulez-vous inserer d'autres parties? (O/N)");
             Scanner Unscanner10 = new Scanner(System.in);
             reponse = Unscanner10.nextLine();          
              //extraction de la reponse
                                
                                 //si la reponse est non alors sortie de la boucle
                    
                           //et affichage des résultats des variables

               }
              
             System.out.println("*****************************Statistiques Sudoku*****************************");
            
             System.out.println("-------Informations personnelles");
             System.out.println("Nom:"+" "+Afficheur1+".");
             System.out.println("Prénom:"+""+Afficheur2+".");
             System.out.println("Âge:"+""+Afficheur3+"ans.");
            
            
             System.out.println("---------------------------Statistiques détaillées--------------------------");
            
             System.out.println("------Statistiques niveau facile ");
             System.out.println("Nombre de parties non terminées: "+String.valueOf(nbrpartie_faciles-nbrpartiefaciles_terminées));
             System.out.println("Nombre de parties gagnées: "+nbrpartiefaciles_terminées+" "+"Temps de résolution moyen: "+tempsmoyreso_facile);
             System.out.println("Nombre total de parties jouées: "+nbrpartie_faciles);
             System.out.println("Taux de réussite du joueur : "+tauxreussite_facile);
            
             System.out.println("------Statistiques niveau moyen ");
             System.out.println("Nombre de parties non terminées: "+String.valueOf(nbrpartie_moyennes-nbrpartiemoyennes_terminées));
             System.out.println("Nombre de parties gagnées: "+nbrpartiemoyennes_terminées+" "+"Temps de résolution moyen: "+tempsmoyreso_moyen);
             System.out.println("Nombre total de parties jouées: "+nbrpartie_moyennes);
             System.out.println("Taux de réussite du joueur : "+tauxreussite_moyen);
            
             System.out.println("------Statistiques niveau dificile ");
             System.out.println("Nombre de parties non terminées: "+String.valueOf(nbrpartie_dificiles-nbrpartiedificiles_terminées));
             System.out.println("Nombre de parties gagnées: "+nbrpartiedificiles_terminées+" "+"Temps de résolution moyen: "+tempsmoyreso_dificile);
             System.out.println("Nombre total de parties jouées: "+nbrpartie_dificiles);
             System.out.println("Taux de réussite du joueur : "+tauxreussite_dificile);
            
            
             System.out.println("---------------------------Statistiques globales--------------------------");
            
             System.out.println("Nombre de parties perdues: "+nbrpartieperdue);
             System.out.println("Nombre de parties gagnées: "+nbrpartiegagnée+" "+"Temps de résolution moyen: "+tempsresomoy);
             System.out.println("Nombre total de parties jouées: "+nbrpartiejouée);
             System.out.println("Taux de réussite du joueur : "+(nbrpartiegagnée)/(nbrpartiejouée)*100);
            
            
            
          
            

              
            


}
}

Posté par
Riley
re : Sauvegarde d'informations sur java 06-02-15 à 18:14

Ok j'ai vu les corrections merci, je vais régler le problème  des if.

Posté par
Riley
re : Sauvegarde d'informations sur java 06-02-15 à 18:36

C'est bon c'est réglé en faisant comme ça :
if(Sudoku ==1){// si le niveau choisi est égale à 1 alors lancement de la boucle corespondante
            
                            nbrpartie_faciles++; // incrémentaion du nombre parties faciles      
                    
                  System.out.println("Avez-vous gagné la partie?");
          
                    Scanner Unscanner4 = new Scanner(System.in);//initialisation du scanner correspondant

                      System.out.print(" Tapez 4 pour oui ");
                      
                         System.out.print(" Tapez 5 pour non ");

                           String Afficheur4 = Unscanner4.nextLine(); //extraction du contenu de la dernière ligne tapée par l'utilisateur
                        
                        if(Resultat ==4)// si le joueur a gagné la partie alors
                        
                                nbrpartiefaciles_terminées++;// incrémentation du nombre de parties faciles gagnées                                    
                                
                              tauxreussite_facile = nbrpartiefaciles_terminées/nbrpartie_faciles*100;// calcul du taux de réussite  
                              
               }  
            
               else {  
               
                          tauxreussite_facile = nbrpartiefaciles_terminées-1/nbrpartie_faciles*100;//sinon calcul du taux de reussite en ajoutant un echec
                          
                        System.out.println("En combien de temps vous avez remplie la grille?");
                  
                         Scanner Unscanner5 = new Scanner(System.in);//initialisation du scanner correspondant
                  
                      System.out.println("Donnez la réponse en minutes");
        
                   String Afficheur5 = Unscanner5.nextLine();//extraction du contenu de la dernière ligne tapée par l'utilisateur
                  
                     tempsreso_facile = (nbrpartiefaciles_terminées * tempsreso_facile) + Integer.parseInt(Afficheur5) / ( nbrpartiefaciles_terminées); //calcul du temps de résolution
                    
               }

Posté par
Riley
re : Sauvegarde d'informations sur java 06-02-15 à 18:55

Voilà je crois pouvoir dire qu'il est terminé pour l'instant:
Je te l'envoie un dernière fois pour que tu puisse le tester.

import java.util.Scanner;
public class sudokupart1 {





static Scanner sudoku = new Scanner (System.in);

public static void main(String[] args){

//initalisation variables
     int Sudoku = 0;// niveau de jeu
     int Resultat = 0;// la condition, remplie ou pas
     int nbrpartie_faciles = 1;// nombre de parties faciles jouées
     int nbrpartie_moyennes = 1;// nombre de parties moyennes jouées
     int nbrpartie_dificiles = 1;// nombre de parties dificiles jouées
     int nbrpartiefaciles_terminées = 1;// nombre de parties faciles gagnées
     int nbrpartiemoyennes_terminées = 1;// nombre de parties moyennes gagnées
     int nbrpartiedificiles_terminées = 1;// nombre de parties dificiles gagnées
     int tauxreussite_facile = nbrpartiefaciles_terminées/nbrpartie_faciles*100;// taux de réussite des parties de niveau facile
     int tauxreussite_moyen = nbrpartiemoyennes_terminées/nbrpartie_moyennes*100;// taux de réussite des parties de niveau moyen
     int tauxreussite_dificile = nbrpartiedificiles_terminées/nbrpartie_dificiles*100;// taux de réussite des parties de niveau dificile
     int tempsreso_facile = 0;// temps de resolution d'une partie de niveau facile
     int tempsreso_moyen = 0;// temps de resolution d'une partie de niveau moyen
     int tempsreso_dificile = 0;// temps de resolution d'une partie de niveau dificile
     int tempsmoyreso_facile = tempsreso_facile/nbrpartiefaciles_terminées;//temps de resolution moyen d'une partie de niveau facile
     int tempsmoyreso_moyen = tempsreso_moyen/nbrpartiemoyennes_terminées;// temps de resolution moyen d'une partie de niveau moyen
     int tempsmoyreso_dificile = tempsreso_dificile/nbrpartiedificiles_terminées;// temps de resolution moyen d'une partie de niveau dificile
     int nbrpartieperdue = (nbrpartie_faciles+nbrpartie_moyennes+nbrpartie_dificiles)-(nbrpartiefaciles_terminées+nbrpartiemoyennes_terminées+nbrpartiedificiles_terminées);// nombre de parties perdues
     int nbrpartiegagnée = nbrpartiefaciles_terminées+nbrpartiemoyennes_terminées+nbrpartiedificiles_terminées;// nombre de parties gagnées
     int nbrpartiejouée = nbrpartie_faciles+nbrpartie_moyennes+nbrpartie_dificiles;// nombre de parties jouées
     int tempsresomoy = (tempsmoyreso_facile+tempsmoyreso_moyen+tempsmoyreso_dificile)/(nbrpartiefaciles_terminées+nbrpartiemoyennes_terminées+nbrpartiedificiles_terminées);// temps de resolution moyen
     String Afficheur1 = null;
     String Afficheur2 = null;
     String Afficheur3 = null;
    
           //affichage message de bienvenue et enregistrement du nom, prénom, age

           System.out.println ("Bonjour, veuillez suivre les informations qui s'afficheront sur votre écran");//affichage message de bienvenue
                          
          int condition_nom = 0; //initialisation variables pour la condition sur la limite de caractères
          while (condition_nom == 0){
          
                    Scanner Unscanner1 = new Scanner(System.in);//initialisation du scanner correspondant
                    System.out.print(" Entrez votre nom : ");
                     Afficheur1 = Unscanner1.nextLine();//extraction du contenu de la dernière ligne tapée par l'utilisateur
                    if(Afficheur1.length()<3){ // si le nom comporte moin de 3 caractères
                                        
                                            System.out.println("Vous devez inserez un nom compris entre 3 et 256 caractères");
                                           condition_nom = 0; // variable à zero tant que la condition n'est pas remplie
                                          
                                            }
                                      else if (Afficheur1.length()>256){ // si le nom comporte plus de 256 caractères
                                      
                                            System.out.println("Vous devez inserez un nom compris entre 3 et 256 caractères");
                                            condition_nom = 0; // variable à zero tant que la condition n'est pas remplie
                                                                                                        }
                                    else {condition_nom = 1;} // quand la condition est remplie passage à 1 et sortie de la boucle
                                          }  
                                      
                                        
                          
                              int condition_nom1 = 0;//initialisation variables pour la condition sur la limite de caractères
                        while (condition_nom1 == 0){
    
                                                Scanner Unscanner2 = new Scanner(System.in); //initialisation du scanner correspondant
                                        
                                                  System.out.print(" Entrez votre Prénom : ");
        
                                                    Afficheur2 = Unscanner2.nextLine(); //extraction du contenu de la dernière ligne tapée par l'utilisateur
                                                    
                                                    
                                                    if(Afficheur2.length()<3){ // si le prénom comporte moin de 3 caractères
                                                    
                                                        System.out.println("Vous devez inserez un nom compris entre 3 et 256 caractères");
                                                        
                                                       condition_nom1 = 0; // variable à zero tant que la condition n'est pas remplie
                                                      
                                                        }
                                                  else if (Afficheur2.length()>256){ // si le prénom comporte plus de 256 caractères
                                                  
                                                        System.out.println("Vous devez inserez un nom compris entre 3 et 256 caractères");
                                                        
                                                        condition_nom1 = 0; // variable à zero tant que la condition n'est pas remplie
                                                        
                                                                        }
                                                else {condition_nom1 = 1;} // quand la condition est remplie passage à 1 et sortie de la boucle
                                                      }  
        
        
                                          int condition_age = 0;
                                          int a = 10; //initialisation variables pour limte age de 10 à 90
                                          int b = 90;
                                          while (condition_age == 0){
                                          
                                                            Scanner Unscanner3 = new Scanner(System.in);//initialisation du scanner correspondant
        
                                                              System.out.print(" Entrez votre âge :");
        
                                                                 Afficheur3 = Unscanner3.nextLine();//extraction du contenu de la dernière ligne tapée par l'utilisateur    
                                                                
                                                                                                                                                                                
                                                                 if(Integer.parseInt(Afficheur3) < 10){ // si le nombre est inferieur à 10
                                                                     System.out.println("Vous devez inserez un nombre compris entre 10 et 90");
                                                                    condition_age = 0; // variable à zero tant que la condition n'est pas remplie
                                                                     }
                                                                  else if (Integer.parseInt(Afficheur3) > 90){ // si le nombre est superieur à 90
                                                                     System.out.println("Vous devez inserez un nom compris entre 10 et 90");
                                                                     condition_age = 0; // variable à zero tant que la condition n'est pas remplie
                                                                                     }
                                                                   else {condition_age = 1;} // quand la condition est remplie passage à 1 et sortie de la boucle
                                                                   }  
                            
                        
              
                      
                      
                String reponse="O";                    
              
               while (reponse.equals('O'));// quand la réponse égale à O alors lancement de la boucle
               {
              

                         System.out.println("Veuillez choisir un niveau de jeu:");
                          System.out.println (" -----------------------------------");              
                           System.out.println (" Entrez 1 pour Sudoku Debutant");
                   System.out.println (" Entrez 2 pour Sudoku Intermediaire");
                    System.out.println (" Entrez 3 pour Sudoku Expert");
                     System.out.println (" -----------------------------------");  
                    
                Sudoku = sudoku.nextInt();// extraction de la réponse
          
          
                    
             if(Sudoku ==1){// si le niveau choisi est égale à 1 alors lancement de la boucle corespondante
            
                            nbrpartie_faciles++; // incrémentaion du nombre parties faciles      
                    
                  System.out.println("Avez-vous gagné la partie?");
          
                    Scanner Unscanner4 = new Scanner(System.in);//initialisation du scanner correspondant

                      System.out.print(" Tapez 4 pour oui ");
                      
                         System.out.print(" Tapez 5 pour non ");

                           String Afficheur4 = Unscanner4.nextLine(); //extraction du contenu de la dernière ligne tapée par l'utilisateur
                        
                        if(Resultat ==4)// si le joueur a gagné la partie alors
                        
                                nbrpartiefaciles_terminées++;// incrémentation du nombre de parties faciles gagnées                                    
                                
                              tauxreussite_facile = nbrpartiefaciles_terminées/nbrpartie_faciles*100;// calcul du taux de réussite  
                              
               }  
            
               else {  
               
                          tauxreussite_facile = nbrpartiefaciles_terminées-1/nbrpartie_faciles*100;//sinon calcul du taux de reussite en ajoutant un echec
                          
                        System.out.println("En combien de temps vous avez remplie la grille?");
                  
                         Scanner Unscanner5 = new Scanner(System.in);//initialisation du scanner correspondant
                  
                      System.out.println("Donnez la réponse en minutes");
        
                   String Afficheur5 = Unscanner5.nextLine();//extraction du contenu de la dernière ligne tapée par l'utilisateur
                  
                     tempsreso_facile = (nbrpartiefaciles_terminées * tempsreso_facile) + Integer.parseInt(Afficheur5) / ( nbrpartiefaciles_terminées); //calcul du temps de résolution
                    
               }

          
            
               if(Sudoku ==2){// si le niveau choisi est égale à 2 alors lancement de la boucle corespondante
               
                              nbrpartie_moyennes++;
                  
                                
                    System.out.println("Avez-vous gagné la partie?");
          
                      Scanner Unscanner6 = new Scanner(System.in);//initialisation du scanner correspondant

                        System.out.print(" Tapez 4 pour oui ");
                        
                           System.out.print(" Tapez 5 pour non ");

                             String Afficheur6 = Unscanner6.nextLine(); //extraction du contenu de la dernière ligne tapée par l'utilisateur
                        
                          if(Resultat ==4)// si le joueur a gagné la partie alors
                           
                                  nbrpartiemoyennes_terminées++;// incrémentation du nombre de parties moyennes gagnées                                  
                                                            
                                tauxreussite_moyen = nbrpartiemoyennes_terminées/nbrpartie_moyennes*100;// calcul du taux de réussite
                                
               }
              
           else {
           
                        tauxreussite_moyen = nbrpartiemoyennes_terminées-1/nbrpartie_moyennes*100;//sinon calcul du taux de reussite en ajoutant un echec
            
                          System.out.println("En combien de temps vous avez remplie la grille?");
                            
                       Scanner Unscanner7 = new Scanner(System.in);//initialisation du scanner correspondant
        
                    System.out.println("Donnez la réponse en minutes");
                  
                 String Afficheur7 = Unscanner7.nextLine();  //extraction du contenu de la dernière ligne tapée par l'utilisateur  
                
                   tempsreso_moyen = (nbrpartiemoyennes_terminées * tempsreso_moyen) + Integer.parseInt(Afficheur7) / ( nbrpartiemoyennes_terminées);//calcul du temps de résolution
                  
             }
          
          
          
               if(Sudoku ==3){// si le niveau choisi est égale à 3 alors lancement de la boucle corespondante
               
                              nbrpartie_dificiles++;// incrémentaion du nombre parties dificiles  
          
                            
                    System.out.println("Avez-vous gagné la partie?");
          
                      Scanner Unscanner8 = new Scanner(System.in);//initialisation du scanner correspondant

                        System.out.print(" Tapez 4 pour oui ");  
                        
                           System.out.print(" Tapez 5 pour non ");
  
                             String Afficheur8 = Unscanner8.nextLine();//extraction du contenu de la dernière ligne tapée par l'utilisateur
                          
                          if(Resultat ==4)// si le joueur a gagné la partie alors
                           
                              nbrpartiedificiles_terminées++;// incrémentation du nombre de parties dificiles gagnées                                  
                                
                            tauxreussite_dificile = nbrpartiedificiles_terminées/nbrpartie_dificiles*100;// calcul du taux de réussite
                            
               }
              
           else {
           
                        tauxreussite_dificile = nbrpartiedificiles_terminées-1/nbrpartie_dificiles*100;//sinon calcul du taux de reussite en ajoutant un echec
                                        
                          System.out.println("En combien de temps vous avez remplie la grille?");
                              
                       Scanner Unscanner9 = new Scanner(System.in);//initialisation du scanner correspondant
                  
                    System.out.println("Donnez la réponse en minutes");
                
                 String Afficheur9 = Unscanner9.nextLine();//extraction du contenu de la dernière ligne tapée par l'utilisateur
        
                   tempsreso_dificile= (nbrpartiedificiles_terminées * tempsreso_dificile) + Integer.parseInt(Afficheur9) / ( nbrpartiedificiles_terminées);//calcul du temps de résolution
              
            
                 }
          

          
             System.out.println("Voulez-vous inserer d'autres parties? (O/N)"); //extraction de la reponse
             Scanner Unscanner10 = new Scanner(System.in); //si la reponse est non alors sortie de la boucle
             reponse = Unscanner10.nextLine();          
              
                                
           //et affichage des résultats des variables              
                    
                          

               }
              
             System.out.println("*****************************Statistiques Sudoku*****************************");
            
             System.out.println("-------Informations personnelles");
             System.out.println("Nom:"+" "+Afficheur1+".");
             System.out.println("Prénom:"+""+Afficheur2+".");
             System.out.println("Âge:"+""+Afficheur3+"ans.");
            
            
             System.out.println("---------------------------Statistiques détaillées--------------------------");
            
             System.out.println("------Statistiques niveau facile ");
             System.out.println("Nombre de parties non terminées: "+String.valueOf(nbrpartie_faciles-nbrpartiefaciles_terminées));
             System.out.println("Nombre de parties gagnées: "+nbrpartiefaciles_terminées+" "+"Temps de résolution moyen: "+tempsmoyreso_facile);
             System.out.println("Nombre total de parties jouées: "+nbrpartie_faciles);
             System.out.println("Taux de réussite du joueur : "+tauxreussite_facile);
            
             System.out.println("------Statistiques niveau moyen ");
             System.out.println("Nombre de parties non terminées: "+String.valueOf(nbrpartie_moyennes-nbrpartiemoyennes_terminées));
             System.out.println("Nombre de parties gagnées: "+nbrpartiemoyennes_terminées+" "+"Temps de résolution moyen: "+tempsmoyreso_moyen);
             System.out.println("Nombre total de parties jouées: "+nbrpartie_moyennes);
             System.out.println("Taux de réussite du joueur : "+tauxreussite_moyen);
            
             System.out.println("------Statistiques niveau dificile ");
             System.out.println("Nombre de parties non terminées: "+String.valueOf(nbrpartie_dificiles-nbrpartiedificiles_terminées));
             System.out.println("Nombre de parties gagnées: "+nbrpartiedificiles_terminées+" "+"Temps de résolution moyen: "+tempsmoyreso_dificile);
             System.out.println("Nombre total de parties jouées: "+nbrpartie_dificiles);
             System.out.println("Taux de réussite du joueur : "+tauxreussite_dificile);
            
            
             System.out.println("---------------------------Statistiques globales--------------------------");
            
             System.out.println("Nombre de parties perdues: "+nbrpartieperdue);
             System.out.println("Nombre de parties gagnées: "+nbrpartiegagnée+" "+"Temps de résolution moyen: "+tempsresomoy);
             System.out.println("Nombre total de parties jouées: "+nbrpartiejouée);
             System.out.println("Taux de réussite du joueur : "+(nbrpartiegagnée)/(nbrpartiejouée)*100);
            
                         
                                      
            

            }

}

Posté par
Riley
re : Sauvegarde d'informations sur java 06-02-15 à 19:01

Malheureusement je viens de tester  et ça marche pas très bien:
Déjà il demande deux fois en combien de minutes le sudoku à été fait
Et quand on tape O pour insérer d'autres parties ça m'affiche les stats.

Posté par
gggg1234
re : Sauvegarde d'informations sur java 06-02-15 à 19:25

C'est parceque tu as mis la question sur le temps dans le ELSe
Il faut le mettra avant, qd la personne repond que la partie est gagnee.
Dans le if


Pour les stats, je sais pas, il faut regarder pourquoi tu sors comme ca de la boucle...je n'ai plus mon pc pour tester la.

Posté par
Riley
re : Sauvegarde d'informations sur java 06-02-15 à 19:38

Ok pas de soucis je vais essayé de trouver et je te tiens au courant.
Bonne soirée

Posté par
Riley
re : Sauvegarde d'informations sur java 06-02-15 à 19:54

Ok pas de soucis je vais essayer de trouver et je te tiens au courant.
Bonne soirée

Posté par
Riley
re : Sauvegarde d'informations sur java 09-02-15 à 11:44

Alors j'ai fais quelques recherches et apparemment la répétition est due au fait que la variable résultat reste à 0 et donc du coup le programme répète le else plusieurs fois de suite.
Le problème c'est que je ne vois pas comment résoudre le problème de la valeur de ma variable.

Posté par
Riley
re : Sauvegarde d'informations sur java 09-02-15 à 12:18

Le problème c'est que j'aimerais terminer le programme aujourd'hui hui et là je bloque sur un détail qui est surement simple en plus.

1 2 3 +




Vous devez être membre accéder à ce service...

Pas encore inscrit ?

1 compte par personne, multi-compte interdit !

Ou identifiez-vous :


Rester sur la page

Désolé, votre version d'Internet Explorer est plus que périmée ! Merci de le mettre à jour ou de télécharger Firefox ou Google Chrome pour utiliser le site. Votre ordinateur vous remerciera !