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 - BelCrow

Páginas: [1] 2 3
1
Después de muchas pruebas y de decidir investigar un poco.. aquí el ejercicio, favor verificar!.

VerificadoDeEntradas:

Código: [Seleccionar]
//importacion de API's
import java.lang.String; //no es necesario pero aqui esta!
import java.util.Scanner;

//clase
public class VerificadoDeEntradas {
    //sin variables y sin constructor

    //metodo Main
    public static void main (String[]args) {
        System.out.println ("Escriba la palabra que sera verificada:");

        //variables locales
        Scanner entradaPorTeclado = new Scanner (System.in);
        String palabraIntroducida = entradaPorTeclado.nextLine ();
        int contadorDeLetras = palabraIntroducida.length ();
        String verificadorPrimeraLetra = palabraIntroducida.substring (0,1);

        //if y else con los System.out.println
        if (contadorDeLetras > 5 && contadorDeLetras < 15 && verificadorPrimeraLetra.equals("a") || contadorDeLetras > 5 && contadorDeLetras < 15 && verificadorPrimeraLetra.equals("A")) {
            System.out.println ("La cadena "+ palabraIntroducida +" tiene entre 5 y 15 caracteres y comienza por \"a\" o por \"A\".");
        } else {

            if (contadorDeLetras > 5 && contadorDeLetras < 15 && verificadorPrimeraLetra != "0") {
                System.out.println ("La cadena "+ palabraIntroducida +" tiene entre 5 y 15 caracteres y no comienza por \"a\".");
            } else {

                if (contadorDeLetras < 5 || contadorDeLetras > 15) {

                    //abriendo in if dentro de otro if
                    if (verificadorPrimeraLetra.equals("a") || verificadorPrimeraLetra.equals("A")) {
                        System.out.println ("La cadena "+ palabraIntroducida +" no tiene entre 5 y 15 caracteres y comienza por \"a\" o por \"A\".");
                    } else {                 
                        System.out.println ("La cadena "+ palabraIntroducida +" no tiene entre 5 y 15 caracteres y no comienza por \"a\" o por \"A\".");
                    }
                } else {}
            }
        }
    }//cierre de main
}//cierre de clase

Esta muy largo el código, pero asi fue como pude hacerlo y ademas cumple con lo que dice el mandato (creo).

Citar
Crea una clase con un método main que pida una entrada de teclado y usando condicionales, el método length de la clase String y el método substring de la clase String, muestre un mensaje indicando:

a) Si la cadena introducida tiene menos de 5 caracteres, entre 5 y 15 caracteres o más de 15 caracteres.

b) Si la cadena introducida comienza por la letra a.

Ejemplo: se pide la entrada y el usuario introduce “vereda”. Por pantalla se debe mostrar: “La cadena introducida tiene entre 5 y 15 caracteres y no comienza por a”.

2
Ya hice las pruebas y ellas solas respondieron mis dudas...

Hay que usas this en el constructor siguiendo el orden en las que fueron puestas las variables.. si te falta una variable, te tira error y si no lo haces en orden también... incluso si las variables fueron introducidas de un solo golpe sigue teniendo las mismas reglas... ejp.

Código: [Seleccionar]
public class Profesor2 {
    private String nombre, apellido;
    private int edad;
    private boolean casado, especialista;

    //constructor sin parametr
    public Profesor2 () {
        this("", "", 0, false, false);
    }
}

........

3
Gracias Alex, esa forma la vi en el ejercicio CU00652B que la usaste para invocar un constructor, me pareció super practico, fácil y ademas con menos lineas, así que decidí implementarlo en este ejercicio...

Quiero hacer algunas pruebas y luego hacer preguntas sobre este modo de crear constructores, las haré en este mismo tema pero cuando llegue a mi casa y las realice..

4
favor revisar....

Profesor:
Código: [Seleccionar]
//clase
public class Profesor {
    private String nombre;
    private String apellido;
    private int edad;
    private boolean casado;
    private boolean especialista;

    //constructor sin parametr
    public Profesor () {
        this("", "", 0, false, false);
    }

