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

Páginas: 1 2 3 4 5 [6] 7 8 9 10 11 ... 93
101
Buenas, ejercicio correcto. Hay una cosa que no cuadra mucho. Estado civil se refiere a soltero ó casado, por tanto estado civil true ó verdadero no tiene mucho sentido. En cambio casado true indicaría que la persona está casada. Salu2

102
Buenas, perfecta respuesta. Otra opción podría haber sido establecer como superclase "Aeronave", como clases "Avión", "Globo", "Dirigible" y como objetos avion1, avion2, avion... para aviones, globo1, globo2, globo.... para globos y dirigible1, dirigible2, dirigible... para dirigibles. Salu2

103
Buenas, el código funciona bien, no obstante para quien esté siguiendo el curso tener en cuenta que el método main no se explica hasta la entrega CU00655B, por tanto en este ejercicio no se requiere usar el método main, sino que se pueden hacer pruebas con BlueJ sin necesidad de usar método main. Se requiere crear una clase, y usando BlueJ crear un objeto, y sobre ese objeto comprobar el funcionamiento del método. Un ejemplo de solución puede verse en https://aprenderaprogramar.com/foros/index.php?topic=1258.0

Salu2

105
Buenas, para quien revise este ejercicio, comentar que hace perfectamente lo que se pedía. Como cosas a mejorar diría la forma de nombrar. En lugar de mesesDelAño creo preferible mesDelAño. De esta manera podemos decir "El mes 1 del año es febrero (comenzando a contar en enero igual a cero)" ó mesDelAño[1] es febrero. Nombrarlo mesesDelAño genera un efecto extraño, ya que tendríamos que decir "El meses 1 del año es febrero" ó mesesDelAño[1] es febrero. Igualmente en lugar de acertarMes usaría mesRespuesta. De esta manera podríamos decir el mesRespuesta es abril, en lugar de el acertarMes es abril. Otra recomendación es no usar eñes, pues aunque estén permitidas, a la larga pueden dar problemas. En ese caso usarías mesDelAnyo ó mesDelAnno en lugar de mesDelAño.

Salu2

106
Buenas, este ejercicio no está bien resuelto: el constructor que recibe parámetros no debe inicializar el objeto creado a valores concretos, sino con los valores recibidos como parámetros. Para eso, precisamente, es para lo que se reciben los parámetros.

En este otro hilo puede verse una solución correcta: https://aprenderaprogramar.com/foros/index.php?topic=1260.0

Salu2

107
Buenas, este ejercicio no cumple con lo que se pedía en el enunciado. El método está devolviendo una cadena de tipo "La combinacion es: Ca Cons-Remode
" cuando lo que se pedía era que devolviera "Ca Cons-Remode"

No era necesario incluir un método main (en el programa del curso aún no se ha explicado el main). Y en caso de incluirlo, es preferible hacerlo en una clase aparte.

En este otro hilo puede verse una solución correcta: https://aprenderaprogramar.com/foros/index.php?topic=1258.0

Si la cadena Casa fuese menor que los valores requeridos por el metodo substring se produce un error java.lang.StringIndexOutOfBoundsException: String index out of range, que viene a decir que se está tratando manipular un elemento de un String con un índice que no existe para dicho String. Por ejemplo el String "Casa" tiene como elemento 0 la C, como elemento 1 la a, como elemento 2 la s y como elemento 3 la a final. Si tratáramos de manipular el carácter 7 obtendríamos un error: no existe ese índice. Esto podríamos controlarlo con un if (explicado en la entrega CU00636B), o mediante manejo de excepciones con try-catch (explicado en la entrega CU00927C del curso avanzado de Java). Para este ejercicio no es necesario tener en cuenta ese tipo de situaciones, es decir, suponemos que siempre se recibe una cadena de longitud correcta.

Salu2

108
Buenas, el ejercicio está bien resuelto aunque no era necesario incluir un método main (en el programa del curso aún no se ha explicado el main). Y en caso de incluirlo, es preferible hacerlo en una clase aparte. En este hilo hay algunos comentarios interesantes: https://aprenderaprogramar.com/foros/index.php?topic=1238.0

Salu2

110
Buenas, para quien mire este ejercicio lo comento. No está bien resuelto: un constructor que recibe parámetros debe usar esos parámetros para inicializar los atributos de objeto. No es correcto tener un constructor como     
public ProfesorCU00640B(String nombre, String apellidos, int edad, boolean casado, boolean especialista)
y luego tener por ejemplo nombre = "Juan Diego";

