Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - urdaneta88

Páginas: [1]
1
Ok voy a intentar describir lo mejor que pueda lo que estoy haciendo y en lo que necesito ayuda, para empezar tengo que aclarar que soy muy nuevo en java y quizás las cosas que pregunten sean muy tontas o muy simples.

Bien, yo estoy haciendo un programa que se encarga de administrar una linea de autobuses, el modulo que estoy haciendo se encarga de añadir, modificar y eliminar una cierta ruta de viaje, el detalle es que tengo que hacer el programa con el formato Modelo, Vista, Controlador.

Aquí es donde se complica todo, ya que no sé como hacer para que las clases se pasan parámetros o datos entre ellas, me explico, la clase controladora es la encargada de establecer cuando se muestra cierta interfaz, es decir dependiendo de las opciones elegidas en una interfaz, dicha interfaz tiene que enviarle esa opción elegida(un botón, por lo general) a la clase controladora y dependiendo de que botón u opción fue seleccionada ella tiene que elegir el flujo del programa, es decir que la clase controladora debe recibir un dato pasado por la interfaz y dependiendo de dicho dato la clase debe decidir que otra ventana(interfaz) debe desplegar o que método llamar.

Lamentablemente no puedo trabajar con varios Jpanels y solo cambiarlos en un Jframe, tengo que trabajar con varias interfaces(Jframe) es decir una para cada funcionalidad, es una de las tantas restricciones, tengo que trabajar con archivos no con base de datos, el problema es que la experiencia que tengo es básicamente con programación web y base de datos, pero en esta oportunidad no tengo ni idea de como hacer las cosas.

Si alguien tiene una guía, un material, una pagina, un ejemplo de algo similar a lo que les he contado de verdad se los agradecería un mundo, y si me quieren ayudar con el proyecto en la primera oportunidad que tenga les mando a hacer una plaza o un monumento  ;D ;D , pero ya enserio cualquier ayuda me serviría bastante.

Saludos y de antemano gracias.

2
Todavía me confundo un poco con los tipos de datos que se pueden comparar y convertir, hay alguna forma en que los datos que se piden por consola los pueda capturar como enteros sin tener que hacer tantas conversiones?

En la solución del ejercicio lo hice sin y con la clase de EntradaDeTeclado, aquí dejo la solución sin usar la clase.

Saludos.

Código: [Seleccionar]
import java.util.*;

public class AdivinaNumero{
   public static void main(String [] Args){
       Random numeroA = new Random();
       int numeroSecreto = numeroA.nextInt(100)+1;
       Scanner entradaS = new Scanner(System.in);
       System.out.println("Se ha generado un numero aleatorio entre 1 y 100, intente adivinarlo.");
       String entradaT = entradaS.nextLine();
       Integer entradaNumero = 0;
       entradaNumero = entradaNumero.valueOf(entradaT);
       while (!(entradaNumero.equals(numeroSecreto))){
           System.out.print("No has acertado");
           if(entradaNumero> numeroSecreto){
                System.out.println(": el numero es menor. prueba otra ves");
            }
            else{
                System.out.println(": el numero es mayor. prueba otra ves");
            }
            entradaT = entradaS.nextLine();
            entradaNumero= entradaNumero.valueOf(entradaT);
        }
       
       System.out.println("Has acertado!!!");
    }
}


3
Al rato de leer es que pude entender como declarar el arreglo en una sola linea, por alguna razón pensé que en todos los casos tenia que inicializar el arreglo con "new String", pero si ya le estoy pasando los valores que va a tener no tengo necesidad de usar new ni de decirle cuantos espacio debe reservar. Yo asumí que al tener la respuesta correcta el programa finaliza, no se si así estaba pensado, si me equivoque por favor díganmelo.

Saludos.

Código: [Seleccionar]
import java.util.*;

public class MesesAño
{
   public static void main (String [] Args){
       String []  meses = {"enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"};
       String mesSecreto = meses[7];
       System.out.print("Adivine el mes secreto. ");
       System.out.print("Introduzca el nombre del mes en minuscula: ");
       Scanner entradaS = new Scanner(System.in);
       String entradaT = entradaS.nextLine();
       
       while (!entradaT.equals(mesSecreto)){
           System.out.print("\nNo ha acertado. ");
           System.out.print("Intente adivinarlo introduciendo otro mes: ");
           entradaT = entradaS.nextLine();
        }
       System.out.print("\nHa acertado");
       
    }
}



4
En este ejercicio me ayude con la clase EntradaDeTeclado que ya teniamos construida previamente.

ListaCantantesFamosos
Código: [Seleccionar]
import java.util.ArrayList;

public class ListaCantantesFamosos
{
    // instance variables - replace the example below with your own
    private String nombreLista;
    private ArrayList<String> listaFamosos;

    public ListaCantantesFamosos(String nombre)
    {
        // initialise instance variables
        nombreLista = nombre;
        listaFamosos = new ArrayList<String>();
        listaFamosos.add("Michael Jackson");
        listaFamosos.add("Barry White");
        listaFamosos.add("Freddy Mercury");
    }

