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 ... 3 4 5 6 7 [8] 9 10 11 12 13 ... 91
141
Buenas, desde mi punto de vista el código cumple perfectamente con lo que se requería en el ejercicio y está bien estructurado y planteado.

Salu2

142
Buenas, por si alguien lee este hilo, comentar que la etiqueta center está deprecated (obsoleta o desaconsejada). En su lugar se recomienda el uso de técnicas CSS para el centrado de elementos. Las técnicas CSS están explicadas en el curso CSS disponible en https://aprenderaprogramar.com/index.php?option=com_content&view=category&id=75&Itemid=203

Salu2

143
Buenas, hay varias formas de resolver la cuestión de no perder lo dibujado una vez se añaden elementos a un dibujo en Java. Aquí dejo un código que muestra una posible solución, aunque no digo que esta sea la única (ni la mejor).

Código: [Seleccionar]

import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.GraphicsEnvironment;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.geom.Ellipse2D;
import java.util.ArrayList;
import java.util.Random;
import javax.swing.JFrame;
import javax.swing.JPanel;

public class MyPanel extends JPanel implements MouseListener
{
    private ArrayList<Point> points = new ArrayList<>();

    public MyPanel() {
        super();
        addMouseListener(this);
    }

    @Override public void mouseEntered(MouseEvent e) { }

    @Override public void mouseExited(MouseEvent e) { }

    @Override public void mouseClicked(MouseEvent e) { }

    @Override public void mousePressed(MouseEvent e) { }

    @Override public void mouseReleased(MouseEvent e) {
        points.add(new Point(e.getX(), e.getY()));
        repaint();
    }

    @Override public void paint(Graphics g) {
        super.paint(g);
        for (Point p : points)
            g.fillOval(p.getX(), p.getY(), 10, 10);
    }
   
    public static void main(String[] args) {
    JFrame frame = new JFrame("Test");
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.setSize(400, 400);
    frame.setLocationRelativeTo(null);

    MyPanel myPanel = new MyPanel();

    frame.add(myPanel);
    frame.setVisible(true);
}
}

class Point
{
    private int x;
    private int y;

    public Point(int x, int y) {
        this.x = x;
        this.y = y;
    }

    public int getX() {
        return x;
    }

    public int getY() {
        return y;
    }
}

Salu2

144
Buenas, veo el ejercicio bien resuelto. Sobre la comprobación de consistencia, parece adecuada. De hecho, lo que parece más razonable es que no existiera un dato de machos y hembras, sino que uno de los dos se calculara a partir del otro. Es lo que en la teoría se suele llamar "evitar la redundancia de datos": nunca almacenar un dato que pueda ser calculado a partir de otros ya almacenados. No obstante en la práctica esto no siempre es así (por un motivo u otro) y a veces surgen inconsistencias.

Sobre la implementación de remove puedes ver este ejercicio resuelto a ver si ayuda: https://aprenderaprogramar.com/foros/index.php?topic=5922.0

Salu2

145
Buenas, comentar que las respuestas a los ejercicios en general deben hacerse incluyendo el código. Pego aquí el código correspondiente a los links por si alguien está interesado en revisarlo (tener en cuenta que los links pueden perderse en un momento dado, de ahí que sea más útil tener aquí el código disponible)

ejercicioCU01030D-2

Código: [Seleccionar]
<!DOCTYPE html>
<html>
<head>
<title>"Ejercicio CU01030D-2"</title>
<meta charset="utf-8">
<link rel="stylesheet" type="text/CSS" href="estilosCU01030D-2.css">
</head>
<body>
  Imagen de fondo grande (1024x768) sin repetición
</body>
</html>

Ejercicio CU01030D-3

<!DOCTYPE html>
<html>
   <head>
      <title>"Ejercicio CU01030D-3"</title>
      <meta charset="utf-8">
      <link rel="stylesheet" type="text/CSS" href="estilosCU01030D-3.css">
   </head>
<body>
  Imagen de fondo pequeña (128x128) con repetición
</body>
</html>

Puede verse otra solución a este ejercicio en https://aprenderaprogramar.com/foros/index.php?topic=2404.0