    //constructor con parametros
    public Profesor (String nombre, String apellido, int edad, boolean casado, boolean especialista) {
        this.nombre = nombre;
        this.apellido = apellido;
        this.edad = edad;
        this.casado = casado;
        this.especialista = especialista;
    }

    //setters
    public void setNombre (String nombre) {
        this.nombre = nombre;
    }

    public void setApellido (String apellido) {
        this.apellido = apellido;
    }

    public void setEdad (int edad) {
        this.edad = edad;
    }

    public void setCasado (boolean casado) {
        this.casado = casado;
    }

    public void setEspecialista (boolean especialista) {
        this.especialista = especialista;
    }

    //getters
    public String getNombre () {return nombre;}

    public String getApellido () {return apellido;}

    public int getEdad () {return edad;}

    public boolean getCasado () {return casado;}

    public boolean getEspecialista () {return especialista;}
}

6
Reflexiona y responde a las siguientes preguntas:

a) ¿Es posible llamar a un método externo de un objeto que ha sido declarado pero no creado?

No, no creo que sea posible llamar un método externo, sin crear el objeto.

b) ¿Es posible llamar a un método externo de un objeto “A” que ha sido declarado y creado pero cuyo constructor está vacío?

Si, ya que el constructor define un valor por defecto de las variables de la clase pero no impide que el método sea llamado.

c) Una llamada al método pow de la clase Math que hacemos dentro de un método definido en una clase ¿Es una llamada a un método interno o a un método externo? ¿La llamada al método pow se hace sobre un objeto declarado y creado o no declarado y no creado?

Aunque sea de un API, es de un método externo ya que esa clase no la creamos nosotros y tenemos que importarla.

Me imagino que al momento de importar la clase Math, pues se crea y se declara para poder usar dichos metodos (pow, sqrt, ect).

Si por casualidad aun tengo un mal concepto favor de aclarar....

7
haha ok no hay problemas :P, como quiera esos consejos no están de mas .....

8
gracias de todas formas... mejorare eso mario :P

9
heheh si tu supieras que lo pense.. pero opte por escribir el nombre de la variable mas corto para hacerlo mas entendible, al parecer hice mal.... corregire esto..

ahhh con respecto a loa atributos de la clase.. decidi ponerlos porque queria usar los dos metodos con loa mismos atributos para comparar y no tener que introducirlos de nuevo... aunque si te fijas en el anterior no tenia dichos atributos.. osea uqe los puse intencional...

10
En esta practica solo se pide que copiemos el código y creemos objetos y realicemos pruebas.. cito ejercicio:

Citar
Crea un objeto de tipo Combinador y prueba a ejecutar los dos métodos disponibles pasando distintos parámetros: cadenas con más de tres caracteres, una cadena con más de tres y otra con menos de tres y ambas con menos de tres caracteres. Fíjate en el resultado que ofrece el método CombinadoSiempre cuando se le pasan como parámetros dos cadenas vacías. ¿Te parece lógico el resultado?

En la clase tenemos definidos dos atributos o campos. ¿Tienen utilidad conocida a la vista del código de la clase? ¿Se usan en los métodos que tenemos definidos?

Pero yo decidí rehacer el ejercicio CU00649B con lo que aprendí en este.... Favor revisar para ver si procedimiento es correcto o se puede mejorar :P.

InicialesDePalabras2:

Código: [Seleccionar]
//clase
public class InicialesDePalabras2 {
    String primeraPalabra;
    String segundaPalabra;
    String terceraPalabra;

    //constructor
    public InicialesDePalabras2 (String valorPrimeraPalabra, String valorSegundaPalabra, String valorTerceraPalabra) {
        primeraPalabra = valorPrimeraPalabra;
        segundaPalabra = valorSegundaPalabra;
        terceraPalabra = valorTerceraPalabra;
    }

    //metodo con length que solo suma y devuelve mensaje
    public String iniciales1 () {
        if (primeraPalabra.length() >= 2 && segundaPalabra.length() >= 4 && terceraPalabra.length() >= 6) {
            String union = primeraPalabra.substring(0,2)+" "+segundaPalabra.substring(0,4)+"-"+terceraPalabra.substring(0,6);
            return union;
        }else {
            return "Las palabras no constan con letras necesarias para ser sumadas.";
        }

    }

