/**
 * Created by zulupero on 20/06/16.
 */
public class Bug extends Buggle {
    public Bug(int posx, int posy, int dir) {
        super(posx, posy, dir);
    }

    public void enRoute() throws InterruptedException {
        setVitesse(2);
        String ligne;         // pour ranger une ligne de texte
        String currentFirst;  // pour ranger le premier caractère (une chaine d'un seul caractère)

        int cptLignes = 0;    // pour compter les lignes traitées
        int cptErreurs= 0;    // pour compter les fautes relevées

        while (Main.input.hasNextLine()) { // tant qu'il y a une ligne dà lire dans le fichier
            ligne = Main.input.nextLine(); // on la lit 
            currentFirst = ligne.substring(0,1); // et on extrait le premier caractère
            cptLignes++;                         // on incrémente le compteur de lignes
            if (!currentFirst.toUpperCase().equals(currentFirst)){ // puis on compare le caractère initial avec sa version majuscule
                cptErreurs++;                                       // s'il ne sont pas égaux, c'est qu'on éatit en présence d'une minuscule
                ligne = currentFirst.toUpperCase()+ligne.substring(1); // on corrige après avoir incrémenté le compteur d'erreurs
            }
            message(ligne);  // enfin on émet la ligne corrigée (ou non) sur la console

        }

        message("-------- fin de la correction ----------");
        message("Note : "+100.0*(cptLignes-cptErreurs)/cptLignes + "% de bonnes phrases."); // calcul de la note
    }
}