Salu2

146
Buenas robicombi, por mi parte revivo este tema simplemente para decir que tu opinión parece razonable y seguramente acertada. Como moderador no veo que haya que hacer nada con tu mensaje.

Salu2

147
Buenas, para ver una solución correcta a este ejercicio puede consultarse el hilo https://aprenderaprogramar.com/foros/index.php?topic=2261.0

Poniendo el código de ejercicio en el buscador del foro pueden encontrarse soluciones propuestas a cada uno de los ejercicios

Salu2

148
Buenas, en este ejercicio parece que no se puede hacer un reemplazo directo como comentas, sino que hay que introducir algunas variaciones para poder adaptarse a lo que pide el enunciado. Por tanto entiendo que para resolverlo deben introducirse las variaciones que sean necesarias.

Salu2

149
Buenas, pon en el buscador del foro error filezilla y encontrarás distintos hilos donde se habla del tema.

Por ejemplo https://aprenderaprogramar.com/foros/index.php?topic=3764.0

Revisando posiblemente encuentres solución

Salu2

150
Buenas, JMapViewer integra los mapas de Open Street Map en Java. A través de open street map una vez conocidas las coordenadas en latitud y longitud habría que realizar una llamada como esta para obtener los resultados

Latitud lat=52.5487429714954
Longitud lon=-1.81602098644987

https://nominatim.openstreetmap.org/reverse?format=xml&lat=52.5487429714954&lon=-1.81602098644987&zoom=18&addressdetails=1

El resultado que se obtiene es un xml con la información del país, ciudad, calle, etc. En este caso:

Código: [Seleccionar]
<reversegeocode timestamp="Fri, 20 Apr 18 15:34:51 +0000" attribution="Data © OpenStreetMap contributors, ODbL 1.0. http://www.openstreetmap.org/copyright" querystring="format=xml&lat=52.5487429714954&lon=-1.81602098644987&zoom=18&addressdetails=1">
<result place_id="91015268" osm_type="way" osm_id="90394420" lat="52.54877605" lon="-1.81627033283164" boundingbox="52.5487321,52.5488299,-1.8163514,-1.8161885">137, Pilkington Avenue, Sutton Coldfield, Birmingham, West Midlands Combined Authority, West Midlands, Inglaterra, B72 1LH, Reino Unido</result>
<addressparts>
<house_number>137</house_number>
<road>Pilkington Avenue</road>
<suburb>Sutton Coldfield</suburb>
<city>Birmingham</city>
<county>West Midlands Combined Authority</county>
<state_district>West Midlands</state_district>
<state>Inglaterra</state>
<postcode>B72 1LH</postcode>
<country>Reino Unido</country>
<country_code>gb</country_code>
</addressparts></reversegeocode>

A partir del xml se puede rescatar la información que se requiera

La obtención de datos de la localización a partir de latitud y longitud se llama reverse geocoding o geolocalización inversa.

Salu2

151
Buenas, esta consulta no acabo de entender a qué se refiere (además ha pasado un tiempo). Si te refieres a modificar por ejemplo las keywords, description, content, etc. de una página web, tienes que plantearte si tienes acceso o no al código fuente de la aplicación o si pretendes hacerlo desde algún script del lado del servidor o algo así.

Para plantear consultas es conveniente seguir las indicaciones que se dan en https://aprenderaprogramar.com/foros/index.php?topic=1460.0

Salu2

152
Buenas, la consulta que planteas es demasiado amplia. Lee en https://aprenderaprogramar.com/foros/index.php?topic=1460.0 unas orientaciones sobre pautas de participación en los foros, cómo poner título a los temas, forma de plantear consultas, etc.

Si no conoces Java, puedes obtener toda la información sobre las bases de Java en:

Tutorial aprender a programar en Java desde cero: https://www.aprenderaprogramar.com/index.php?option=com_content&view=category&id=68&Itemid=188

Salu2

153
Buenas, las respuestas en principio no son correctas, al menos no coinciden con la respuesta que se ha considerado correcta en otros hilos del foro. Revisa este hilo: https://aprenderaprogramar.com/foros/index.php?topic=3159.0

