Guía de Ejercicios Java

Ejercicio 7: Desarrolle un método al que le pasamos el nombre y apellidos de una persona como un sólo String con el típico formato "apellidos, nombre". El método nos devolverá un nuevo formato: "nombre apellidos". Por ejemplo: System.out.println (miMetodo ("Troncoso, Sergio.")); imprime Sergio Troncoso R:
String miMetodo (String junto) { int coma= junto.indexOf (','); String apellido= junto.substring (0, coma); String nombre= junto.substring (coma+2); return nombre + " " + apellido; }

Nota2: el método indexOf devuelve la posición de un caracter dentro de un string. Nota2: el método substring devuelve la parte de un string comprendida entre 2 valores. Si se coloca un sólo parámetro devuelve la parte del string comprendida entre el valor del parámetro y el final. Ej: substring(0,3) del string “computación” devuelve “comp” (la primera posición es 0). Ej2: para el mismo caso substring(8) devuelve “ión”. Ejercicio 8: Dada una variable entera t que almacena el tiempo transcurrido del día en segundos, escriba las expresiones que permitan extraer las horas, minutos y segundos transcurridos del día (h, m, s). Ejemplo: t= 3723; h= 1; m= 2; s= 3;
R: h= t / 3600; m= (t % 3600) / 60; s= t % 60;

Ejercicio 9: Escriba un método al que le pasemos dos números reales y devuelva el de mayor valor absoluto. R:
double maxAbs (double x, double y){ return (Math.max (Math.abs (x), Math.abs (y))); }

