Red de conocimiento informático - Computadora portátil - Programación en lenguaje C para descomponer un número entero positivo en factores primos. Por ejemplo: ingrese 90, imprima 90 = 2*3*3*5

Programación en lenguaje C para descomponer un número entero positivo en factores primos. Por ejemplo: ingrese 90, imprima 90 = 2*3*3*5

Declare una variable de tipo int n para recibir la entrada del teclado y limítela a un número positivo. A otra variable de tipo int i se le asigna un valor inicial de 2, y n se divide por i. Si es divisible, i se genera como factor primo y a n se le asigna un valor de n/i; i se incrementa en 1 y el nuevo valor de n se divide... y así sucesivamente hasta n==1. Al generar, imprima un signo * antes de n==1 para indicar "multiplicación". El código es el siguiente: #include?"stdio.h"

int?main(int?argc, char?*argv[]){

int?n, i;

printf("Input?n(int?ngt;0)...\nn=");

if(scanf("d",amp;n)!= 1?| |?nlt;1){//Ingreso y límite mayor que 0

printf("Input?error,?exit...\n");

return ?0;

}

printf("\nd?=?",n);

for(i=2;ngt;1;){ //Descompone el factor de materia, i comienza desde 2

if(ni==0){//Si se puede dividir por i, genera el factor i

printf("d ", i);

if((n/=i)gt; 1)//Emite un * antes de alcanzar el último factor

printf("*");

}

else//Si no es divisible por i, i aumenta en 1

i

}

printf("\n");

return?0;

}

El ejemplo en ejecución es el siguiente: