Bom, foi me passado um exercício e eu não consegui resolver ele :((
Pra ser feito em C++ (apesar de, pro nível do exercício, só mudar as funções de in e out de dados), e o enunciado é o seguinte:
Dado o número N, encontre o menor número formado pelo produto de N primos. O meu problema tá em encontrar o produto de números primos que constitui o número X (sabendo isso, é só botar isso dentro de um loop while
), como que faz isso?
Obrigado aos que ajudarem
Posta aí o que tu já fez que fica mais fácil pro pessoal te dar uma luz.
Boa tarde amigo.
Não sei se entendi muito bem o que você precisa, mas segue:
#include <iostream>
#include <list>
using namespace std;
bool isPrimo(int numero)
{
if(numero > 3){
if(numero % 2 == 0 || numero % 3 == 0){
return false;
}
}
return true;
};
std::list<int> fatoracao(int numero)
{
std::list<int> integer_list;
int n = numero;
int divisor = 2;
printf("%d = ", numero);
while(n > 1){
if(n % divisor == 0){
n = n/divisor;
integer_list.push_back(divisor);
printf("%d ", divisor);
} else {
divisor += 1;
}
}
return integer_list;
}
int main()
{
int d = 0;
printf("Digite um número > ");
scanf("%d", &d);
printf("\nEste é o menor número primo > %d", fatoracao(d).front());
return 0;
}
Boa sorte a todos.