TP6 QUESTION3

Programmation Avancée

Modérateur : Douin

DEVILLERS
Messages : 1
Inscription : 20 nov. 2017 2:18

TP6 QUESTION3

Message par DEVILLERS » 26 nov. 2017 23:09

Bonsoir ,

il me reste 2 erreurs à la dernière soumission que je ne m'explique pas :

1) test_CompilationExecutionDeMult_7_85(question3) failed
2) test_CompilationDeMult(question3) failed

Mes classes de tests sont bonnes et j'ai eu bon aux questions 1 et 2.

Est-ce que quelqu'un peut m'éclairer svp?

Bénédicte.

Douin
Messages : 200
Inscription : 18 mars 2009 15:46

Re: TP6 QUESTION3

Message par Douin » 27 nov. 2017 12:06

bonjour,

Côté jnews, je n'ai que le retour (booléen) du compilateur javac, vérifiez avant de soumettre que le source java engendré par vos visiteurs se compilent sans erreur

Code : Tout sélectionner

 public void test_CompilationDeMult() throws Exception{
        Contexte m = new Memoire();
        Variable a = new Variable(m,"a",7);
        Variable b = new Variable(m,"b",85);
        Variable z = new Variable(m,"z",0);

        Instruction inst = 
            new Sequence(
                new TantQue(
                    new Sup(b,new Constante(0)),
                    new Selection(
                        new Egal(
                            new Soustraction(b,new Multiplication(new Division(b,new Constante(2)),new Constante(2))),new Constante(1)),
                        new Sequence(
                            new Affectation(z,new Addition(z,a)),
                            new Affectation(b,new Soustraction(b,new Constante(1))) 
                        ),
                        new Sequence(
                            new Affectation(a,new Multiplication(a,new Constante(2))),
                            new Affectation(b,new Division(b,new Constante(2)))
                        )
                    )
                ),
                new Assertion(new Egal(z,new Constante(7*85)))
            );

        VisiteurExpression<String> ves = new VisiteurInfixe(m);
        VisiteurExpressionBooleenne<String> vbs = new VisiteurBoolToJava(ves);
        VisiteurInstruction<String> vs = new VisiteurInstToJava(ves,vbs,4);

        ClasseJava cj = new ClasseJava("Mult", "question3", inst, vs);
        System.out.println(cj.sourceComplet());
        try{
           // ....
        }catch(Exception e){
            fail(" compilation de Sup,Egal, Affectation,Sequence,Selection,TantQue,Assertion ??? " + e.getMessage());
        }
    }

Code : Tout sélectionner

 private static int mult(int a, int b){
        int z = 0 ;
        while (b > 0){
            if ((b -(b / 2)*2) == 1){
                z = z + a  ; b = b-1;
            }else{
                a = 2 * a ; b = b / 2;
            }
        }
        return z;
    }
Bon test

Répondre

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 1 invité