Курс по Raku / Основи / Позиционни типове данни / Упражнения / Броене и принтиране на аргументите на командния ред
Решение: Броене и принтиране на аргументите на командния ред
В тази програма, for
цикъл е добър избор.
Код
for ^@*ARGS -> $n {
say "{$n + 1}. @*ARGS[$n]";
}
🦋 Намерете програмата във файла count-and-print-arguments.raku.
Изход
Стартирайте програмата и потвърдете, че отпечатва аргументите и номерата на редовете:
$ raku exercises/positionals/count-and-print-arguments.raku one two three four
1. one
2. two
3. three
4. four
Дискусия
Тази програма използва няколко полезни трика. Първо, for
цикълът преминава през интервал, създаден с ^
. Така че, интервалът започва от 0 и стига до (но не включва) стойността на @*ARGS
. В този контекст, той връща дължината на масива.
Тъй като първият елемент на масива има индекс 0
, а задачата изисква да броим редовете от 1
, тази проста промяна се изчислява вътре в кодов блок в низ: "{$n + 1} ..."
.
Следващо упражнение
Навигация по курса
← Типизирани променливи / Аломорфи | Асоциативни типове данни →
Тази страница е автоматично преведена с ChatGPT 4.0. Оригинален текст на английски
Преводи на тази страница: English • Deutsch • Español • Italiano • Latviešu • Nederlands • Български • Русский • Українська