Professional Documents
Culture Documents
Programacin I
Docente
AGENDA
Clase Math
Clase Math
Proporciona mtodos que permiten realizar clculos matemticos. Ejemplos:
x2
sen(2 x)
Cmo se realizar esto en Java ?
( x 5)
( x z )
ceil(x) floor(x)
max(x, y) min(x,y)
exp(x)
Clculo exponencial
log(x)
Logaritmo natural de x (base e) ln(x)
pow(x,y)
x elevado a y
sqrt(x)
Raiz cuadrada de x
max(x,y)
Mayor de x y y Ej. max(2,4) es 4 Max(6,2) es 6
min(x,y)
Menor de x y y Ej Min(8,3) es 3 Min(4,9) es 4
X se expresa en radianes
Funciones inversas asin(y) , arco seno de y acos(y) , arco coseno de y atan(y) , arco tangente de y
ceil(x)
Mtodo cielo. Entero mas pequeo mayor que x Ej. ceil(9.2) es 10.0 ceil(-9.8) es -9.0
floor(x)
Mtodo piso. Entero mas grande menor que x Ej Floor(9.2) es 9.0 Floor (-9.8) es -10.0
5
Math.pow( 32 , Es la solucin? Math.pow( 32 ,
32
1/5 1.0 /5
= 32
); );
1 5
1.2
);
5 6 7 8
0123
45
(int)variable ;
Si hay una operacin decimal
(int)operacin
Constantes
Se puede utilizar en vez de los nmeros, NO se puede modificar su valor
Math.E
2.718281 Math.E Igual a Math.exp(1);
Ejercicio 1
Calcule
x2
Ejercicio 2
Calcule sen(3x) , donde el ngulo sea de 90. Muestre el resultado
Ejercicio 3
Calcule , donde x sea 2.89, y sea 3.5. x5 Muestre el resultado
Ejercicio 4
Calcule , donde x sea 5.9, z sea 2.4. Muestre el resultado
( x z )
Ejercicio 5
xw
y2
Ejercicio 5
Calcule el resultado
log( x) x3
double x, resultado; x=7.3; resultado=Math.log(x)+Math.sqrt(x*x*x); resultado=Math.log(x)+Math.sqrt( Math.pow(x,3) ); resultado=Math.log(x)+Math.pow( x, 3/2 ); System.out.println(valor es +resultado);
Ejercicio 6
Calcular la altura h
double r = 50,h,conv;
r = 50.0 metros h
conv= 30*Math.PI/180;
30
h= r* Math.sin(conv);
System.out.println(valor es+h);
Ejercicio 7
Realizar un array en java, que guarde los resultados de los 6 ejercicios anteriores. Qu cambios hay que efectuar? 1. crear un array de 6 elementos, tipo double. double r = new double[6]; 2. reemplazar la variable resultado por los elementos del array
Resultado ejerc 1 Resultado ejerc 2
Resultado ejerc 6
Mtodo random( )
Math.random( ) Genera entre [0 y 1) Ejm: 0.1 0.02 0.5 0.005 0.999
NUNCA GENERA EL
0.01 - 0.99999999
0.01 - 5.99999999 1.01 - 6.99999999
[ 0, 6 )
[ 1, 7 )
[ 1,6]
1.0 - 6.0
Simular un dado
Generemos entre 1 y 6 (se omite el Math por fines explicativos) Antecedentes random( )* 6
genera entre 0 y 5.999
entre 0 y 5.999
Problemas
Documentos de problemas de Math con random
Math.round( ) Math.rint( )
Uso de Math.round( )
Retorna un entero o entero largo. Aproxima al primer entero si el inmediato decimal es igual o mayor a 5. Si se desea aproximar por decimales hay que aplicar operaciones de multiplicar y dividir
Round( )
5.49567, r= 5 5.1, r= 5 5.5, r= 6 5.49999, r = 5
Uso de Math.rint( )
Retorna un double. Aproxima al primer entero si el inmediato decimal es igual o mayor a 5 siempre y cuando haya mas dgitos despus de el. Si se desea aproximar por decimales hay que aplicar operaciones de multiplicar y dividir
Diferencias
numero 54.1 54.2 54.4 54.49 54.5 54.5XXXXXX 54.6 54.69 54.99 round 54 rint
54 55 55 55
Bibliografa
DEITEL,Harvey. DEITEL Paul(2004). Cmo programar en Java. Quinta Edicin. Pearson Educacin. Mexico. CEBALLOS, Javier(2006). Curso de Programacin Java 2,. Editorial RAMA. HOLZNER, Steven. (2007)La Biblia de Java 2. Anaya Multimedia. ECKEL, Bruce. (2000)Thinking in Java. Second Edition. Prentice Hall. JALON, Javier et all. (2000.)Aprenda Java como si estuviera en primero. Universidad de Navarra.Escuela de Ingenierios Industriales. JOYANES, L. (2008). Fundamentos de la programacin. Algoritmos y Estructura de Datos, 4 Edicin. Madrid: McGraw-Hill. JOYANES, L.; RODRIGUEZ, L; FERNANDEZ, M. (2003). Fundamentos de programacin Libro de problemas. 2 Edicin. Madrid: McGraw-Hill.