Mi programa debe calcular el menor multiplo de los primeros numeros hasta N pero no anda
Publicado por Juan Ferrero (1 intervención) el 25/11/2018 23:53:53
//Utilizando el Teorema fundamental de la Aritmetica que dice que cualquier numero puede descomponerse como producto de factores primos. Luego el exponente de estos factores tiene que ser de tal manera que la potencia no supere al N. Con estos dos datos intente armar mi programa pero no funciona. Si alguien me puede ayudar se lo agradecería.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#include <iostream>
#include <cmath>
using namespace std;
int main(int argc, char *argv[]) {
int vector[]={2,3,5,7,11,13,17,19,23,29,31,37},a[40];
int t,N,base,expo,pot,Resultado1=0,Resultado2=0,ResultadoFinal=0;
cin>>t;
for(int i=0;i<t;i++){
cin>>N;
for(int i=0;i<12;i++){
base=vector[i];
pot=base;
expo=1;
while (pot<N){
pot=pot*base;
expo++;
}
pot=pot/base;
expo--;
a[i]=expo;
}
for (int i=0;i<12;i++){
Resultado1= pow(vector[i],a[i]);
Resultado2=Resultado1;
ResultadoFinal=Resultado1*Resultado2;
}
cout<<ResultadoFinal<<endl;
}
return 0;
}
Valora esta pregunta


0