I.S.I.L - Institut Supérieur des Ingénieurs Liégeois

Nous vous souhaitons la bienvenue et une bonne visite sur le forum de
I.S.I.L - Institut Supérieur des Ingénieurs Liégeois

Merci de vous connecter ou vous inscrire.
I.S.I.L - Institut Supérieur des Ingénieurs Liégeois

Forum d'entraide


    Exercice java 1

    Partagez

    Andy_D
    Apprenti
    Apprenti

    Messages : 68
    Date d'inscription : 14/09/2010
    Age : 28

    Exercice java 1

    Message par Andy_D le Sam 9 Oct - 13:48

    Bonjour,
    Afin d'aider ceux qui ont des difficultés dans le cours de java (donné par Mr. JP Conniasselle) ou tout simplement vous permettre de vous sortir d'un impasse ou de comparer votre code, voici le code source du premier exercice.
    Il est bien entendu que celui-ci est sujet à discussions/modifications, mais finalement il remplit ses objectifs (ce qui n'est déjà pas si mal Laughing).

    L'énoncé de ce premier exercice était le suivant :
    Ecrire un programme Java permettant de :
    • Lire une valeur entière n qui doit être comprise entre 10 et 999. Tout autre valeur doit etre refusée et redemandée.
    • Extraire les 2 ou trois chiffres de la valeur entière et enregistrer ceux ci dans les 3 variables entières : "centaine", "dizaine", "unite".
    • Afficher différents messages. (voir énoncé complet).


    Je rappel que l'objectif du premier cours étant d'appréhender les notions de la POO, il était demandé de faire un programme simple, avec une classe unique et d'utiliser principalement des 'IF'.

    Code:

    import javax.swing.*;

    class Theorie1
    {
        public static void main(String args[])
        {
            int n=0, centaine=0, dizaine=0, unite=0;
            String str="";
            do
            {
            str = JOptionPane.showInputDialog("Entre un nombre [10 -> 999] :");
            try {
                  n = Integer.parseInt(str);
            } catch (Exception e) {
                n=0;
                System.out.print("erreur lors du parsing");
            }
            } while (n<10 || n>999);

            String message=str+" possède ";
            if(n<100) // nbre à deux chiffres
            {
                dizaine=n/10;
                unite=n%10;
                if(dizaine==unite)
                {
                    message+= "2 chiffres identiques";
                }
                else
                { message+= "2 chiffres différents \nTrié de gauche a droite par ordre";
                    if(dizaine>unite)
                    {
                        message+= " décroissant";
                    }
                    else
                    {
                      message+= " croissant";
                    }
                }
            }
            else // nbre à trois chiffres
            {
                centaine = n/100;
                dizaine=(n/10)%10;
                unite=n%10;

                if(centaine == dizaine && dizaine == unite)
                {
                    message+="3 chiffres identiques";
                }
                else if(centaine == dizaine || dizaine == unite || centaine == unite)
                {
                    message+="2 chiffres identiques";
                }
                else if(centaine != dizaine || dizaine != unite || centaine != unite)
                {
                    message+="3 chiffres différents";

                    if(centaine>dizaine && dizaine>unite)
                    {
                      message+="\nTrié de gauche à droite par ordre décroissant";
                    }
                    else if(centaine<dizaine && dizaine<unite)
                    {
                        message+="\nTrié de gauche à droite par ordre croissant";
                    }

                }
            }
            JOptionPane.showMessageDialog(null, message);
        }
    }


    Si d'aventures, vous avez des questions, n'hésitez pas.

    Andy D.
    B33P
    2010-2011

      La date/heure actuelle est Mar 24 Jan - 13:03