Menu
Coddy logo textTech

Passo

Fa parte della sezione Logica e flusso del percorso Swift di Coddy. Lezione 8 di 56.

Un intervallo procede di un passo alla volta. Se vuoi una dimensione del passo diversa o contare all'indietro, usa stride.

Due varianti: stride(from:to:by:) si ferma prima del secondo valore (intervallo semiaperto), stride(from:through:by:) può includerlo (intervallo chiuso):

for n in stride(from: 0, to: 10, by: 2) {
    print(n)
}
// 0, 2, 4, 6, 8
for n in stride(from: 10, through: 0, by: -2) {
    print(n)
}
// 10, 8, 6, 4, 2, 0

L'argomento by: deve avere il segno giusto: positivo quando si conta in avanti, negativo quando si conta all'indietro. Se non corrisponde, il ciclo viene eseguito zero volte.

challenge icon

Sfida

Facile

Leggi tre numeri interi (tre righe): start, end, step. Il passo può essere positivo o negativo. L'intervallo è inclusivo a entrambe le estremità (usa stride(from:through:by:)).

Stampa:

  1. I valori nella sequenza, uniti con ,
  2. Il numero di valori prodotti

Per l'input 0 / 10 / 3, l'output è:

0,3,6,9
4

Per l'input 10 / 0 / -2, l'output è:

10,8,6,4,2,0
6

Provalo tu

let start = Int(readLine()!)!
let end = Int(readLine()!)!
let step = Int(readLine()!)!

// TODO: stride(from:through:by:), unisci con una virgola, poi stampa il conteggio
quiz iconMettiti alla prova

Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.

Tutte le lezioni di Logica e flusso

Esercitati da solo: Playground Swift