Bucles for en Delphi
Las cajas de un huerto se cuentan hacia arriba, se listan hacia abajo y luego se recorren sin índice.
program ForLoops;
uses SysUtils;
const
Crates: array[0..3] of Integer = (14, 9, 22, 5);
var
Row, Total, Load: Integer;
begin
Total := 0;
for Row := 0 to High(Crates) do // to counts upward
Total := Total + Crates[Row];
WriteLn(Format('apples picked: %d', [Total]));
for Row := High(Crates) downto 0 do // downto counts backward
WriteLn(Format('crate %d holds %d', [Row, Crates[Row]]));
// for-in hands over each element, so no index is needed.
for Load in Crates do
Write(Load, ' ');
WriteLn;
end.
Cómo funciona
for Row := 0 to High(Crates) dosuma cada caja enTotal.for Row := High(Crates) downto 0 doimprime las mismas cajas al revés.for Load in Crates doentrega cada elemento, así que no hace falta subíndice.
Palabras clave y builtins usados aquí
FormatHighIntegerWriteWriteLnarraybeginconstdodowntoendforinofprogramtousesvar
El intento, en números
- Líneas
- 19
- Caracteres a escribir
- 504
- Tokens
- 124
- Ritmo de tres estrellas
- 80 tpm
Al ritmo de tres estrellas de 80 tokens por minuto, este intento toma unos 93 segundos.
Paso 2 de 3 en Control de flujo; paso 8 de 27 en Fundamentos del lenguaje.