    ///metodos para operar la lista
   public void addFamoso(String valorNombre) { listaFamosos.add (valorNombre); }
   
   public String getFamoso(int posicion){
       if (posicion >= 0 && posicion < listaFamosos.size() ) {
            return listaFamosos.get(posicion); }
        else { return "No existe famoso para la posición solicitada";}
   }
   
   public int getTamaño(){return listaFamosos.size();}
   
   public void removeFamoso (int posicion) {  //Método
        if (posicion >= 0 && posicion < listaFamosos.size() ) {
            listaFamosos.remove(posicion); }
        else { } //else vacío. No existe nombre para la posición solicitada, no se ejecuta ninguna instrucción
    }
}


TestListaCantantesFamosos
Código: [Seleccionar]
public class TestListaCantantes
{
   public static void main (String [ ] args) {     
       System.out.println ("Empezamos el programa");
       System.out.println ("Por favor introduzca el nombre de un famoso 1:");
       EntradaDeTeclado entrada1 = new EntradaDeTeclado();
       System.out.println ("Por favor introduzca el nombre de un famoso 2:");
       EntradaDeTeclado entrada2 = new EntradaDeTeclado();
       ListaCantantesFamosos lista1 = new ListaCantantesFamosos("Lista de cantantes famosos");
       lista1.addFamoso(entrada1.getEntrada());
       lista1.addFamoso(entrada2.getEntrada());
       
       System.out.print("Los famosos que se encuentran en la lista son: ");
       for(int i=0; lista1.getTamaño()>i; i++){
           System.out.print( lista1.getFamoso(i) + " ");
       }
   }
}


5
Este ejercicio me tomo un poco mas de tiempo sobre todo para resolver como comparar la primera letra y saber si era igual a "a" pero creo que pude resolver.

Saludos.

Código: [Seleccionar]
import java.util.Scanner; //Importación del código de la clase Scanner desde la biblioteca Java
//Código de nuestra clase principal ejemplo aprenderaprogramar.com
public class TestPrograma1 {
 
    public static void main (String [ ] args) {
        System.out.println ("Empezamos el programa");
        System.out.println ("Por favor introduzca una cadena por teclado:");
        String entradaTeclado = "";
        Scanner entradaEscaner = new Scanner (System.in); //Creación de un objeto Scanner
        entradaTeclado = entradaEscaner.nextLine (); //Invocamos un método sobre un objeto Scanner
       
        String entradaCortada = entradaTeclado.substring(0,1);//cortamos el String ingresado por pantalla y agarramos solo la primera letra
        int primeraLetraA = entradaCortada.compareTo("a");///comparamos esa letra agarrada en el paso anterior con la letra "a" para ver si son iguales, si el numero resultante es 0 quiere decir que son iguales.
       
        if(entradaTeclado.length()<5){ //si la cadana ingresada tiene menos de 5 caracteres va a entrar por este condicional
            System.out.print("La cadena introducida tiene menos de 5 caracteres");
            if(primeraLetraA==0){  ///comprobamos que la orimera letra es "a" si el valor de primeraLetraA es igual a 0
                System.out.print(" y comienza por la letra a");
            }else{
                System.out.print(" y no comienza por la letra a");
            }
        }else if(entradaTeclado.length()>=5 && entradaTeclado.length()<16){// si la cadena es mayor o igual a 5 y menor a 16 va a entrar por este condicional
            System.out.print("La cadena introducida tiene entre 5 y 15 caracteres");
            if(primeraLetraA==0){
                System.out.print(" y comienza por la letra a");
            }else{
                System.out.print(" y no comienza por la letra a");
            }
        }
        else{
            System.out.print("La cadena introducida tiene mas de 15 caracteres");//si la cadena no entra en ninguno de los otros condicionales quiere decir que tiene mas de 15 caracteres
            if(primeraLetraA==0){
                System.out.print(" y comienza por la letra a");
            }else{
                System.out.print(" y no comienza por la letra a");
            }
        }
       
    } //Cierre del main
} //Cierre de la clase


6
Hola que tal soy nuevo en este foro y tengo ya como una semana siguiendo el curso de Java desde cero (excelente curso, cabe acotar), aquí dejo mi solución del ejercicio de la pag indicada en el titulo con dos soluciones, iterativa y recursiva, saludos.

Código: [Seleccionar]
public class multiplicadorDieces
{
    // instance variables - replace the example below with your own

    public multiplicadorDieces(){
    }

    public double multiplicarPorDieces(double x,int y)
    {
        ///double resultado= 0,0;
        for (int i=1; i<=y; i++){
            x = x * 10;
        }
        return x;
    }

    public double multiPorDiecesRecursiva(double x, int y){
        if(y==0){return x;}
        else{return 10 * multiPorDiecesRecursiva(x, y-1);}
    }
}



Páginas: [1]

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".