primo
bool esPrimo(int n){
bool es;
int d;
es = true;
d = 2;
while(d <= n/2 && es){
if(n % d == 0){
es = false;
}else{
d++;
}
}
return es;
}
//devuelve la suma de los divisores de n sin contar n
int sumar_divisores_propios(int n){
int divisor = 1;
int suma = 0;
while(divisor <= n / 2){
if(n % divisor == 0){
suma = suma + divisor;
}
divisor++;
}
printf("Suma: %d\n", suma);
return suma;
}
//devuelve true si n es primo
//es primo si divisible solo por el mismo y por uno
bool esPrimo(int n){
bool primo = false;
if(sumar_divisores_propios(n) == 1){
primo = true;
printf("Es primo\n");
}else{
printf("No es primo\n");
}
return primo;
}
//DESCOMPOSICION DE FACTORES PRIMOS
int numero, divisor = 2;
printf("Dime un numero y te muestro su descomposicion en factores primos: ");
scanf("%d", &numero);
printf("%d = ",numero);
while ( numero >= divisor ){
while ( numero % divisor == 0 ) {
printf("%d ",divisor);
numero = numero / divisor;
}
divisor ++;
}
printf("%d",numero);
bool esPrimo(int valor){
bool es = true;
int i = 2;
if(valor <= 1){
es = false;
}
while(i < valor && es){
if(valor % i == 0){
es = false;
}
else{
i++;
}
}
return es;
}