Documente Academic
Documente Profesional
Documente Cultură
I. INTRODUCCIÓN
Para comprender lo que es la raı́z enésima de un número, es necesario tener en claro los términos de la
radicación, estos son el radicando, el ı́ndice radical y la raı́z:
-El radicando es el número al cual queremos hallar su raı́z.
-El ı́ndice radical nos indica cuantas veces debemos multiplicar por si mismo un número para ası́ obtener el
radicando.
-La raı́z es aquel número que si se multiplica por si mismo las veces que indica el ı́ndice radical, da como
resultado el radicando.
Es un método iterativo utilizado para encontrar las raı́ces de ecuaciones no lineales basadas en hallazgos
una solución para f (x) = 0 a lo largo de una secuencia de intervalos decrecientes como se muestra en [1], aquı́
El autor explica que para una función continua definida entre un intervalo [a, b] y f (a), f (b) funciona dentro
del intervalo, podemos encontrar al menos una raı́z dentro del intervalo. Entonces calculamos c = (a + b)/2
y f (c), si f (c) no es una raı́z, entonces el nuevo intervalo viene dado por la función con signos opuestos, este
proceso se repite hasta que se alcanza la tasa de error o las iteraciones dadas terminadas, estas iteraciones son
necesarias para evitar un bucle infinito. los El algoritmo de bisección de [2] se presenta en el Algoritmo 1.
Require: a <b , (f(a) < 0 and f(b) ≤ 0) or (f(a) >0 and f(b)<0)
Ensure: nth root of x
1: procedure nthRootbyBisection(nth, x, error, iteration)
2: N ← 1
3: while N ≤ iteration do
4: N ←− a+b 2 < error then
5: if f(c) = 0 or b−a
2 < error then
6: Return(c) N ←N + 1
7: if Sign(f(c)) == Sign(f(a)) then
8: a ← c
9: else
10: b ←− c
1
III. IMPLEMENTACION
public c l a s s r a i z {
public s t a t i c void main ( S t r i n g [ ] a r g s ) {
// D e c l a r a c i o n de v a r i a b l e s
double Numero =25; //Numero d e l c u a l s e d e s e a h a l l a r l a r a i z
double R a i z =2; // Valor dado n−esima r a i z
i n t I t e r a c i o n e s =1000; // Cantidad de v e c e s que s e r e a l i z a r a l a o p e r s c i o n
double E r r o r = 0 . 0 0 0 0 1 ; // v a l o r minimo de d i f e r e n c i a
b i s e c t i o n ( Numero , Raiz , I t e r a c i o n e s , E r r o r ) ;
}
// metodo b i s e c t i o n , r e a l i z a r a l a s o p e r a c i o n e s para h a l l a r l a r a i z
public s t a t i c void b i s e c t i o n ( double numero , double r a i z , double i t e r a c i o n e s , double e r r o r ) {
// B u c l e f o r , r e a l i z a r l a o p e r a c i o n e l # v e c e s a s i g n a d o
f o r ( i n t i =0; i <i t e r a c i o n e s ; i ++){
else // Caso c o n t r a r i o s e p r o c e d e a r e a l i z a r e l c a l c u l o de l a d i f e r e n c i a
// Valor dado menos Valor c a l c u l a d o
d i f=numero−v a l ;
i f ( d i f <0){ // S i l a d i f e r e n c i a e s menos a c e r o s e a c t u a l i z a e l v a l o r d e l
// l i m i t e s u p e r i o r
b=c ;
}
e l s e a=c ; // c a s o c o n t r a r i o s e a c t u a l i z a e l v a l o r d e l l i m i t e i n f e r i o r
break ;
}
}
}
}
2
IV. PREGUNTAS
El numero de iteraciones es variable, ya que algunas veces la raiz es hallada en pocas iteraciones, y en otras
necesitara muchas mas iteraciones, depende del numero ingresado y del valor de la raiz n-esima, tambien influye
el valor del valor error permitido, en este caso solo cuenta con 5 ceros, ademas tambien para evitar que pudiera
quedarse en un bucle infinito se ha considerado colocar un valor finito al numero máximo de iteraciones.
Java, debido a que estoy mas familiarizado con este lenguaje, y tambien el por tiempo disponible, costarı́a algo
mas de tiempo usar otro lenguaje.
3. ¿Cuál es el costo promedio del algoritmo implementado? ¿Cuál es la unidad para medir el
costo?
5. Encuentre otro algoritmo para resolver el enésimo problema raı́z, explı́quelo y haga un
Comparación entre ambos.
Descomposición factorial, se divide el numero en sus factores primos, luego se agrupa los valores según sus
exponentes, de tal manera que corresponda al indice de la raiz. Tiene un pequeño inconveniente al tener que
llevar a cabo reiteradamente la descomposición a sus factores primos, debido a que se tendria que probar
sistemáticamente con todos los valores primos posibles, no siendo muy eficiente en este proceso, muy variable
en numero de iteraciones, y posiblemente se tenga que realizar mas operaciones a fin de obtener una respuesta,
en el mejor de los casos tendria un tiempo de convergencia bastante mas rápido que el de biseccion, no siendo
esto aplicable para todos los casos.