Compara tus respuestas con las indicadas y a partir de ahí podrás sacar algunas conclusiones

Salu2

154
Buenas paramonso, repetir que los títulos de los temas en los foros debe ponerse como se indica en https://aprenderaprogramar.com/foros/index.php?topic=1460.0

El ejercicio está correcto (en lugar de preguntarNombre veo que usas preguntarDatos pero la funcionalidad es la pedida en el ejercicio)

Salu2

156
Buenas LuisM, veo tu respuesta correcta. Por comentar algo más trataré de poner un ejemplo, aunque no es sencillo hablar de hilos pues es un concepto relativamente avanzado y muchos programadores no los utilizan precisamente por su carácter avanzado:

Supongamos una aplicación multihilo donde un hilo 1 se encarga de realizar la reserva de un determinado asiento en un avión, mientras que otro hilo 2 se encarga de consultar los asientos libres en el avión para servirlos a una página web e informar así a un usuario que quiere realizar una compra o reserva.

Supongamos que los asientos y si están libres u ocupados están localizados en una estructura de datos localizada en ciertas posiciones de memoria principal cuya escritura requiere 2 segundos y cuya lectura requiere 1 segundo (ejemplo no real).

Supongamos que a las 10:00:00 una persona ha comprado un asiento pero la escritura no se ha formalizado hasta las 10:00:02, mientras que otra persona ha consultado los asientos libres a las 10:00:01.

Si no existe sincronización, implica que no está establecido quién tiene preferencia para usar el recurso, en este caso la memoria, y el resultado sería que la persona que ha consultado el estado de los asientos obtendría como resultado que el asiento que ha comprado la otra persona está libre.

Cuando existe sincronización, implicaría que sí está establecido quién tiene preferencia para usar el recurso, y el resultado sería que la persona que ha consultado el estado de los asientos no podría conocerlo hasta que termine el otro hilo de trabajar.

No es un ejemplo real, pero creo que puede servir para entender cómo puede generarse una incosistencia en programación multihilo si no existe sicronización.

Salu2

157
Buenas, por un lado felicitarte porque se ve un código bien trabajado donde se manejan muchos conceptos. Por otro lado, veo que no te has ajustado a lo que pedía el enunciado, sino que has cambiado nombres y hecho cosas que no se pedían sino que has ido más allá. Para quienes tengan interés por profundizar en conceptos, les recomendaría revisar el código. En cambio para quienes simplemente busquen una forma de solucionar el ejercicio les recomendaría que miren en otros hilos del foro, pues esta solución excede a lo que propiamente pedía el ejercicio.

Salu2

158
Buenas LuisM el ejercicio 1 lo he repasado y funciona perfectamente y está bien planteado.

El ejercicio 2 me lanza un warning en compilación indicando Ejercicio2.java uses unchecked or unsafe operations. Recompile with -Xlintunchecked for details. Esto creo que sea debido a alguno de los casting que utilizas. Este ejercicio funciona también perfectamente. Veo un tanto extraño mantener por un lado los datos en un array tradicional y por otro usar un ArrayList para ordenar los datos. Creo que sería más "limpio" o bien trabajarlo todo en forma de ArrayList o bien usar una ordenación de arrays implementada manualmente. Pero eso no era el objetivo del ejercicio (cuyo objetivo era trabajar los aleatorios) así que todo bien.

Salu2

159
Buenas LuisM, el programa cumple con lo que se pedía y parece muy bien planteado el anidamiento de bucles con un código bien compacto. Lo único que no veo del todo limpio es int numeroOculto = (int)(rnd.nextDouble() * (finalRango-inicioRango) + inicioRango); ya que hacer un casting de double a int creo que no sería necesario, pudiendo directamente trabajar con enteros. De todas formas esto no es demasiado relevante aquí.

Salu2

160
Buenas, aparentemente el error puede deberse a que estás tratando de insertar o actualizar una fila de una tabla basándote en un id de otra tabla que no existe, aunque no veo claro cuál es la forma de trabajo del procedimiento

Salu2

Páginas: 1 ... 3 4 5 6 7 [8] 9 10 11 12 13 ... 91
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".