    //metodo con length que te suma todas las que esten
    public String iniciales2 () {
        int palabra1 = 2;
        int palabra2 = 4;
        int palabra3 = 6;

        if (primeraPalabra.length() < 2) {
            palabra1 = primeraPalabra.length();
        }

        if (segundaPalabra.length() < 4) {
            palabra2 = segundaPalabra.length();
        }

        if (terceraPalabra.length() < 6) {
            palabra3 = terceraPalabra.length();
        }

        String union = primeraPalabra.substring(0,palabra1)+" "+segundaPalabra.substring(0,palabra2)+"-"+terceraPalabra.substring(0,palabra3);
        return union;
    }
}

11
Aprender a programar desde cero / Re:Duda con Métodos!!!!!!
« en: 04 de Septiembre 2014, 21:55 »
Mejor explicado de hay se daña..... Gracias por aclararme las dudas dongo  ;D

12
Mi duda radica en los public, private, proteted y vacios...

yo pensé que era obligatorio decir si un método era publico para usarlo en otra clase o privado solo para darle uso en esta clase.. el protected no se a que va, pero me imagino que lo sabre mientras avance....

La question es que vi un ejemplo en el CU00649B, donde el metodo no tenia public ni private, y aun así funciono de lujo..... entonces cuando no se le pone nada a un método por defecto es privado o publico?..

(Aquí cito el ejemplo que vi):

Código: [Seleccionar]
//Combina las tres primeras letras de dos textos recibidos como parámetro en una sola cadena separada por un espacio
 public class Combinador {
    //Campos de la clase
    private String texto1;
    private String texto2;
 
    //Constructor de la clase
    public Combinador () {
        texto1 = "";
        texto2 = "";
    } //Cierre del constructor
 
    //Método que combina las tres primeras letras de cada cadena
    String combinacion (String valor_texto1, String valor_texto2) {
        String combinacion = valor_texto1.substring (0,3) + " " + valor_texto2.substring (0,3);
        return combinacion; //combinacion es tanto el nombre del método como el de una variable local
    } //Cierre del método
 } //Cierre de la clase

13
Por favor verificar... ejercicio CU00649B del tutorial de programación java.

InicialesDePalabras:

Código: [Seleccionar]
//clase
public class InicialesDePalabras {
   
    //constructor
    public InicialesDePalabras () {
        //vacio
    }
   
    //metodo con Substring
    public String iniciales (String primeraPalabra, String segundaPalabra, String terceraPalabra) {
        String union = primeraPalabra.substring(0,2)+" "+segundaPalabra.substring(0,4)+"-"+terceraPalabra.substring(0,6);
        return union;
    }
}

14
Aprender a programar desde cero / Re:practica CU00647B Math API de Java.
« en: 04 de Septiembre 2014, 20:30 »
 ;D.. ok Gracias...

15
Aprender a programar desde cero / practica CU00647B Math API de Java.
« en: 04 de Septiembre 2014, 11:37 »
Favor verificar.... se que el "import" esta de sobra pero es por el ejercicio.

MiniCalculadoraEjemplo:

Código: [Seleccionar]
//API necesario aunque es un API que se carga automaticamente.
import java.lang.Math;

//clase
public class MiniCalculadoraEjemplo {

    //constructor
    public MiniCalculadoraEjemplo () {
        //nada que declarar
    }

    //metodo de valor absoluto 
    public double valorAbsoluto (double numeroAbsoluto) {
        return Math.abs (numeroAbsoluto);
    }

    //raiz cuadrada
    public double raizCuadrada (double numeroRaizcuadrada) {
        return Math.sqrt (numeroRaizcuadrada);
    }
}

Muy bueno este tema de los API's, simplifica muchas cosas....

16
Gracias Ogramar, pues seguiré avanzando...

17
Aprender a programar desde cero / Re:practica CU006342B
« en: 02 de Septiembre 2014, 13:58 »
Si hace lo mismo y con 2 lineas menos....... muchas gracias Mario..

Casa:

Código: [Seleccionar]
//clase con otras clases
public class Casa {
    private double superficie;
    private String direccion;
    private SalonCasa salonCasa;
    private CocinaCasa cocina;

