it:informatica:linguaggio_c:vettori_1
Return to Home page
If you found any error, or if you want to partecipate to the editing of this wiki, please contact: admin [at] skenz.it
You can reuse, distribute or modify the content of this page, but you must cite in any document (or webpage) this url: https://www.skenz.it/it/informatica/linguaggio_c/vettori_1
Vettori (Esempio 1)
Concetti:
Vettori (array), inizializzazione ed utilizzo
Testo:
Realizzare un programma in linguaggio C che:
- dopo aver dichiarato ed inizializzato un array di 10 elementi
- trovi e stampi il primo numero pari e la sua posizione all'interno del array
Soluzione:
- vettori_1.c
/* Stampare il primo numero pari e la sua posizione, scandendo un vettore di 10 elementi */ #include <stdio.h> #define SIZE 10 int main(){ int vet[SIZE] = {1, 5, 3, 7, 10, 1, 2, 3, 4, 5}; int i; int found = 0; /* Prima soluzione */ for(i=0; i<SIZE && !found; i++){ if ( vet[i]%2 == 0 ){ found = 1; } } /* Seconda soluzione */ i = 0; found = 0; while ( i<SIZE && !found ){ if ( vet[i]%2==0 ){ found = 1; } i = i + 1; } if (found){ printf("NUMERO PARI: %d (POSIZIONE: %d)\n", vet[i-1], i-1); } else { printf("Nessun numero pari presente\n"); } return 0; }
Commenti:
Il programma:
- dopo aver inizializzato l'array di dimensione SIZE direttamente durante la dichiarazione:
int vet[SIZE] = {1, 5, 3, 7, 10, 1, 2, 3, 4, 5};
- scandisce l'array attraverso un ciclo for finché non sono stati analizzati tutti gli elementi (condizione i<SIZE) e finché non è stato trovato un numero pari (la variabile found assume un valore diverso da 0, cioè vero). La variabile found viene impostata ad 1 quando viene trovato il primo elemento pari del vettore.
for(i=0; i<SIZE && !found; i++){ if ( vet[i]%2 == 0 ){ found = 1; } }
- lo stesso esercizio è stato risolto in modo equivalente utilizzando il costrutto while.
/* Seconda soluzione */ i = 0; found = 0; while ( i<SIZE && !found ){ if ( vet[i]%2==0 ){ found = 1; } i = i + 1; }
- i risultati vengono stampati alla fine del programma. Si noti che all'uscita sia del ciclo for che del ciclo while, la variabile i rappresenta la posizione successiva rispetto a quella del primo numero pari. Per questo motivo, al fine di stampare il primo elemento pari del vettore e la sua posizione devono essere usate le variabili vet[i-1] e i-1, rispettivamente.
if (found){ printf("NUMERO PARI: %d (POSIZIONE: %d)\n", vet[i-1], i-1); } else { printf("Nessun numero pari presente\n"); }
If you found any error, or if you want to partecipate to the editing of this wiki, please contact: admin [at] skenz.it
You can reuse, distribute or modify the content of this page, but you must cite in any document (or webpage) this url: https://www.skenz.it/it/informatica/linguaggio_c/vettori_1
/web/htdocs/www.skenz.it/home/data/pages/it/informatica/linguaggio_c/vettori_1.txt · Last modified: 2024/04/08 22:35 by 127.0.0.1