Recorrer una listaHola, tengo una lista de nombres de meses y quiero recorrer la lista comenzando en un mes específico, digamos junio (el sexto mes) y retrocediendo hasta enero.
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]),
);Creo que tengo lo básico, pero mi ciclo continúa en un ciclo infinito.Agradeceré tus consejos sobre cómo solucionarlo. Y sí, en algún momento el bucle tiene que volver a diciembre, pero esa será otra batalla.
ScriptingRe: recorrer una listaAquí hay 2 formas de hacer esto ... Me tomé la libertad de agregar la capacidad de determinar el valor inicial a partir del nombre del mes en el que desea comenzar.Ambos ejemplos dan los mismos resultados
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]