22
PROGRAMACIÓN - II Facultad de Ingeniería de Sistemas Ing. Alberto Moreno C. Semana 3

Semana03 prog ii

  • Upload
    alberto

  • View
    2.596

  • Download
    1

Embed Size (px)

DESCRIPTION

Funciones en Java

Citation preview

Page 1: Semana03 prog ii

PROGRAMACIÓN - II

Facultad de Ingeniería de Sistemas

Ing. Alberto Moreno C.

Semana 3

Page 2: Semana03 prog ii

Funciones Matemáticas

La Clase Math

La clase Math representa la librería matemática de Java. Las funciones que contiene son las de todos los lenguajes, parece que se han metido en una clase solamente a propósito de agrupación, por eso se encapsulan en Math, y lo mismo sucede con las demás clases que corresponden a objetos que tienen un tipo equivalente (Character, Float, etc.). El constructor de la clase es privado, por los que no se pueden crear instancias de la clase. Sin embargo, Math es public para que se pueda llamar desde cualquier sitio y static para que no haya que inicializarla.

CLASE MATH

Page 3: Semana03 prog ii

Funciones matemáticas y Manejo de cadenas

La clase Math define dos constantes muy útiles, el número p y el número e.

final double E= 2.7182818284590452354;final double PI = 3.14159265358979323846;

System.out.println("Pi es " + Math.PI); System.out.println("e es " + Math.E);

CLASE MATH

Page 4: Semana03 prog ii

Función Tipo de Datos Descripción

Math.abs( x ) para int, long, float y double Valor Abosuluto

Math.sin( double ) Valor Seno

Math.cos( double ) Valor Coseno

Math.tan( double ) Valor Tangente

Math.asin( double ) Valor Arco Seno

Math.acos( double) Valor Arco Coseno

Math.atan( double ) Valor Arco Tangente

Math.exp( double ) Logaritmo Neperiano

Math.log( double ) Logaritmo natural

Math.sqrt( double ) Raiz Cuadrada

Math.ceil( double ) redondeo hacia arriba

Math.floor( double ) redondeo hacia abajo

Math.rint( double ) Redondear

Math.pow( a,b ) Potencia

Math.round( x  )     para double y float Redondear

Page 5: Semana03 prog ii

Función Tipo de Datos Descripción

Math.random()         

devuelve un double Valor Aleatorio

Math.max( a,b ) para int, long, float y double

Valor Maximo

Math.min( a,b)   para int, long, float y double

Valor minimo

Math.E        para la base exponencial

Math.PI   para PI

CLASE MATH

Page 6: Semana03 prog ii

double x=4.0;double r=Math.sqrt(x); // raiz cuadradaJOptionPane.showMessageDialog(null, “La raíz cuadrada de “+ x + “es " + r);

int x=5, y=9 ;int max=Math.max(x,y) ; // mayor de de dos enterosJOptionPane.showMessageDialog(null, “El mayor es " + max);

int i = -9;double x = 0.3498; JOptionPane.showMessageDialog(null,"|" + i + "| es " + Math.abs(i)+”\n”+"|" + x + "| es " + Math.abs(x));

double n=5.65, resul;resul=Math.ceil(n); // resul=6.0resul=Math.floor(n);//resul=5.0

Page 7: Semana03 prog ii

Ejemplo rint:System.out.println(Math.rint(1.2345)); // 1.0System.out.println(Math.rint(0.891));// muestra 1.0Si se quisiera aproximar a dos decimales:System.out.println(Math.rint(0.891*100)/100);// muestra 0.89

