algoritmo y estructura de datos i 2007 - i facultad de ingeniería y arquitectura ing. juan josé...

20
Algoritmo y Estructura de Datos I 2007 - I Facultad de Ingeniería y Arquitec Ing. Juan José Montero Román. [email protected] Sesión 2

Upload: bernardo-canada

Post on 21-Apr-2015

8 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: Algoritmo y Estructura de Datos I 2007 - I Facultad de Ingeniería y Arquitectura Ing. Juan José Montero Román. jmonteror@usmp.edu.pe Sesión 2

Algoritmo y Estructura de Datos I 2007 - I

Facultad de Ingeniería y Arquitectura

Ing. Juan José Montero Román.

[email protected]

Sesión 2

Page 2: Algoritmo y Estructura de Datos I 2007 - I Facultad de Ingeniería y Arquitectura Ing. Juan José Montero Román. jmonteror@usmp.edu.pe Sesión 2

Funciones matemáticas y Manejo de cadenas

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.

Page 3: Algoritmo y Estructura de Datos I 2007 - I Facultad de Ingeniería y Arquitectura Ing. Juan José Montero Román. jmonteror@usmp.edu.pe Sesión 2

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);

Page 4: Algoritmo y Estructura de Datos I 2007 - I Facultad de Ingeniería y Arquitectura Ing. Juan José Montero Román. jmonteror@usmp.edu.pe Sesión 2

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 )

Math.floor( double )

Math.rint( double )

Math.pow( a,b ) Potencia

Math.round( x )       

para double y float Redondear

Page 5: Algoritmo y Estructura de Datos I 2007 - I Facultad de Ingeniería y Arquitectura Ing. Juan José Montero Román. jmonteror@usmp.edu.pe Sesión 2

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 PIEjemplo:

double x=4.0;double r=Math.sqrt(x); // raiz cuadradaLE.mostrarInformacion(“La raiz cuadrada de “+ x + “es " + r);

int x=5, y=9 ;int max=Math.max(x,y) ; // mayor de de dos enterosLE.mostrarInformacion ("El mayor es " + max);

int i = -9;double x = 0.3498; LE.mostrarInformacion ("|" + i + "| es " + Math.abs(i));LE.mostrarInformacion ("|" + x + "| es " + Math.abs(x));

Page 6: Algoritmo y Estructura de Datos I 2007 - I Facultad de Ingeniería y Arquitectura Ing. Juan José Montero Román. jmonteror@usmp.edu.pe Sesión 2

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 7: Algoritmo y Estructura de Datos I 2007 - I Facultad de Ingeniería y Arquitectura Ing. Juan José Montero Román. jmonteror@usmp.edu.pe Sesión 2

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 8: Algoritmo y Estructura de Datos I 2007 - I Facultad de Ingeniería y Arquitectura Ing. Juan José Montero Román. jmonteror@usmp.edu.pe Sesión 2

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 9: Algoritmo y Estructura de Datos I 2007 - I Facultad de Ingeniería y Arquitectura Ing. Juan José Montero Román. jmonteror@usmp.edu.pe Sesión 2

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 10: Algoritmo y Estructura de Datos I 2007 - I Facultad de Ingeniería y Arquitectura Ing. Juan José Montero Román. jmonteror@usmp.edu.pe Sesión 2

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 11: Algoritmo y Estructura de Datos I 2007 - I Facultad de Ingeniería y Arquitectura Ing. Juan José Montero Román. jmonteror@usmp.edu.pe Sesión 2

Diseñe un programa que lea 2 reales y los redondee a dos cifras. Utilice las funciones round() y floor() respectivamente

Page 12: Algoritmo y Estructura de Datos I 2007 - I Facultad de Ingeniería y Arquitectura Ing. Juan José Montero Román. jmonteror@usmp.edu.pe Sesión 2

Diseñe un programa que lea 2 reales y los redondee a dos cifras. Utilice las funciones round() y floor() respectivamente

Page 13: Algoritmo y Estructura de Datos I 2007 - I Facultad de Ingeniería y Arquitectura Ing. Juan José Montero Román. jmonteror@usmp.edu.pe Sesión 2

Diseñe un programa para generar dos numero aleatorios

Page 14: Algoritmo y Estructura de Datos I 2007 - I Facultad de Ingeniería y Arquitectura Ing. Juan José Montero Román. jmonteror@usmp.edu.pe Sesión 2
Page 15: Algoritmo y Estructura de Datos I 2007 - I Facultad de Ingeniería y Arquitectura Ing. Juan José Montero Román. jmonteror@usmp.edu.pe Sesión 2

Diseñe un programa que se ingrese primer nombre, segundo nombre y apellido y muestre sus iniciales

Page 16: Algoritmo y Estructura de Datos I 2007 - I Facultad de Ingeniería y Arquitectura Ing. Juan José Montero Román. jmonteror@usmp.edu.pe Sesión 2
Page 17: Algoritmo y Estructura de Datos I 2007 - I Facultad de Ingeniería y Arquitectura Ing. Juan José Montero Román. jmonteror@usmp.edu.pe Sesión 2

En las funciones trigonométricas los argumentos se expresan en radianes. Por ejemplo, el ángulo 45º se convierte en radianes = (45)*pi/180 y luego se halla el seno, el coseno y la tangente. Diseñe un programa que lea un angulo cualquiera y halle el seno, el coseno y la tangente

Page 18: Algoritmo y Estructura de Datos I 2007 - I Facultad de Ingeniería y Arquitectura Ing. Juan José Montero Román. jmonteror@usmp.edu.pe Sesión 2
Page 19: Algoritmo y Estructura de Datos I 2007 - I Facultad de Ingeniería y Arquitectura Ing. Juan José Montero Román. jmonteror@usmp.edu.pe Sesión 2

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 20: Algoritmo y Estructura de Datos I 2007 - I Facultad de Ingeniería y Arquitectura Ing. Juan José Montero Román. jmonteror@usmp.edu.pe Sesión 2