Faire une boucle dans une listeBonjour, j'ai une liste de noms de mois et je veux parcourir la liste en commençant un mois spécifique, disons juin (le 6ème mois) et en reculant vers janvier.
MonthList ={"January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"};
//total number of months
nMonths = N Items (MonthList);
//initialize list of selected months
ElevenMo = {};
For (i = 6, i <= 11, i -= 1,
If (i >= 1, Continue () );
nextMonth = MonthList[i];
Insert Into (ElevenMo, nextMonth[i]),
);Je pense que j'ai les bases mais ma boucle continue dans une boucle infinie.J'apprécierai vos conseils sur la façon de résoudre ce problème. Et oui, à un moment donné, la boucle doit remonter à décembre, mais ce sera une autre bataille.
ScriptingRe: parcourir une liste en boucleVoici 2 façons de faire cela ... J'ai pris la liberté d'ajouter la possibilité de déterminer la valeur de départ à partir du nom du mois à partir duquel vous voulez commencer.Les deux exemples donnent les mêmes résultats
Names Default To Here( 1 );
MonthList = {"January", "February", "March", "April", "May", "June",
"July", "August", "September", "October", "November", "December"};
//total number of months
nMonths = N Items( MonthList );
targetMonth = "June";
startMonth = contains( MonthList, targetMonth );
//initialize list of selected months
ElevenMo = {};
For( i = startMonth, i >= 1, i--,
Insert Into( ElevenMo, MonthList[i] );,
);
Names Default To Here( 1 );
MonthList = {"January", "February", "March", "April", "May", "June",
"July", "August", "September", "October", "November", "December"};
//total number of months
nMonths = N Items( MonthList );
targetMonth = "June";
startMonth = contains( MonthList, targetMonth );
ElevenMo = MonthList[1::startMonth]Re: parcourir une liste en boucleCela devrait fonctionner
MonthList ={"January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"};
//total number of months
nMonths = N Items (MonthList);
//initialize list of selected months
ElevenMo = {};
For (i = 6, i > 0, i--,
nextMonth = MonthList[i];
Insert Into (ElevenMo, nextMonth),
);Re: parcourir une liste en boucleSalut TX et ThuongLe, merci beaucoup pour vos réponses. Ce sont aussi d'excellentes leçons. J'adore l'élégance du StartMonth et du TargetMonth.