Ejemplo ceil: (redondeo hacia arriba)System.out.println(Math.ceil(2.3);// muestra 3.0System.out.println(Math.ceil(0.895);// muestra 1.0System.out.println(Math.ceil(-1.87);// muestra –1.0System.out.println(Math.ceil(-0.9);// muestra –0.0

Ejemplo floor: (redondeo hacia abajo)System.out.println(Math.floor(2.3);// muestra 2.0System.out.println(Math.floor(0.895);// muestra 0.0System.out.println(Math.floor(-1.87);// muestra –2.0System.out.println(Math.floor(-0.9);// muestra –1.0

Ejemplo round: System.out.println(Math.round(1.2345)); // 1.0 System.out.println(Math.round(9.876)); //10.0

Page 8: Semana03 prog ii

Expresiones Aritméticas

Métodos matemáticos

Álgebra Método Java

nm Math.pow(n, m)

Math.sqrt(n)n

U N IV E R S ID A D D E S A N M A R T ÍN D E P O R R E S

P R O F . IN G . IV E T H M A R C E L IN O P O N C E

A L G O R IT M O Y E S T R U C T U R A D E D A T O S I I - M IA G E

Page 9: Semana03 prog ii

bccba

cbaa8

77

23 3

5 624

+−+

+++

Expresiones Aritméticas

U N IV E R S ID A D D E S A N M A R T ÍN D E P O R R E S

P R O F . IN G . IV E T H M A R C E L IN O P O N C E

A L G O R IT M O Y E S T R U C T U R A D E D A T O S I I - M IA G E

Page 10: Semana03 prog ii

1.- Desarrollar un programa en Java que permita ingresar 5 números enteros a través del teclado. Determinar y mostrar cual de ellos es el número mayor.

2.- Desarrollar un programa en Java que permita ingresar 7 números enteros a través del teclado. Determinar y mostrar cual de ellos es el número menor.

3.- Desarrollar un programa en Java que permita generar “n” números aleatorios. Los números aleatorios generados deberán estar entre 5 y 15. Mostrar el número generado aleatoriamente, la suma de dichos números.

min + (int)(Math.random()*(max – min +1) )

Page 11: Semana03 prog ii

4.- Desarrollar un programa en Java que permita generar “n” números aleatorios de dos dígitos. Mostrar los número aleatorios que son pares y múltiplos de 5 ó 6.

5.- Desarrollar un programa en Java que permita generar 20 números aleatorios en el rango [10 - 1000]. Mostrar en una lista los número aleatorios que son pares y en otra lista los números impares, además se sesea saber cual es el numero mayor y el menor de cada lista.

6.- Desarrollar un programa en Java que permita ingresar u número entero y un exponente. Mostrar el resultado de calcular la potencia de todos los números menores que el número ingresado elevado al exponente ingresado.

7.- Desarrollar un programa en Java que permita ingresar u número entero y un exponente. Mostrar el resultado de calcular la raíz cuadrada de todos los números menores que el número ingresado.

Page 12: Semana03 prog ii

Manejo de Cadenas: La Clase String

Una String es una variable referenciada asociada a un objeto de la clase java.lang.String. Se emplea para almacenar cadenas de caracteres.

Las Strings tienen una característica que las diferencia del resto de objetos: son inmutables, es decir, cuando se intenta modificarlas, por ejemplo al aplicarles un método, no se modifican sino que se crea otra String nueva.

Page 13: Semana03 prog ii

Otras dos características de las Strings son:

Una String está indexada, es decir, cada uno de sus caracteres tiene asociado un índice: 0 para el primero, 1 para el segundo, etc.

La cadena de caracteres almacenada por una String siempre se escribe entre comillas dobles.

String nombre=”ANA MARIA”;

A N A M A R I A0 1 2 3 4 5 6 7 8

Page 14: Semana03 prog ii

Método Tipo de Dato Descripción

length() Devuelve int Longitud de la cadena

charAt(int) Devuelve char Carácter dada una posición

equals(Object obj) Devuelve boolean

Si es igual

equalsIgnoreCase(Object obj)

Devuelve boolean

Si es igual sin considerar May o Min

compareTo(String)

Devuelve int Devuelve un entero menor que cero si la cadena es

léxicamente menor que str2. Devuelve cero si las dos cadenas son léxicamente iguales y un entero mayor que cero si la cadena es

léxicamente mayor que str2.

startsWith(String) Devuelve boolean Si comienza o termina con

esta cadenaendsWith(String) Devuelve boolean

Page 15: Semana03 prog ii

Método Tipo de Dato Descripción

indexOf( int ) Devuelve int Devuelve si esta cadena comienza o termina con un

cierto prefijo o sufijolastIndexOf( int ) Devuelve int

substring( int inicio ) Devuelve String

Devuelve el primer/último índice de un carácter/cadena empezando la búsqueda a partir de un determinado desplazamiento.

substring(int inicio, int fin);

Devuelve String

concat( String); Devuelve String

replace(char antigua, char nueva);

Devuelve String

toLowerCase(); Devuelve String

toUpperCase(); Devuelve String

trim(); Devuelve String

String.valueOf(x) x : int, double, float,longDevuelve String

Convierte un tipo de dato a String

Page 16: Semana03 prog ii

String nombre=”Juan Pedro”;

int cantidad=nombre.length(); // 10

String nomMay = nombre.toUpperCase(); // JUAN PEDRO

String nomMin = nombre.toLowerCase(); // Juan pedro

char c=nombre.charAt(0); // J

Page 17: Semana03 prog ii

Diseñe un programa que me permita ingresar el nombre y los apellidos y muestre las iníciales en mayúscula.

Page 18: Semana03 prog ii

Diseñe un programa que me permita ingresar el nombre y los apellidos y muestre las iníciales en mayúscula y el resto en minúscula.

Page 19: Semana03 prog ii

Contar cuantas veces se repite la vocal “a” en una cadena de nombres y apellidos.

Page 20: Semana03 prog ii

Diseñe un programa que lea un texto y los separe en dos textos de igual tamaño y compare cual de los texto es mayor alfabéticamente

Page 21: Semana03 prog ii

Ejercicios Propuestos1.- Desarrollar un programa en Java que permita ingresar el nombre de un alumno. Mostrar el primer carácter del nombre ingresado en mayúscula y el resto en minúscula. 2.- Diseñe un programa que se ingrese primer nombre, segundo nombre y apellido y muestre sus iniciales 3.- Desarrollar un programa en Java que permita ingresar el nombre completo de un alumno (nombres y apellidos en una sola variable). Mostrar el primer carácter de cada palabra del nombre en mayúscula y el resto en minúscula. 4.- Desarrollar un programa en Java que permita ingresar el nombre de un alumno. Mostrar el número de vocales que hay en el nombre ingresado. 5.- Desarrollar un programa en Java que permita ingresar el nombre de dos alumnos. Mostrar si los nombre ingresados son iguales o no.6.- Desarrollar un programa en Java que permita ingresar el nombre de un alumno. Mostrar el nombre ingresado, de tal forma que se lea se izquierda a derecha (nombre mostrado al revés). 7. Solicitar el nombre de dos personas y determinar si son tocayas (os) . 8. Determinar el carácter del centro de una cadena. 9. Diseñe un programa que lea una cadena y reemplace los espacios en blanco por asteriscos.

Page 22: Semana03 prog ii

Ejercicios Propuestos

10. Solicitar el nombre de dos personas y determinar si son tocayas (os) .

11. Determinar el carácter del centro de una cadena.

12. Diseñe un programa que lea una cadena y reemplace los espacios en blanco por asteriscos.