Autor Tema: CU00669B arrays o arreglos Java: ejemplo de declaración y uso  (Leído 2783 veces)

Alex Rodríguez

  • Moderador Global
  • Experto
  • *******
  • Mensajes: 2052
    • Ver Perfil
Nota: este tema se ha desdoblado para mantener un ejercicio por tema.

Respusta de toni_apr al ejercicio CU00669B:

EJERCICIO CU00669B main manipulando array.
Dos clases. La primera con el main
clase EjemploArray
Código: [Seleccionar]
/**
 * Detalles de la clase.
 * @author (Toni)
 * @version (0)
 */
public class EjemploArray {   
    public static void main (String [] args) {
        String [] mesEA = {"enero","febrero","marzo","abril","mayo","junio",
                "julio","agosto","septiembre","octubre","noviembre","diciembre"};
        String mesSecreto = mesEA[(int)(Math.random() * 12)];
        boolean probarOtraVez = true;
        String respuesta = "", separacion = "";
        Mensaje mensaje = new Mensaje("Propuesta: Adivina el mes que he escogido. Escríbelo (todo en minúsculas).");
        do {
            for (int i = 0; i < mesEA.length; i++) {
                if (i < mesEA.length - 1) { separacion = ","; } else { separacion = ".\n"; }
                mensaje.muestra (mesEA[i] + separacion,0);
            } // fin del for
            respuesta = mensaje.responde ("\tEscribe tu mes:",0);
            if ( respuesta.length() == 0) {
                mensaje.muestra ("Con una entrada vacía. Salimos corriendo.");
                probarOtraVez = false;
            } else if (respuesta.equals(mesSecreto)) {
                mensaje.muestra ("Has acertado. Me retiro, hasta luego.");
                probarOtraVez = false;
            } else if (respuesta.equals("?")) { // Caracter espía
                mensaje.muestra ("\tLa respuesta es: " + mesSecreto + " Tariro rariro...");
            } else {
                mensaje.muestra ("Frio, frio. Inténtalo otra vez.");
            } // fin del if
        } while (probarOtraVez); // fin del while
    } // fin del main
} // Fin de la clase EjemploArray
La segunda para entradas de teclado y mensajes
Clase Mensaje
Código: [Seleccionar]
import java.util.Scanner;
/**
 * Detalles de la clase. El método presenta mensajes por pantalla... y devuelve entradas de teclado
 * @author (Toni)
 * @version (0)
 */
public class Mensaje { // Atributos de la clase Mensaje
    private String texto;
    private int valor;
    /**
     * Mostrará el texto con salto de línea final.
     */
    public Mensaje (String frase) { //Constructor 1 parámetro para objetos de la clase Mensaje. Inicializa atributos
        texto = frase;
        valor = 1;
        muestra (texto, valor);
    }

    /**
     * Valores param:
     * 0 = Sin salto de línea.
     * 1, u otro valor = Con salto de línea.
     */ 
    public Mensaje (String frase, int param) {
        texto = frase;
        valor = param;
        muestra (texto, valor);
    }
    // Siguen los setters para los atributos de la clase Mensaje
    public void setTexto (String texto) { this.texto = texto; }

    public void setValor (int valor)    { this.valor = valor; }
    // Ahora los getters para los atributos de la clase Mensaje
    public String getTexto ()           { return texto; }

    public int getValor ()              { return valor; }

    // Y seguidamente, procedimientos y funciones varios.
    /**
     * Mostrar el texto con salto de línea (sin segundo parámetro)
     */   
    public void muestra (String frase) {
        muestra (frase, 1);
    }// fin de muestra 1 parámetro

    /**
     * Valores param:
     * 0 = Sin salto de línea.
     * 1, u otro valor = Con salto de línea.
     */   
    public void muestra (String frase, int param) {
        texto = frase;
        valor = param;
        if (valor == 0) { System.out.print (texto + " ");
        }          else { System.out.println (texto); }
    }// fin de muestra 2 parámetros

    /**
     * Sin segundo parámetro el mensaje incluirá salto de línea. Devuelve entrada de teclado
     */
    public String responde (String frase) {
        return responde (frase, 1);
    }// fin de responde 1 parámetro

    /**
     * Valores param:
     * 0 = Sin salto de línea + entrada por teclado.
     * 1, u otro valor = Con salto de línea + entrada por teclado.
     */
    public String responde (String frase, int param) {
        texto = frase;
        valor = param;
        muestra (texto, valor);
        Scanner entradaEscaner = new Scanner(System.in);
        return entradaEscaner.nextLine();
    }// fin de responde 2 parámetros
} // Fin de la clase Mensaje
Espero vuestros comentarios. Saludos.

Alex Rodríguez

  • Moderador Global
  • Experto
  • *******
  • Mensajes: 2052
    • Ver Perfil
Re:CU00669B arrays o arreglos Java: ejemplo de declaración y uso
« Respuesta #1 en: 23 de Septiembre 2014, 11:23 »
Aclaración: este ejercicio está revisado y es correcto, aparece aquí porque se ha desdoblado un tema que trataba sobre dos ejercicios y se ha dejado cada ejercicio por separado. Saludos.

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".