Buonasera, sto avendo problemi con questo programma in cui tramite array devo stampare i numeri multipli di 3 di una sequenza di numeri generati casualmente. Ho 2 problemi che ho sono:
-non capisco come dividere i numeri in cifre per verificare che siano multipli;
-non riesco a generare più numeri casuali, ne viene infatti generato uno solo.
Questo è il codice:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define MAX 30
/*
Scrivere un programma che carica un vettore con valori interi casuali compresi fra 1 e 100, poi stampa
solo le componenti del vettore che sono multipli di 3*/
int main() {
int i; /*indice array*/
int dim; /*dimensione effettiva*/
int v[MAX]; /*array*/
do{
printf("Quanti numeri vuoi generare ? (da 1 a 100) : ");
scanf("%d", &dim);
}while(dim < 1 || dim > 100);
for(i = 0; i < dim; i++){
srand(time(0));
v[i] = rand() % 100 +1;
i++;
}
for(i = 0; i < dim; i++){
if(){
printf("\nValori multipli di 3: %d", v[i]);
}else{
printf("\nNon sono stati generati valori multipli di 3");
}
}
printf("\n-------------------------LISTA VALORI GENERATI-------------------------");
for(i = 0; i < dim; i++){
printf("\n%d Valore: %d", i, v[i]);
}
return 0;
}