Il seguente codice, permette di ottenere la scomposizione in fattori primi di un numero intero dato in input.
I numeri vengono testati fino alla metà del numero sorgente, soglia oltre la quale un numero non può essere divisibile interamente.
Chiaramente il codice potrebbe essere ottimizzato per evitare calcoli inutili, per ora quindi siamo in una versione iniziale.
I numeri vengono testati fino alla metà del numero sorgente, soglia oltre la quale un numero non può essere divisibile interamente.
Chiaramente il codice potrebbe essere ottimizzato per evitare calcoli inutili, per ora quindi siamo in una versione iniziale.
PHP Code:
//testing c#include <st***.h>
int main(void){
int n,norig,a,k;
printf("Dammi un numero intero positivo\n");
scanf("%d",&n);
norig=n;
printf("Numero originale: %d\n",norig);
a=1;
k=0;
while (a<=(norig/2)){
a++;
while (n%a==0){
if (k==0){
printf("I fattori primi sono: ");
k++;
}
printf("%d ",a);
n=n/a;
}
}
if (n==norig){
printf("Il numero è primo\n");
}else{
printf("\n");
}
return 0;
}