En ese constructor no se está haciendo uso del parámetro recibido, ya que independientemente del parámetro que se reciba el nombre de la instancia (objeto) creado siempre va a ser "Juan Diego".

Puede verse una solución correcta en https://aprenderaprogramar.com/foros/index.php?topic=2181.0

Salu2

111
Buenas, depurar es una cuestión aparte, pero compilar y ejecutar código no debería presentarte problema alguno. ¿Qué código es el que estás intentando compilar? ¿Qué problema es el que se te presenta (me refiero a qué mensaje de error o similar)? Para pegar código ver https://aprenderaprogramar.com/foros/index.php?topic=1460.0

Salu2

112
Buenas, aunque no creo que un diseñador le diera el visto bueno también creo que se puede resolver forzando el texto a encuadrarse en celdas de tabla que impiden que se desalinee.

A mí me aparece alineado poniendo este fragmento de código en sustitución del anterior:

Código: [Seleccionar]
            <tr>
            <td><span class="blue-text"><i class="fa fa-file" aria-hidden="true"></i></span></td>
            <td style='font: 11pt arial'><a href="#" class="info2_ET1">Tema 1 - Jujubes marzipan chocolate cake wafer biscuit.</a></td>
            </tr>
<tr >
<tr hidden class="info2_submenu1">
<td><span class="blue-text"><i class="fa fa-angle-double-right" aria-hidden="true"></i></span></td>
    <td>
    <a href="pagina.htm">Cap. 1/Sec. 1 - Jujubes marzipan chocolate cake wafer biscuit.</a><br>
</tr>
<tr hidden class="info2_submenu1">
<td><span class="blue-text"><i class="fa fa-angle-double-right" aria-hidden="true"></i></span></td>
    <td>
    <a href="pagina.htm">Cap. 1/Sec. 2 - Jujubes marzipan chocolate cake wafer biscuit. Biscuit powder danish croissant cupcake macaroon.</a><br>
</tr>
    </td>
</tr>
        </table>



Salu2