Nota:1 El método max devuelve el mayor entre 2 valores. Nota2: El método abs devuelve el valor absoluto de un número. Ejercicio 10: Escriba un método que devuelva si un material flota en el agua o no, a partir de su masa y su volumen. Utilice un método auxiliar que calcule la densidad del material. R:
public boolean flota (double masa, double volumen){ if densidad(masa,volumen)<1{ return (“Flota”)}

. double b = c.println(“Ingrese el valor para b?”).readDouble(). 7. } public double perimetro(double radio){ return (2*3. Escribir en pantalla "Ingrese el valor para A?" Pedir un valor real Si ingresa un 0 escribir en pantalla "No puede dividir por 0" y terminar el programa Escribir en pantalla "Ingrese el valor para b?" Pedir otro valor real Dividir el valor obtenido en 5 por el valor obtenido en 2 Entregar en pantalla "El valor de la incógnita es = " y el valor obtenido en 6 } } Ejercicio 13: Escriba la clase Dado.14*radio*radio). 5. if (A == 0) { c. 2. R: static public void main (String args[]) { Console C = new Console(). escribir el programa que debería resultar: 1.} R: class Circulo{ public double area(double radio){ return (3. que recibe como parámetro la cantidad de caras que tendrá el dado y contiene el siguiente método: R: class Dado{ } public int tirar(int caras){ return (Math.else{ return(“no flota”).println(“No puede dividir por 0”). 6.. } else { c. 3.random()*caras+1).14*radio). c.. } Ejercicio 11: Dado el siguiente algoritmo. double volumen){ return (masa / volumen).} public double perimetro(){. que recibe como parámetro el radio de la circunferencia y que contiene los siguientes métodos: public double area(){. 4. double A = c.println(“El valor de la incógnita es = “ + x).readDouble().. } } private double densidad (double masa.println(“Ingrese el valor para A?”). c. } } Ejercicio 12: Escriba la clase Circulo. double x = b / A. } .

computador = aleatorio(). if ( (jugador == 1 && computador == 3) || jugador > computador) { c. R: class cachip { // Un método que calcule un número aleatorio genérico static int aleatorio () { double r = Math. El código para un juego es el siguiente: class cachip { // Un método que calcule un número aleatorio genérico static int aleatorio () { double r = Math. . 3=piedra"). c. 2=tijeras.random genera un número aleatorio entre >0 y <1. c.println(r).random(). Ejercicio 14: A continuación se presenta el típico programa del Cachipún. } } } Modifique el código anterior para jugar una cantidad de veces determinada por el usuario y que al final muestre quién ganó en el acumulado de juegos. jugador = c. 2=tijeras.readInt(). int res = (int) (r*3+1).println("Gana el Computador").println("Gana el Jugador").println(res). System.println("Ingrese su opción (1)(2)(3)"). // Inicialización de variables de juego int jugador = 0. return ((res)). int res = (int) (r*3+1). int computador = 0.println("El computador juega " + computador).random(). c.out.out.println("Significado: 1=papel. } static public void main (String[] args) { Console c = new Console(). 3=piedra"). // Inicialización de variables de juego int jugador = 0. } static public void main (String[] args) { Console c = new Console(). return (res). System.println("Significado: 1=papel. c.Nota: Math. } else if ( (jugador == 3 && computador == 1) || jugador < computador) { c.

Mostrar el numero de billetes de 2000 .Mostrar el numero de billetes de 5000 . numero=numero+1.println("Puntajes:"). c.readInt().println("Ingrese su opción (1)(2)(3)").println("ran= "+computador). // Resultado Acumulado c.Calcular lo que falta por repartir(resto) luego de repartir billetes de 20000 y eso entregarlo (dividir) en billetes de 10000 .000 1 de $5. c. contadorComputador = 0.int computador = 0.000 1 de $10.Mostrar el numero de billetes de 1000 . jugador = c.println("Persona " + contadorJugador). } } } Ejercicio 15: Escribir un programa que simule un cajero automático. c.readInt().println("Computador " + contadorComputador). int contadorJugador = 0. int veces. c.000 2 de $2. c.000 . int numero=0.Calcular lo que falta por repartir(resto) luego de repartir lo que quedaba en billetes de 10000 y eso entregarlo (dividir) en billetes de 5000 . else if ( (jugador == 3 && computador == 1) || jugador < computador) contadorComputador ++.Calcular (division) el numero de billetes de 20000 que se necesitan paraentregar esa suma (la cantidad) .Mostrar el numero de billetes de 20000 .println("computador juega " + computador). estableciendo el diálogo indicado en el siguiente ejemplo: ¿Cuánto dinero necesita? 39000 Retire los siguientes billetes del dispensador: 1 de $20.Mostrar el numero de billetes de 10000 . computador = aleatorio().Calcular lo que falta por repartir(resto) luego de repartir lo que quedaba en billetes de 5000 y eso entregarlo (dividir) en billetes de 2000 .Preguntar cuanto dinero se necesita . if ( (jugador == 1 && computador == 3) || jugador > computador) contadorJugador ++. while (numero<veces) { c. veces=c.Calcular lo que falta por repartir(resto) luego de repartir lo que quedaba en billetes de 2000 y eso entregarlo (dividir) en billetes de 1000 .println("¿Cuántas veces desea jugar?").Mostrar el mensaje "Retire los siguientes billetes:" .Guardar el valor (cantidad) ingresado en una variable .

println( d/20000 + " de $20. C. do { C.readChar(). } while (op=='s'). ni 5 pesos.000"). C.println( d/1000 + " de $1. C. op =C.println( d/5000 + " de $5.000"). d=d%10000.println( d/10000 + " de $10. C. C.000"). R: class cajero { static public void main (String args[]) { // Declaraciones Console C = new Console(). d=d%5000. } } 3b) En un ciclo: class cajero { static public void main (String args[]) { // Declaraciones Console C = new Console().println( d/10000 + " de $10. C.println("Retire los siguientes billetes:"). C.print("Cuanto dinero necesita? ").000").Nota: el usuario sólo ingresa una cantidad de dinero en "miles" (es decir no hay 500 ni 100. d=d%10000. C. C.000"). int d =C.println( d/2000 + " de $2.println( d/2000 + " de $2.println("Desea hacer otra operación s/n?"). C.println( d/5000 + " de $5.000"). C. int d =C. Posteriormente repita la operación hasta que el usuario lo determine (ciclo do-while).println("Retire los siguientes billetes:").000").println( d/1000 + " de $1. No. C. char op.000"). C. C.println( d/20000 + " de $20.readInt(). d=d%5000. d=d%20000.000"). tampoco 1 peso). ni 10. d=d%2000.000").readInt(). } } . d=d%2000. d=d%20000.print("Cuanto dinero necesita? ").

Sign up to vote on this title
UsefulNot useful