Ciao ragazzi, sto provando a fare un esercizio che mi richiede di creare una funzione che mi calcoli i fattori di un dato numero.
Alla compilazione tutto ok.. Poi però il programma non funziona,
codice:
#include<stdio.h>
void factor(int a);
int c;
int main()
{
printf("Inserisci il numero: ");
scanf("%d",&c);
factor(c);
}
void factor(int a)
{
int i;
int fattori[a];
if(a>1)
{
for(i=2;i=a;i++){
if(a%i==0)
fattori[i]==i;
}
printf("I fattori di %d, sono: ",a);
for(i=0;i<a;i++){
if(fattori[i]!=0)
printf("\n%d",fattori[i]);
}
}
else
return 0;
}
Se si inserisce un numero minore o uguale ad 1, la funzione mi ritorna 0, altrimenti se metto un numero maggiore di 1, non fa più niente.