113
Buenas, para quien tenga interés en esto que se comentaba, he hecho pruebas en varios navegadores (Firefox, Chrome, Explorer) y en todos he obtenido el mismo resultado: el texto aparece correctamente alineado, excepto cuando se reduce el tamaño de la ventana a un tamaño tal que la línea no cabe en una sola línea, y al generarse el salto de línea se produce la desalineación. En el caso de la web JSFiddle es precisamente esto lo que ocurre: los resultados se muestran sobre un frame de dimensiones muy reducidas, y debido a ello el contenido no puede visualizarse en una sola línea, generándose el salto de línea y la desalineación, que en caso de usarse un frame de mayores dimensiones no se produciría. En el curso CSS (https://aprenderaprogramar.com/index.php?option=com_content&view=category&id=75&Itemid=203) se comenta una opción que puede ser útil en <<CSS text-align, color, text-decoration, text-indent, white-space nowrap, pre, pre-wrap, pre-line (CU01040D)>>

En el código habría que añadir la opción nowrap así:

Código: [Seleccionar]
    .oculto1,.oculto2,.oculto3{
      white-space:nowrap;
            margin-left: 1%;
            display: none;
        }

Esto evita que al no haber espacio disponible la línea se divida en dos, es decir, la línea se mantiene siempre como una única línea (alineada), haya espacio suficiente o no.

Salu2

114
Buenas, lo que comentas no parece nada trivial. Sobre todo porque una cosa es recopilar información pública (que únicamente requiere acceder a una web), y otra cosa es acceder remotamente a un sistema y operar sobre él. Pienso que puede resolverse con un script php (también podría ser un script en otro lenguaje como java u otros) siempre que el sitio que visitas no te imponga ciertas barreras (como captchas duros o similar), pero para ello requieres conocimientos avanzados de PHP, java o lenguaje que utilices (así como del protocolo HTTP). En el curso de PHP (https://aprenderaprogramar.com/index.php?option=com_content&view=category&id=70&Itemid=193) se menciona algo [Extraer código fuente de página web con PHP. Leer archivos completos: file_get_contents y nl2br (CU00838B)] pero el contenido de este curso es básico y no abarca el poder realizar lo que comentas.

Salu2

115
Buenas, largos días se han perdido por problemas más insignificantes que ese... cosas de la programación  ???

116
Buenas, las respuestas son correctas. Una curiosidad es que en Java "Juan Romero Sánchez" se considera un objeto (es un String), y anónimo porque no está asociado a ninguna variable que apunte a él. No obstante muchas veces los String se consideran objetos un tanto especiales. En https://aprenderaprogramar.com/foros/index.php?topic=1033.0 puede verse un ejemplo curioso como personajeM2 = new PersonajeMaldito("Lady Westfalia", new MaldadBipolar("Destruye sueños", "Encierra miradas"));
En ese ejemplo el segundo parámetro que se pasa al constructor es un objeto sin nombre que se inicializa al mismo tiempo que es pasado como constructor. En este caso el compilador tiene que en primer lugar crear el objeto MaldadBipolar e inicializarlo con los parámetros indicados, y luego crear el objeto PersonajeMaldito e inicializarlo a partir del String y del objeto MaldadBipolar creado.

Salu2

118
Buenas, el ejercicio cumple con lo requerido. Algunos comentarios.

En la clase ListaCantantesFamosos hay dos métodos que usan un parámetro llamado registroCantante, pero un caso con un significado y en otro caso con otro:

Código: [Seleccionar]
public void addCantanteFamoso (CantanteFamoso registroCantante) { listaCantantes.add (registroCantante); }
public CantanteFamoso getCantanteFamoso(int registroCantante) {return listaCantantes.get(registroCantante);}

En el primer caso registrocantente alude a un objeto CantanteFamoso. En el segundo alude a un entero (tipo primitivo). Esto aunque está permitido no es "muy elegante" porque puede originar algo de confusión. Mi recomendación sería usar algo como:

Código: [Seleccionar]
public void addCantanteFamoso (CantanteFamoso registroCantante) { listaCantantes.add (registroCantante); }
public CantanteFamoso getCantanteFamoso(int numRegistroCantante) {return listaCantantes.get(numRegistroCantante);}

Que básicamente es lo mismo, pero donde queda un poco más diferenciado que en un caso se alude a un objeto y en el otro a un entero.

Para quien esté siguiendo el curso y consulte este ejercicio, tener en cuenta que hay algún fragmento de código fuera de los contenidos del curso, por  ejemplo:

Código: [Seleccionar]
// Pausar la salida por pantalla *******************
System.out.print("\n******************** PULSE INTRO PARA CONTINUAR ***************\n");
try{
System.in.read();
}catch (IOException ex) {  } 

El ejercicio puede resolverse sin necesidad de este código, para ver un ejemplo consultar https://aprenderaprogramar.com/foros/index.php?topic=2889.0

Salu2

119
Buenas, se aconseja porque si necesitas contar en general es preferible usar un for normal (con contador) en lugar de usar un for extendido. En el for normal ya tienes el contador incorporado y no tienes que preocuparte por esa cuestión. Es decir, si no hubiera que hacerlo con un for extendido porque lo pide el ejercicio, bastaría usar

    public void mostrarCantantes(){
        for(int i=0;1<getTamaño();i++){
        System.out.println ("Elemento "+(i+1)+": " + getNombre(i) );
    }

y dejar que el control del contador lo lleve el propio for.

Pero como tú dices, puedes usar un contador en un for extendido (si quieres). Y también como has indicado, cuanto más compacto y menos redundante sea el código, mejor.

Salu2

120
Buenas, el código funciona bien y tiene una buena solución para evitar tener que estar respondiendo continuamente ¿Quiere continuar? (s/n), de hecho es mucho más cómodo como lo has programado, y es interesante para quien esté buscando formas de solucionar el ejercicio ver cómo lo has planteado. Un par de cosas a comentar. El for extendido está en la clase ListaCantantesFamosos y no en el main, lo cual está bien, aunque el enunciado parece más bien pedir que esté en el main. Creo que puede darse por bueno tanto una cosa como otra. En cuanto al uso de un contador con un for extendido, creo que es interesante que se lea lo que se comenta en https://aprenderaprogramar.com/foros/index.php?topic=3210.0

Salu2

Páginas: 1 2 3 4 5 [6] 7 8 9 10 11 ... 93
Esto es un laboratorio de ideas...
Aprender a programar

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