Hola si alguien puediera ayudarme con este programa , si las funciones que tengo echas no tienen fallos y algun consejito pa seguir que estoy atrancadisimo,el programa tiene que leer un numero hacerle el fatorial, el factorial descomponerlo en primos y estos primos ordenarlos por medio de la funcion multiplicar, y con la de dividir deberia quitar si no puse nada mal, los primos comunes en el denominador y numerador, dejo lo que llevo aca abajo un saludo y gracias de antemano.
Código (cpp) [Seleccionar]
#include <iostream>
#include <vector>
using namespace std;
//FUNCION QUE CALCULA EL FACTORIAL DE UN NUMERO QUE SE LE PASA POR PARAMETRO PERO SIN CALCULAR SU RESULTADO
vector<int> factorial(int &num)
{
vector<int>fact;
int cont;
for (cont=1; cont<=num; cont++) fact.push_back(cont);
return fact;
}
vector<int> descomponer(vector<int> &num)
{
vector<int>primo;
int factor=2;
int num2;
for(num2=0; num2<(int)num.size(); num2++) while (num.at(num2) >=2)
{
if (num.at(num2)%factor==0)
{
primo.push_back(factor);
num.at(num2)/=factor;
factor=2;
}
else if(num.at(num2)%factor!=0)
{
factor++;
}
}
return primo;
}
vector<int> Multiplicar(vector<int>v1,vector<int>v2)
{
vector<int>v3;
int aux1=0,aux2=0;
while (v1.size()>aux1 && v2.size()>aux2)
{
if(v1[aux1]<=v2[aux2])
v3.push_back(v1[aux1]),aux1++;
if (v2[aux2]<v1[aux1])
v3.push_back(v2[aux2]),aux2++;
}
while (v1.size()<aux1)
{
v3.push_back(v1[aux1])
}
while (v2.size()<aux2)
{
v3.push_back(v2[aux2])
}
return v3;
}
void Dividir (vector<int>&num,vector<int>&dem)
{
vector<int>saln;
vector<int>sald;
int var1,var2;
while (num.size()>var1 && dem.size()>var2)
{
if(num[saln]<dem[var2])
saln.push_back(num[var1]),var1++;
if (dem[var2]<num[var1])
sald.push_back(v2[aux2]),var2++;
else
var1++;
var2++;
}
while (num.size()<var1)
{
saln.push_back(num[var1])
}
while (dem.size()<var2)
{
sald.push_back(dem[var2])
}
num=saln;
dem=sald;
}
bool ComprobarM (vector<int>)
{
bool sar=true;
for (int i=0; i<vector.size(); ++i)
{
int nuevo= vector[i]*i;
if (nuevo/i== vector[i])
cout
else
{
sar=false;
return sar;
}
}
}