Sortir d'une boucle for avant la fin????

[Résolu/Fermé]
Signaler
-
 pom -
Salut,
J'essaye de faire un petit programme sous scilab pour calculer certains paramètres. Voici mon prog:

A=fscanfMat("C:\Documents and Settings\Admin\Mes documents\Fichier\L10.txt");
ME=input("Entrer la moyenne générale de la courbe 1");
MD=input("Entrer la moyenne générale de la courbe 2");

x=input("Entrer le point de la courbe 1");

for x=1:20,

BMD1=A(x,1);
BED1=A(x,2);
BME1=A(x,3);
BEE1=A(x,4);

end,

y=input("Entrer le point de la courbe 2");

for y=1:20,

BMD2=A(y,1);
BED2=A(y,2);
BME2=A(y,3);
BEE2=A(y,4);

end,

Total1=BMD1+BEE2-ME,
Total2=BED1+BME2-MD,
TotalFinal=Total1+Total2,

for z=1:10,
z=input("Voulez faire un autre calcul oui:1 non:2");
select z,
case 1,
x=input("Entrer le point de la courbe 1");

for x=1:20,

BMD1=A(x,1);
BED1=A(x,2);
BME1=A(x,3);
BEE1=A(x,4);

end,

y=input("Entrer le point de la courbe 2");

for y=1:20,

BMD2=A(y,1);
BED2=A(y,2);
BME2=A(y,3);
BEE2=A(y,4);

end,

Total1=BMD1+BEE2-ME,
Total2=BED1+BME2-MD,
TotalFinal=Total1+Total2,

case 2,
disp("fin du calcul")
end

end

Cela marche correctement sauf que parfois je n'ai pas besoin d'executer 10 fois la boucle for dans la deuxieme partie du prog. Du coup si je veux sortir il faut que tape "2" tant que la variable z n'a pas atteint la valeur 10... Je voudrais si l'utilisateur tape 1 continuer les calculs et si c'est 2 que le prog s'arrete sans ce désagrément.
Merci beaucoup

5 réponses

Messages postés
33478
Date d'inscription
jeudi 14 octobre 2004
Statut
Modérateur
Dernière intervention
24 février 2011
1 778
Salut
Réassigne ton index dans la boucle à une valeur supérieure au maximum de ta boucle :)
10
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 65492 internautes nous ont dit merci ce mois-ci

Messages postés
61
Date d'inscription
mardi 15 février 2005
Statut
Membre
Dernière intervention
8 décembre 2014
12
Merci en effet il y a une commande exit... Ca fonctionne. Merci encore!
Messages postés
5927
Date d'inscription
mercredi 26 mai 2004
Statut
Contributeur
Dernière intervention
18 septembre 2009
212
de rien m'sieur
bonne journée
Une autre solution, sans utiliser le exit ou le break, serait d'utiliser un while ou un do... while à la place du for
Messages postés
5927
Date d'inscription
mercredi 26 mai 2004
Statut
Contributeur
Dernière intervention
18 septembre 2009
212
Sinon il doit y avoir une fonction du type exit qui permet de sortir de la boucle. ça existe en c ça doit bien exister avec ton language.
Messages postés
20
Date d'inscription
lundi 20 février 2006
Statut
Membre
Dernière intervention
13 juin 2007
4
je connais scilab, cherche dans l'aide s'il y a une espece de 'break', sinon regarde dans la doc des boucles, tape exit, en ce qui concerne scilab, j'ai toujours eu affaire à 'help'
Messages postés
8731
Date d'inscription
vendredi 19 septembre 2003
Statut
Modérateur
Dernière intervention
20 août 2016
1 519
Wep, c'est bien break en c.

Après edition:
Oups, c'est pas du C, bon je sors alors :-|