Résolu Aide Java's Cool [Mini-Projet Bac Blanc]

XSaFe49

Membre
Inscription
6 Juillet 2012
Messages
33
Réactions
5
Points
19 366
Bonjour , je suis actuellement en Terminale Scientifique avec option Informatique et Sciences du numérique . Bref trève de bavardage .
En mini-projet ma collègue et moi on a pour but de programmer un programme en Java's Cool (Sous-éditeur pour programmeur débutant avec seulement les bases du Java ).
Nous bénéficions d'une liste de 24 000 mots de dictionnaires. Maleuresement ils y a des mots que l'on ne veux pas et on ne veut que des mots supérieurs à au moins 4 caractères .
Je vous laisses notre début de programme mais cela ne marche pas .
Je vous laisses voir .
Merci d'avance pour votre aide.
Si vous avez des questions n'hésitez pas a me mp :)

:RG:
Code:
//JEU DU PENDU

import java.io. *;

//Fonction choix aléatoire du mot dans le fichier texte qui renvoie un String
String choix() {
    String ligne = "";
    int nombre = random(1, 22740);
    println("Nombre aléatoire choisi : " + nombre);
    try {
        BufferedReader fichier = new BufferedReader(new FileReader("C:/Users/Romanze/Documents/Romane/Cours/Term/ISN/isn mini projet"));
        for (int i = 1; i <= nombre; i ++) {
        ligne = fichier.readLine();
        }
    fichier.close();
    }
    catch(Exception e) {
    }
    return  ligne;
}

//Fonction transformant un String en tableau de char
char[] transfo(String mot) {
    char[] tab = new char [mot.length()];
    for (int i = 0; i < mot.length(); i ++) {
        tab[i] = mot.charAt(i);
    }
 
    println(mot);
    return  tab;
}

void main() {
    String mot;//Création d'un mot
    mot = choix(); //variable mot pour le mot choisi aléatoirement
    char [] tabcar;//tableau de caractères
 
    int longueur=mot.length(); //Variable prenant en compte le nombre de lettres du mot
  
    //Rappel de la fonction pour assigné le mot à la variable String
    tabcar = new char [longueur];
    tabcar=transfo(mot);
  
    //Création d'un tableau avec toutes les lettres du mot
    char premiercaractere;
    int codeASCIIpremiercar;
    premiercaractere = tabcar[0];
    println("premier caractère "+ premiercaractere);
    codeASCIIpremiercar=(int)premiercaractere;
    println("code ASCII " + codeASCIIpremiercar);
  
    boolean verification=false;//Initialisation de la variable à false

    while (verification = false){//Tant que la variable est false
            mot = choix();//On choisit un nouveau mot
        longueur=mot.length();
            tabcar = transfo(mot);

            //Si le mot ne commence pas par une minuscule, verification reste false
            if((97 < codeASCIIpremiercar) && (codeASCIIpremiercar > 122)) {
                verification = false;
            }
            //Si le mot ne commence pas non plus par une majascule, verification reste false
            if((130 < codeASCIIpremiercar) &&(codeASCIIpremiercar < 141)){
                verification = false;
            }
            //Si le mot fait moins de 4 lettres, verification reste false
            if (mot.length() < 4){
                verification = false;
            }
            //Sinon, verifaction devient true
            else {
                verification = true;
              
            }
            println(mot);
        }
    // Conversion de chaque lettre en code ASCII

    int a = 0; //variable pour le numéro du caractère dans le programme
    int m = 1; //variable pour le numéro du caractère dans l'affichage (m = a+1)
  
    int taille = longueur;  
    char cara;
    cara = mot.charAt(a);
    int n = 0;
    n = (int)cara;
    println("Le caractère "+m+" du texte "+mot+" est "+cara+", son code ASCII est : "+n);

    a = a+1;
    m = m+1;
    taille = taille - 1;

        // Tant qu'il reste des lettres à convertir, le programme doit les convertir
    while (taille != 0){
        cara = mot.charAt(a);
        n = (int)cara;
        println("Le caractère "+m+" du texte "+mot+" est "+cara+", son code ASCII est : "+n);
        if((n<97)||(n>122)){
            println("Erreur, le mot devait être entrer en minuscule");
            }

        a =a+1;
        taille = taille - 1;
        m = m+1;
        /*if((130 < cara) &&(cara < 141)){
                if((cara ==130) || (cara == 136) || (cara == 137) || (codeASCIIpremiercar == 138)){
                    cara = 101;
                }
                if((cara ==131) || (cara == 132) || (cara == 133) || (codeASCIIpremiercar == 134)){
                    cara = 97;
                }
                if(cara ==135){
                    cara = 99;
                }
                if((cara ==139) || (cara == 140) || (cara == 141)){
                    cara = 105;
                }

            }*/
      
            /*if(cara == 233){         // transformer lettre avec accent en lettre sans accent
                cara = 101;        // Ne fonctionne pas comme ça
            }
            if(cara== 232){
                cara = 101;
            }
            if(cara == 231){
                cara = 99;
            }
            if(cara == 224){
                cara = 97;
            }*/
            println(mot);
        }
    println("    ");
  
      
    //Ecrire le mot en majuscule

    String maj;
    maj = mot.toUpperCase();
    println ("Le texte "+mot+" donne en majuscule : "+maj);
}
 
Haut