Utilisation Switch and Case
Bonjour à tous,
L'idée principale est que mon script fasse différentes choses selon la passation ou non d'un critère de réussite. Par exemple, le script présente des images d'un type particulier (level 1) et dès qu'il y a obtention de 70% de réponses correctes deux fois consécutives, on présente d'autres images (level 2) et ainsi de suite jusqu'au level 3. Si le critère n'est pas atteint, le script doit présenter les images du level en question,...
Par ce faire et faciliter les choses, j'ai pensé à utiliser switch et case dans un version plus simpliste du programme. Dans ce cas, il y a maximum six présentations d'images et trois level/types d'images différentes. Dans ce script et pour pouvoir simuler les différents cas de figure, j'insère moi-même les résultats
Voici le code;
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65
| crit = 0; % permet de fixer le critère de réussite
for i=1:6
if (i==1)
level = 1;
end
if (i==2)
level = 1;
end
if (i==3) & (crit==2)
level = 2;
else
level = 1;
end
if (i==4) & (crit==2)
level = 2
else
level = 1;
end
if (i==5) & (crit==2)
level = 3;
end
if (i==6) & (crit==2)
level = 3;
end
switch level
case 1
a=input('\nEnter Pourcentage Level1 : ');% permet de donner un chiffre supérieur ou inférieur à 70 pour tester la simulation
if a>=70 & crit==0
crit=1
elseif a>=70 & crit==1
crit=crit+1
else
crit=0
end
case 2
b=input('\nEnter Pourcentage Level2 : ');
if b>70
crit=1
elseif a>70 & crit==1
crit=crit+1
else
crit=0
end
case 3
c=input('\nEnter Pourcentage Level3 : ');
if c>70
crit=1
elseif a>70 & crit==1
crit=crit+1
else
crit=0
end
end
end |
Malheureusement, je ne parviens pas à faire passer le script d'un level de présentation à un autre lorsque le critère est atteint. Cependant, au cours de simulation, je vois bien que le paramètre crit augmente de 0 jusqu'à 2 et puis soudainement il repasse à 0 et cela sans passer d'un level à un autre... je vous avoue donc que je ne sais pas trop d'où peut provenir mon erreur.
Si vous avez une idée ou une suggestion, n'hésitez pas!
Merci d'avance