calculo de potencias altas
DESCRIPTION
Presentacion del Proyecto 3TRANSCRIPT
Integrantes:
Tadeo García Uribe Martes
Emmanuel García Solís Jueves
Fernando Guerrero Martes
•IntroducciónLa potenciación es una expresión matemática que
incluye dos términos denominados: base y exponente .
nc n es la base, c el exponente.
Cualquier número elevado a 0, distinto de 0, es igual a 1
20= 1
En calculo de potencias suele usarse la iteración y recursión
para la solución de estas ya que en si la potenciación es una
repetición de un ciclo
•Algoritmo recursivo
x= nc
Potencia(n,c-1)
Pedir n.
Pedir c. Pedir c.
Si c=0,Imprimir x=1 y terminar.
De otra manera x=n*Potencia(n,c-1)
Si c es par y n es negativo
Imprime x.
De otra manera, si c es impar y n es negativo.
Imprime –x.
Pseudocódigo:
estática int potencia (int n, int c)comienza
Escribir 'Ingrese la base: 'Leer nEscribir 'Ingrese el exponente: ';Escribir 'Ingrese el exponente: ';Leerc
si c=0 entoncesimprime x=1
otrox= n * potencia (n,c-1)
Si k es par y n es negativo o positivoImprime x.
De otra manera, si c es impar y n es negativoImprime –x.
termina
•Ejemplo de su ejecución:
Potencia(n,c-1) .
n=2.
c=100. c=100.
c no es igual a 0.Entonces.
x=2*Potencia(2,99).
c es par y positivo. Entonces.
Imprimir x= 1.2676506 × 1030.
•Algoritmo Iterativox= nc
Declarar la base (n), la potencia (c), el resultado (x) y los ciclos (i).
Ingresar la base
Ingresar la potencia. Ingresar la potencia.
Si la potencia es igual a 0, el resultado es 1
Si no, el resultado será igual a multiplicar la base por si misma, por el numero de ciclos que da la potencia.
Cuando los ciclos sean igual al numero de la potencia, imprimir el resultado.
•Pseudocódigo
Int n,c,iinicio
dame la base: 'escanear nDame el exponente: ';escanear cescanear c
si c=0 entoncesimprime x=1
si no x= n * n, mientras i=1, i++, i<=n
Si i = nImprime x.
fin
•Ejemplo de su ejecución:
n=2.
c=100.
c !=0, entonces…
Multiplicar por si mismo hasta que el numero de ciclos Multiplicar por si mismo hasta que el numero de ciclos (i) sea igual a c.
x=2*2*2*2*……..(hasta multiplicarlo 100 veces por si mismo)
x= x= 1.2676506 × 1030.
•Complejidad computacionalO(n log n): Complejidad casi-lineal.
Se encuentra en algoritmos de tipo divide y
vencerás (recursivos)y se considera una buena vencerás (recursivos)y se considera una buena
complejidad. Si n se duplica, el tiempo de
ejecución es ligeramente mayor del doble.
•Analisis asintotico
La función 2^x es una cota inferior asintótica.Es decir es Ω(f(n))La función log(x) es una cota superior asintóticaEs decir es Θ(f(n))
•Conclusiones: Los algoritmos recursivos son recomendables cuando
se requiere simplificar un problema en otro menor,(”divide y vencerás”).
Los algoritmos iterativos son para problemas que Los algoritmos iterativos son para problemas que requieren el uso de ciclos repetitivos.