    //constructor
    public Casa () {
        superficie = 0.0;
        direccion = "";
        salonCasa = new SalonCasa ();
        cocina = new CocinaCasa ();
    }

    //constuctor con parametros
    public Casa (double valorSuperficie, String valorDireccion, SalonCasa objetoSalonCasa, CocinaCasa objetoCocinaCasa) {
        superficie = valorSuperficie;
        direccion = valorDireccion;
        salonCasa = new SalonCasa (objetoSalonCasa.getNumeroDeTelevisores(), objetoSalonCasa.getTipoSalon() );
        cocina = new CocinaCasa (objetoCocinaCasa.getEsIndependente(), objetoCocinaCasa.getNumeroDeFuegos() );
    }

    //setters de esta clase
    public void setSuperficie (double valorSuperficie) {
        superficie = valorSuperficie;
    }

    public void setDireccion (String valorDireccion) {
        direccion = valorDireccion;
    }

    //setters de las otras clases

    public void setSalonCasa (SalonCasa objetoSalon) {
        salonCasa = new SalonCasa(objetoSalon.getNumeroDeTelevisores(), objetoSalon.getTipoSalon());
    }

    public void setCocina (CocinaCasa objetoCocina) {
        cocina = new CocinaCasa(objetoCocina.getEsIndependente(), objetoCocina.getNumeroDeFuegos());
    }

    //getters de esta clase
    public double getSuperficie () {return superficie;}

    public String getDireccion () {return direccion;}

    //getters de las otras clases
    public SalonCasa getSalonCasa () {return salonCasa;}

    public CocinaCasa getCocina () {return cocina;}
}

18
Aprender a programar desde cero / Re:practica CU00644B
« en: 02 de Septiembre 2014, 12:58 »
aquí dejo mi primera idea para esta practica, pero la descarte por que tenia un limite y era muy largo a comparación de lo requerido, pero funciona mas o menos... (la hice para ver que tal quedaba lo que había planeado...).

MultiplicadorDieces2:

Código: [Seleccionar]
//clase
public class MultiplicadorDieces2 {

    //constructor
    public MultiplicadorDieces2 () {
        //vacio
    }

    //metodo
    public double multiplicarPorDieces (double numero, int dieces) {
        double resultado = 0;
        if (dieces == 1) {
            resultado = numero *10;
        }else if (dieces == 2) {
            resultado = numero *100;
        }else if (dieces == 3) {
            resultado = numero *1000;
        }else if (dieces == 4) {
            resultado = numero *10000;
        } else if (dieces == 5) {
            resultado = numero *100000;
        }else if (dieces == 6) {
            resultado = numero *1000000;
        }else {
            System.out.println ("Esta operacion solo soporta multiplo de dieces hasta un maximo de 6 ceros!.");
        }
        return resultado;
    }
}

19
Aprender a programar desde cero / Re:pregunta CU00643
« en: 02 de Septiembre 2014, 12:37 »
ok..... Gracias, mejor definido de hay no c puede :p....

20
Pensé en muchas formas de como tratar de realizar esta practica, pero lamentablemente tuve que utiliza el for del ejemplo y modificarlo para que me diera resultado.

todo funciona bien con cualquier numero (me cumple el mandato), pero tuve que hacer muchas pruebas para ver si comprendía un poco el for , e incluso invertigar en google como funciona, el punto es que no lo he absorbido del 100 y que con:

public int potenciaConRecursion (int m, int n) {
        if (n==0) { return 1;
        } else  { return m * potenciaConRecursion (m, n-1) ; }

no es posible realizar el ejercicio, ya que esto es un bucle(loop) hasta que "n" llegue a "0".

bueno aquí mi código:

MultiplicadorDieces:

Código: [Seleccionar]
//clase
public class MultiplicadorDieces {

    //constructor
    public MultiplicadorDieces () {
        //vacio
    }

    //metodo
    public double multiplicarPorDieces (double numero, int dieces) {
        int resultado = 1;
        for (int i=1; i<=dieces; i++) {
            resultado = resultado * 10;           
        }
        numero = numero * resultado;
        return numero;
    }
}

favor verificar, de antemano gracias!!!!.

Páginas: [1] 2 3

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