Vale, algo más claro, pero sigo teniendo la duda de cómo hacer la función "sumadeprimos" ya que tendría que hacer combinaciones de 2 números primos hasta que su suma fuera n, pero no se como hacer eso.
Adjunto el código.
Adjunto el código.
Código (cpp) [Seleccionar]
#include <iostream>
using namespace std;
void factorizar (int n);
void sumadeprimos(int n);
int primo(int n);
//---------------------
int main(){
int n;
cout<<"Introduce n: ";
cin>>n;
cout<<"Factores primos de n:"<<endl;
factorizar(n);
return 0;
}
//----------------------
int primo(int m){
int incremen=2;
bool primo=true;
while(primo && incremen<m){
if(m%incremen==0) primo=false;
++incremen;
}
if (primo) return m;
else return 0;
}
void factorizar (int n){ //factores primos de su argumento n para números mayores o iguales que 2 y los escriba en la pantalla.
for(unsigned m=3; m<n; m++){
if (primo(m)!=0) cout<<primo(m)<<endl;
}
}
void sumadeprimos(int n){ //descomponga un número n par y mayor que 2 en suma de dos números primos y los presente en pantalla.
if(n%2==0){ //ok
}
}