Il programma è questo:
Scrivere un programma che dato un vettore verifichi che esista almeno un numero doppio del precedente.
- Codice:
#include <stdio.h>
#include <stdlib.h>
int main(void) {
//Dichiarazione di un array di 100 interi
const int maxDim = 100;
int v[maxDim];
int dimensione;
int index;
int doppio;
//Inserimento della dimensione dell'array
printf("Inserisci la dimensione dell'array (max %d): ", maxDim);
scanf("%d", &dimensione);
//Controllo di allocazione statica
if ((dimensione > 0) && (dimensione <= maxDim)) {
//Lettura dell'array
for(index = 0; index < dimensione; index++){
printf("Inserisci il valore %d-esimo: ", index);
scanf("%d", &v[index]);
}
//Inizio ricerca
v[doppio] = 0;
while((index < dimensione) && (v[doppio] == 0)) {
if (v[doppio] == 2*v[index-1]){
v[doppio] = 1;
}
index++;
}
//Stampa
if(v[doppio]==1) {
printf("L'elemento doppio del precedente e'%d", doppio);
} else {
printf("Errore: la dimensione inserita e' maggiore di %d", maxDim);
}
}
return 0;
}