02. Es. svolto: caricamento II
Traccia:
Caricare un array a di 100 elementi in modo ciclico con la seguente sequenza:
2 -4 5 2 11
Strategia:
Poiché la sequenza da ripetere è composta da 5 elementi è opportuno procedere con l'aritmetica modulare applicando l'operatore modulo 5.
Poiché la sequenza appare composta in modo casuale conviene caricare i 5 elementi in un array di appoggio, che chiamiamo appo, in modo che sia
appo[0] = 2
appo[1] = -4
appo[2] = 5
appo[3] = 2
appo[4] = 11
Il caricamento dell'array a verrà fatto a partire dall'array di appoggio appo sfruttando l'aritmetica modulare sugli indici di quest'ultimo.
Svolgimento:
#include <stdio.h>
int main()
{
int a[100], i;
// Dichiaro e inizializzo l'array appo
int appo[5] = {2, -4, 5, 2, 11};
// Carico l'array con una sequenza ciclica
printf("Caricamento dell'array con una sequenza ciclica:\n\n");
i=0;
while (i<100){
a[i] = appo[i%5];
printf("%d ", a[i]);
i++;
}
return 0;
}
Nota:
L'inizializzazione di un array può essere fatta al momento della dichiarazione così come mostrato di seguito:
int appo[5] = {2, -4, 5, 2, 11};
Questa istruzione è equivalente al seguente blocco di istruzioni:
int appo[5];
appo[0] = 2;
appo[1] = -4;
appo[2] = 5;
appo[3] = 2;
appo[4] = 11;
Sito: 7ecnologie
Sezione: 08. C language
Capitolo: 02. Introduzione al C
Paragrafo: 08. Array
Approfondimento: 02. Es. svolto: caricamento II
Indice dei capitoli: 00. Risorse - 01 Ambiente di sviluppo - 02. Introduzione al C - 03. Le librerie - 04. Tutorial - 05. Esercizi svolti - 98. Esercizi
Indice dei paragrafi: 01. Hello World - 02. Variabile di tipo int - 03. Input da tastiera - 04. Controllo condizionale if - 05. Operatori logici - 06. Ciclo while - 07. Operatore modulo - 08. Array - 09. Ciclo for - 10. Ciclo do/while - 11. Variabili di tipo float - 12. Funzione random() - 13. Impostazione del set di caratteri - 14. Definizione di funzioni - 15. Passaggio di parametri: gli array - 16. Variabili: visibilità e durata - 17. Il tipo char - 18. I file - 19. Funzioni matematiche
Indice degli approfondimenti: 01. Es. svolto: caricamento - 02. Es. svolto: caricamento II