Foros aprenderaprogramar.com

Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: hymsoft en 20 de Julio 2016, 23:37

Título: Array o Arreglos unidimensionales en Java. Ejemplo código con objetos (CU00669B)
Publicado por: hymsoft en 20 de Julio 2016, 23:37
Buenas !! una nueva entrega. Espero que este bien y lo mejor que sea claro :-)

Código: [Seleccionar]
/**
 * Resolucion del Ejercicio CU00669B
 *
 * @author Hugo Segura
 * @version (a version number or a date)
 */
public class TestCU00669B
{
    public static void main(String[] args){
        //Declaracion de Variables
        EntradaPorTeclado suEntrada = new EntradaPorTeclado();//para pedir datos por teclado
        String miMesSecreto = "";
        //Creo e inicializo el Array
        String [] meses = {"enero","febrero","marzo","abril","mayo","junio","julio",
                                    "agosto","septiembre","octubre","noviembre","diciembre"};
                                   
        miMesSecreto = meses[6];//mi mes secreto es julio
        System.out.println("...Comencemos el programa...\n");
        if(suEntrada.pedirEntrada("Adivine el mes secreto. introduzca el mes en minúsculas: ").equals(miMesSecreto)){
            //no hago nada si es correcto porque imprimo el mensaje cuando salgo del if
        }else{
            while(!suEntrada.pedirEntrada("No ha acertado. Intente adivinarlo introduciendo otro mes: ").equals(miMesSecreto));
        }
       
        System.out.println("¡Ha acertado!");
        System.out.println("\n...Fin del programa...");
    }//cierre del main
}//cierre de la clase
Código: [Seleccionar]
/**
 * Clase para manipular la entrada por teclado
 *
 * @author Hugo Segura con correcciones de aprenderaprogramar.com
 */

import java.util.Scanner;

public class EntradaPorTeclado
{
   public EntradaPorTeclado(){}//constructor por defecto
   
   /* Este metodo retorna un String como reultado de lo ingresado
    * por el usuario mediante el teclado
    * El parametro es un String para mostrar un mensaje
    */
   public String pedirEntrada(String mensaje_a_mostrar){
       String entradaTeclado = "";
       
       System.out.print(mensaje_a_mostrar);
       Scanner entradaScanner = new Scanner(System.in);
       entradaTeclado = entradaScanner.nextLine();
       return entradaTeclado;
    }//cierre entradaTeclado
}//Cierre clase
Título: Re:Array o Arreglos unidimensionales en Java. Ejemplo código con objetos (CU00669B)
Publicado por: César Krall en 29 de Julio 2016, 14:26
Hola! El programa va bien, aunque el planteamiento es un tanto extraño ya que has metido el while dentro de un if. Esto no parece que sea realmente necesario, ya que el propio while te permite establecer una condición, entonces no sería necesario un if y un while, sino simplemente un while

Así es como está hecho en https://www.aprenderaprogramar.com/foros/index.php?topic=2108.0, ese ejercicio te puede servir de referencia

Saludos!
Título: Re:Array o Arreglos unidimensionales en Java. Ejemplo código con objetos (CU00669B)
Publicado por: hymsoft en 29 de Julio 2016, 16:52
Hola Cesar, el If lo use por si acierta el mes en la primera oportunidad, si no lo acierta, entra en el while y cambia el mensaje. Pasa que en vez de preguntar y después controlar, el if lo valido directo con la respuesta. Intente hacerlo solo con el While, pero se me hizo mas largo o no se me ocurre, si quieres me pegas como quedaria mejor el código asi sigo aprendiendo :-)

Como siempre, un saludo desde el Sur de Argentina!!