Module: (Python) L'istruzione del ciclo for. Compiti tipici


Problem

1/16

Somma di numeri di sequenza - Esempio 1

Theory Click to read/hide

Attività
Trova la somma di tutti i numeri interi compresi tra 100 e 500. 

Scriviamo un programma che risolva questo problema senza usare una formula. Se scriviamo solo il risultato dell'addizione alla variabile s, per esempio, come
\(s=100+101+102+103+...+500\),

dedicheremo molto tempo alla registrazione stessa, perché il computer non capirà come usare i puntini di sospensione in un'espressione aritmetica e dovremo scrivere tutti i numeri da 100 a 500. E il valore di un tale programma sarà trascurabile. Soprattutto se vogliamo cambiare i nostri numeri e prendere una gamma diversa.

Cosa dovremmo fare?
Se prestiamo attenzione alla voce sopra, allora usiamo costantemente l'addizione "+".
Puoi provare ad aggiungere gradualmente i numeri alla variabile s. Ad esempio, utilizzando questa notazione
s=s+i.
Cosa abbiamo fatto qui:
1) a destra mettiamo l'espressione s+i, cioè prendiamo il valore della variabile s e aggiungiamo il valore della variabile ad esso i;
2) a sinistra impostiamo il nome della variabile s, ovvero l'intero risultato del calcolo a destra verrà memorizzato nella stessa variabile s, quindi cambieremo il valore della variabile s
Resta solo da modificare il valore della variabile i nell'intervallo desiderato. Questo può essere fatto con un ciclo for.
 
I numeri da 100 a 500 che sono nel nostro intervallo dovrebbero essere inseriti a turno nella variabile i
Esempio
# IMPORTANTE! Per prima cosa devi resettare la variabile s, # in modo che al primo passaggio il numero 100 venga aggiunto a zero, # e non a ciò che è in memoria! s = 0 for i in range(100, 501): # intestazione del ciclo dove i s += i # cambia il suo valore da 100 a 500 in passi di 1, # nel corpo del ciclo gradualmente fino alla variabile s,   # somma il valore della variabile variabile i, # e salva il risultato nella variabile s

Questa soluzione è molto simile al calcolo della somma sulle azioni:
 \(s = 0 + 100 = 100, \\ s = 100 + 101 = 201, \\ s = 201 + 102 = 303 \\ ... \)
 
 

Problem

Esegui il programma analizzato nella parte teorica per l'esecuzione, guarda il risultato del suo lavoro.