elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Security Series.XSS. [Cross Site Scripting]


  Mostrar Temas
Páginas: [1]
1  Programación / Programación C/C++ / Programa de combinaciones ayuda plisss en: 22 Diciembre 2011, 17:05 pm
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
  1. #include <iostream>
  2. #include <vector>
  3. using namespace std;
  4. //FUNCION QUE CALCULA EL FACTORIAL DE UN NUMERO QUE SE LE PASA POR PARAMETRO PERO SIN CALCULAR SU RESULTADO
  5. vector<int> factorial(int &num)
  6. {
  7.    vector<int>fact;
  8.    int cont;
  9.    for (cont=1; cont<=num; cont++) fact.push_back(cont);
  10.    return fact;
  11. }
  12. vector<int> descomponer(vector<int> &num)
  13. {
  14.    vector<int>primo;
  15.    int factor=2;
  16.    int num2;
  17.    for(num2=0; num2<(int)num.size(); num2++) while (num.at(num2) >=2)
  18.        {
  19.            if (num.at(num2)%factor==0)
  20.            {
  21.                primo.push_back(factor);
  22.                num.at(num2)/=factor;
  23.                factor=2;
  24.            }
  25.            else if(num.at(num2)%factor!=0)
  26.            {
  27.                factor++;
  28.            }
  29.        }
  30.    return primo;
  31. }
  32.  
  33. vector<int> Multiplicar(vector<int>v1,vector<int>v2)
  34. {
  35.    vector<int>v3;
  36.    int aux1=0,aux2=0;
  37.    while (v1.size()>aux1 && v2.size()>aux2)
  38.    {
  39.        if(v1[aux1]<=v2[aux2])
  40.            v3.push_back(v1[aux1]),aux1++;
  41.        if (v2[aux2]<v1[aux1])
  42.            v3.push_back(v2[aux2]),aux2++;
  43.    }
  44.    while (v1.size()<aux1)
  45.    {
  46.        v3.push_back(v1[aux1])
  47.    }
  48.    while (v2.size()<aux2)
  49.    {
  50.        v3.push_back(v2[aux2])
  51.    }
  52.  
  53.    return v3;
  54.  
  55. }
  56.  
  57. void Dividir (vector<int>&num,vector<int>&dem)
  58. {
  59.    vector<int>saln;
  60.    vector<int>sald;
  61.    int var1,var2;
  62.    while (num.size()>var1 && dem.size()>var2)
  63.    {
  64.        if(num[saln]<dem[var2])
  65.            saln.push_back(num[var1]),var1++;
  66.        if (dem[var2]<num[var1])
  67.            sald.push_back(v2[aux2]),var2++;
  68.        else
  69.            var1++;
  70.        var2++;
  71.  
  72.    }
  73.    while (num.size()<var1)
  74.    {
  75.        saln.push_back(num[var1])
  76.    }
  77.    while (dem.size()<var2)
  78.    {
  79.        sald.push_back(dem[var2])
  80.    }
  81.  
  82.    num=saln;
  83.    dem=sald;
  84. }
  85.  
  86.  
  87. bool ComprobarM (vector<int>)
  88.  {
  89.      bool sar=true;
  90.    for (int i=0; i<vector.size(); ++i)
  91.    {
  92.        int nuevo= vector[i]*i;
  93.        if (nuevo/i== vector[i])
  94.        cout
  95.  
  96.        else
  97.        {
  98.        sar=false;
  99.        return sar;
  100.        }
  101.    }
  102.  }
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines