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.


Temas - Lorenzo31

Páginas: 1 2 3 4 5 [6]
101
El enunciado del ejemplo pedía;

Valiéndonos de este método, intenta escribir tu propio código para hacer lo siguiente:

a) Reescribir la clase Combinador que usamos anteriormente de forma que el método combinacion devuelva “No aporta cadenas válidas” si se le pasa como parámetro alguna cadena que contenga menos de tres caracteres.

b) Escribir un nuevo método de la clase, al que podemos denominar combinadoSiempre  que en caso de que se pasen cadenas con menos de tres caracteres, las combine de todas formas en base a los caracteres disponibles, sea el número que sea.

Donde dice en el ejemplo b las combine de todas formas, he entendido que haga uniones de dos caracteres con todas las opciones que sean posibles, y lo hice adaptado a los caracteres que fueran. Ejemplo si pasas "abc" "def"... crea "ad","ae",af","bd"....

Ejercicio para evaluación

Código: [Seleccionar]
public class CombinaCadenas{

    public CombinaCadenas(){
        //vacío sin atributos de clase
    }

    //Método para combinar palabras pasadas por parámetro String que solo tengan tamaño mayor a 3 letras controlando no validas sino.

    public String combinadorCadenas(String palabra1, String palabra2, String palabra3){

        //Atributos para calcular tamaño de las palabras pasadas
        int longitud1 = palabra1.length();
        int longitud2 = palabra2.length();
        int longitud3 = palabra3.length();

        if(longitud1 > 2 && longitud2 > 2 && longitud3 > 2){
            return palabra1.substring(0,3) + " " + palabra2.substring(0,3) + "-" + palabra3.substring(0,3);
        }else {return "No aporta cadenas válidas";}

    }

    //Método para combinar palabras sea cual sea el tamaño de estas

    public String combinaSiempre(String palabra1, String palabra2, String palabra3){

        // Atributos de longitud de las palabras
        int longitud1 = palabra1.length();
        int longitud2 = palabra2.length();
        int longitud3 = palabra3.length();

        //Atributo cadena que retornaremos en el metodo
        String cadena="";

        if (longitud1<3){
            cadena=cadena + palabra1.substring(0,longitud1);} else{
            cadena=cadena + palabra1.substring(0,3);}
        if (longitud2<3){
            cadena=cadena + " " + palabra2.substring(0,longitud2);} else{
            cadena=cadena + " " + palabra2.substring(0,3);}
        if (longitud3<3){
            cadena=cadena+ " " + palabra3.substring(0,longitud3);} else{
            cadena=cadena+ " " + palabra3.substring(0,3);}

        return cadena;
    }

    //Método para combinar las palabras entre sí en todas las opciones posibles de dos caracteres (me faltaria repetir el bucle empezando por la segunda introducida)

    public String combinaLetras(String palabra1, String palabra2){
        //String resultante para return
        String cadena="";
        //Atributos de metodo para calcular tamaño de palabras
        int longitud1 = palabra1.length();
        int longitud2 = palabra2.length();

        if (longitud1<3 && longitud2<3){ //Combinador de palabras con menos de dos letras, aunque sirve para cualquier longitud de tamaño
            for(int x=0;x<longitud1;x++){

                for(int y=0;y<longitud2;y++){

                    cadena=cadena + palabra1.substring(x,x+1) + palabra2.substring(y,y+1) + " ";

                }

            }

            for(int x=0;x<longitud1;x++){

                for(int y=0;y<longitud2;y++){
                    cadena=cadena + palabra2.substring(y,y+1) + palabra1.substring(x,x+1) + " ";

                }

            }
        }

        return cadena;
    }

   
}




102
Buenas noches, aquí dejo mi solución para el ejercicio.

He intentado controlar el error de tamaño insuficiente en los Strings con length() y un if, a ver que os parece, con los conocimientos actuales no se me ocurria nada más.

Sugerencias? peros?

Código: [Seleccionar]
public class CombinaCadenas{

    public CombinaCadenas(){
        //vacion sin atributos
    }

    public String combinadorCadenas(String palabra1, String palabra2, String palabra3){
        int longitudPalabra1=0;
        int longitudPalabra2=0;
        int longitudPalabra3=0;
        String cadena="";

        //mirar longitud de las palabras y controlar error por cantidad caracteres inferior a la necesaria
        longitudPalabra1 = palabra1.length();
        longitudPalabra2 = palabra2.length();
        longitudPalabra3 = palabra3.length();

        //Controlamos con un if la posibilidad de una introduccion inferior de caracteres de los necesarios sino, se procede a substring

        if(longitudPalabra1<2 || longitudPalabra2<4 || longitudPalabra3<6){
            cadena= " Error: La longitud de la primera palabra debe tener mínimo 2 letras, la segunda 4 y la tercera 6. ";
            System.out.println(cadena);
            return cadena;
        }
        else{
            cadena= palabra1.substring(0,2) + " " + palabra2.substring(0,4) + "-" + palabra3.substring(0,6); }
           
        return cadena;
    }
}

       

103
Buenas tardes, dejo aquí mi solución para cualquier comentario o matiz que siempre ayudan.

Por cierto el curso en si me parece estupendo paso a paso sin dar nada por sentado.

Código: [Seleccionar]
public class MiniCalculadoraEjemplo{

    //constructor vacío de atributos

    public MiniCalculadoraEjemplo(){ /*vacio*/ }

    //Retorno del valor absoluto de un numero

    public double valorAbsoluto(double numero){
        return Math.abs(numero); }
       
    //Retorno raiz cuadrada de un numero
   
    public double raizCuadrada(double numero){
        return Math.sqrt(numero);}
}

104
Aquí entrego el ejercicio con dos métodos de calculo, iterativo y recursión, este segundo da bien el resultado pero no sé si es lo que se considraria recursión pues modifico el parametro boolean pasado en un momento dado.

Clase MultiplicadorDieces
Código: [Seleccionar]
public class MultiplicadorDieces{
   
    public MultiplicadorDieces(){
        //Nada que inicializar
    }
   
    //Metodo 1 iterativo multiplicar dieces
    public double multiplicarPorDiez(double valorNumero, int numeroCeros){
        int dieces=1;
        double resultado=1;
       
        for (int i=1;i<=numeroCeros;i++){
           dieces=dieces*10;}
       
        resultado=valorNumero * dieces;
        return resultado;
    }
   
    // Método recursión
    public double recursionMultiplicar(double valorNumero, int numeroCeros){
        if (numeroCeros==0){return valorNumero;
        } else if (numeroCeros==1){ return valorNumero *10;
        } else { return valorNumero * recursionMultiplicar(10, numeroCeros-1);}
        }
 
}

105
Buenas tardes, aquí dejo mi ejercicio para cualquier observación.

Clase CocinaCasa

Código: [Seleccionar]
public class CocinaCasa{
   
    //Atributos de clase
    private boolean esIndependiente;
    private int numeroDeFuegos;
   
    //Constructor inicializado a 0 y false
    public CocinaCasa(){
        esIndependiente=false;
        numeroDeFuegos=0; }
       
    //Constructor que solicita los parametros de clase
    public CocinaCasa(boolean valorEsIndependiente, int valorNumeroDeFuegos){
        esIndependiente=valorEsIndependiente;
        numeroDeFuegos=valorNumeroDeFuegos; }
   
    //Setters
    public void setEsIndependiente(boolean valorEsIndependiente){
        esIndependiente=valorEsIndependiente; }
    public void setNumeroDeFuegos(int valorNumeroDeFuegos){
        numeroDeFuegos=valorNumeroDeFuegos; }
     
    //Getters
    public boolean getEsIndependiente(){ return esIndependiente; }
    public int getNumeroDeFuegos(){ return numeroDeFuegos; }

}
 

Clase SalonCasa
Código: [Seleccionar]

public class SalonCasa{
   
    //Atributos clase
    private int numeroDeTelevisores;
    private String tipoSalon;
   
    //Constructor inicializado a 0 y desconocido
    public SalonCasa(){
        numeroDeTelevisores=0;
        tipoSalon="desconocido"; }
       
    //Constructor necesario para inicializar Casa con parametros
    public SalonCasa(int valorNumeroDeTelevisores, String valorTipoSalon){
        numeroDeTelevisores=valorNumeroDeTelevisores;
        tipoSalon=valorTipoSalon; }
       
    //Setters
    public void setNumeroDeTelevisores(int valorNumeroDeTelevisores){
        numeroDeTelevisores=valorNumeroDeTelevisores; }
    public void setTipoSalon(String valorTipoSalon){
        tipoSalon=valorTipoSalon; }
   
    //Getters
    public int getNumeroDeTelevisores(){ return numeroDeTelevisores; }
    public String getTipoSalon(){ return tipoSalon; }
}

Clase Casa
Código: [Seleccionar]

public class Casa{
   
    //Atributos de clase
    private double superficie;
    private String direccion;
    private SalonCasa salonCasa;
    private CocinaCasa cocina;
   
    //Constructor valores por defecto
   
    public Casa(){
        superficie=0;
        direccion="";
        salonCasa= new SalonCasa();
        cocina= new CocinaCasa(); }
   
    //Constructor que recibe parametros superficie direccion salonCasa y cocina
   
    public Casa(double valorSuperficie, String valorDireccion, SalonCasa objetoSalonCasa, CocinaCasa objetoCocina){
        superficie= valorSuperficie;
        direccion= valorDireccion;
        salonCasa= new SalonCasa(objetoSalonCasa.getNumeroDeTelevisores(), objetoSalonCasa.getTipoSalon() );
        cocina= new CocinaCasa(objetoCocina.getEsIndependiente(),objetoCocina.getNumeroDeFuegos() );
    }
 
   
    //Setters
   
    public void setSuperficie(double valorSuperficie){
        superficie=valorSuperficie; }
    public void setDireccion(String valorDireccion){
        direccion=valorDireccion; }
    public void setSalonCasa(SalonCasa valorSalonCasa){
        salonCasa=valorSalonCasa; }
    public void setCocina(CocinaCasa valorCocina){
        cocina=valorCocina; }
       
    //Getters
   
    public double getSuperficie(){ return superficie; }
    public String getDireccion(){ return direccion; }
    public SalonCasa getSalonCasa(){ return salonCasa; }
    public CocinaCasa getCocina(){ return cocina; }
   
}
 

106
Buenas me presento soy Lorenzo, dejo mi ejercicio resuelto, la única duda que tengo, es que yo he usado la función getEdad() en lugar de acudir a la variable edad, es correcto? Gracias de antemano.

Código: [Seleccionar]
public class Medico {
    private String nombre;
    private String apellido;
    private int edad;
    private boolean casado;
    private String dni;
    private String especialidad;
   
    public Medico (){
        nombre="";
        apellido="";
        edad=0;
        casado=false;
        dni="";
        especialidad="";
    }
    public void setNombre(String valorNombre){
        nombre=valorNombre;
    }
    public void setApellido(String valorApellido){
        apellido=valorApellido;
    }
    public void setEdad(int valorEdad){
        edad=valorEdad;
    }
    public void setCasado(boolean valorCasado){
        casado=valorCasado;
    }
    public void setDni(String valorDni){
        dni=valorDni;
    }
    public void setEspecialidad(String valorEspecialidad){
        especialidad=valorEspecialidad;
    }
    public String getNombre(){return nombre;}
    public String getApellido(){return apellido;}
    public int getEdad(){return edad;}
    public boolean getCasado(){return casado;}
    public String getDni(){return dni;}
    public String getEspecialidad(){return especialidad;}

    public void calculoParaMultipoEdad(){
        int moduloEdad=0;
        int diferenciaModulo=0;
        moduloEdad=getEdad()%5;
        diferenciaModulo=5-moduloEdad;
        System.out.println("Los años que faltan para ser multiplo de 5 son " + diferenciaModulo);
    }
}

Páginas: 1 2 3 4 5 [6]

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