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

Páginas: [1]
1
Muchas gracias,  todo que súper claro y aveces los docentes no especifican muy bien el enunciado. Que Pro Kabuto 🧙‍♂️

2
Hola a todos, me han puesto el siguiente ejercicio y agradecería ayuda.

Realizar un aplicativo por medio de GUI para la liquidación de nómina para estos 3 empleados (deben usar ArrayList):

Código   Nombre   Salario Base
123   Juan Camilo Pérez   $950.000
124   Lina Maria Mejía   $2.125.000
125   Carlos Antonio Ruíz   $1.750.000

La interfaz gráfica debe ser la siguiente:
 

Funcionamiento:
•   El usuario digita el código del empleado e inmediatamente debe mostrar el nombre del empleado en el label que aparece con el símbolo (?), en caso que no exista el empleado, debe aparecer el mensaje No Existe el empleado. De igual forma debe aparecer el salario base de dicho empleado en el label con el número (0) y mostrar a cuánto equivale el auxilio de transporte en el respectivo label.
Recuerde que un empleado recibe auxilio de transporte si gana menos de 2 salarios mínimos. (Consultar a cuanto equivale el salario mínimo y el auxilio de transporte). En un botón buscar.
•   Se debe mostrar el valor que le hacen de deducción en salud y en pensión.
•   Al presionar el botón CALCULAR auxilio de transporte, el valor de las deducciones y el total a pagarle al empleado.



Código: [Seleccionar]
public class LiquidacionNomina extends javax.swing.JFrame {

   
    public LiquidacionNomina() {
        initComponents();
    }

   
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">                         
    private void initComponents() {

        pnlPrincipal = new javax.swing.JPanel();
        jLabel1 = new javax.swing.JLabel();
        jLabel2 = new javax.swing.JLabel();
        jButton1 = new javax.swing.JButton();
        jLabel3 = new javax.swing.JLabel();
        jLabel4 = new javax.swing.JLabel();
        jLabel5 = new javax.swing.JLabel();
        jPanel1 = new javax.swing.JPanel();
        jLabel8 = new javax.swing.JLabel();
        jLabel9 = new javax.swing.JLabel();
        jLabel10 = new javax.swing.JLabel();
        jLabel11 = new javax.swing.JLabel();
        jLabel12 = new javax.swing.JLabel();
        jLabel13 = new javax.swing.JLabel();
        jLabel14 = new javax.swing.JLabel();
        jLabel15 = new javax.swing.JLabel();
        jButton2 = new javax.swing.JButton();
        jScrollPane2 = new javax.swing.JScrollPane();
        jTextPane2 = new javax.swing.JTextPane();
        jSeparator1 = new javax.swing.JSeparator();
        jLabel6 = new javax.swing.JLabel();
        jLabel7 = new javax.swing.JLabel();

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

        pnlPrincipal.setBackground(new java.awt.Color(102, 204, 255));
        pnlPrincipal.setCursor(new java.awt.Cursor(java.awt.Cursor.DEFAULT_CURSOR));

        jLabel1.setFont(new java.awt.Font("Times New Roman", 0, 24)); // NOI18N
        jLabel1.setText("Liquidación de Nómina");

        jLabel2.setFont(new java.awt.Font("Times New Roman", 0, 18)); // NOI18N
        jLabel2.setText("Código del Empleado");

        jButton1.setText("Buscar");
        jButton1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton1ActionPerformed(evt);
            }
        });

        jLabel3.setFont(new java.awt.Font("Times New Roman", 0, 18)); // NOI18N
        jLabel3.setText("Nombre del Empleado:");

        jLabel4.setFont(new java.awt.Font("Times New Roman", 0, 18)); // NOI18N
        jLabel4.setText("Salario Base:");

        jLabel5.setFont(new java.awt.Font("Times New Roman", 0, 18)); // NOI18N
        jLabel5.setText("Detalle Nómina:");

        jPanel1.setBackground(new java.awt.Color(255, 255, 255));

        jLabel8.setFont(new java.awt.Font("Times New Roman", 0, 14)); // NOI18N
        jLabel8.setText("Auxilio de Transporte:");

        jLabel9.setFont(new java.awt.Font("Times New Roman", 0, 14)); // NOI18N
        jLabel9.setText("Deducción Salud (4%):");

        jLabel10.setFont(new java.awt.Font("Times New Roman", 0, 14)); // NOI18N
        jLabel10.setText("Deducción Pensión (4%):");

        jLabel11.setFont(new java.awt.Font("Times New Roman", 0, 16)); // NOI18N
        jLabel11.setText("Salario a Pagar:");

        jLabel12.setFont(new java.awt.Font("Times New Roman", 0, 12)); // NOI18N
        jLabel12.setText("0");

        jLabel13.setFont(new java.awt.Font("Times New Roman", 0, 12)); // NOI18N
        jLabel13.setText("0");

        jLabel14.setFont(new java.awt.Font("Times New Roman", 0, 12)); // NOI18N
        jLabel14.setText("0");

        jLabel15.setFont(new java.awt.Font("Times New Roman", 0, 12)); // NOI18N
        jLabel15.setText("0");

        javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
        jPanel1.setLayout(jPanel1Layout);
        jPanel1Layout.setHorizontalGroup(
            jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel1Layout.createSequentialGroup()
                .addContainerGap()
                .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                    .addComponent(jLabel11)
                    .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                        .addComponent(jLabel8)
                        .addComponent(jLabel9)
                        .addComponent(jLabel10)))
                .addGap(18, 18, 18)
                .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(jLabel12)
                    .addComponent(jLabel13)
                    .addComponent(jLabel14)
                    .addComponent(jLabel15))
                .addContainerGap(389, Short.MAX_VALUE))
        );
        jPanel1Layout.setVerticalGroup(
            jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel1Layout.createSequentialGroup()
                .addContainerGap()
                .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jLabel8)
                    .addComponent(jLabel12))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jLabel9)
                    .addComponent(jLabel13))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jLabel10)
                    .addComponent(jLabel14))
                .addGap(18, 18, 18)
                .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jLabel11)
                    .addComponent(jLabel15))
                .addContainerGap(17, Short.MAX_VALUE))
        );

        jButton2.setText("Calcular Nómina");

        jScrollPane2.setViewportView(jTextPane2);

        jSeparator1.setForeground(new java.awt.Color(255, 255, 255));
        jSeparator1.setAlignmentX(1.0F);
        jSeparator1.setAlignmentY(1.0F);

        jLabel6.setFont(new java.awt.Font("Times New Roman", 0, 14)); // NOI18N
        jLabel6.setText("?");

        jLabel7.setFont(new java.awt.Font("Times New Roman", 0, 14)); // NOI18N
        jLabel7.setText("0");

        javax.swing.GroupLayout pnlPrincipalLayout = new javax.swing.GroupLayout(pnlPrincipal);
        pnlPrincipal.setLayout(pnlPrincipalLayout);
        pnlPrincipalLayout.setHorizontalGroup(
            pnlPrincipalLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(pnlPrincipalLayout.createSequentialGroup()
                .addGroup(pnlPrincipalLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(pnlPrincipalLayout.createSequentialGroup()
                        .addGap(53, 53, 53)
                        .addGroup(pnlPrincipalLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(jLabel5)
                            .addGroup(pnlPrincipalLayout.createSequentialGroup()
                                .addComponent(jLabel4)
                                .addGap(18, 18, 18)
                                .addComponent(jLabel7))
                            .addGroup(pnlPrincipalLayout.createSequentialGroup()
                                .addComponent(jLabel3)
                                .addGap(18, 18, 18)
                                .addComponent(jLabel6))
                            .addGroup(pnlPrincipalLayout.createSequentialGroup()
                                .addComponent(jLabel2)
                                .addGap(29, 29, 29)
                                .addComponent(jScrollPane2, javax.swing.GroupLayout.PREFERRED_SIZE, 112, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addGap(30, 30, 30)
                                .addComponent(jButton1))
                            .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))
                    .addGroup(pnlPrincipalLayout.createSequentialGroup()
                        .addGap(93, 93, 93)
                        .addComponent(jSeparator1, javax.swing.GroupLayout.PREFERRED_SIZE, 493, javax.swing.GroupLayout.PREFERRED_SIZE)))
                .addContainerGap(57, Short.MAX_VALUE))
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, pnlPrincipalLayout.createSequentialGroup()
                .addGap(0, 0, Short.MAX_VALUE)
                .addGroup(pnlPrincipalLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, pnlPrincipalLayout.createSequentialGroup()
                        .addComponent(jLabel1)
                        .addGap(210, 210, 210))
                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, pnlPrincipalLayout.createSequentialGroup()
                        .addComponent(jButton2)
                        .addGap(271, 271, 271))))
        );
        pnlPrincipalLayout.setVerticalGroup(
            pnlPrincipalLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(pnlPrincipalLayout.createSequentialGroup()
                .addGap(25, 25, 25)
                .addComponent(jLabel1)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(jSeparator1, javax.swing.GroupLayout.PREFERRED_SIZE, 33, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(pnlPrincipalLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                    .addComponent(jScrollPane2)
                    .addComponent(jLabel2)
                    .addComponent(jButton1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                .addGap(25, 25, 25)
                .addGroup(pnlPrincipalLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jLabel3)
                    .addComponent(jLabel6))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(pnlPrincipalLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jLabel4)
                    .addComponent(jLabel7))
                .addGap(46, 46, 46)
                .addComponent(jLabel5)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(jButton2)
                .addContainerGap(19, Short.MAX_VALUE))
        );

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(pnlPrincipal, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(pnlPrincipal, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
        );

        pack();
    }// </editor-fold>                       

    private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                         
       
    }                                       

   
    public static void main(String args[]) {
       
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                new LiquidacionNomina().setVisible(true);
            }
        });
    }

    // Variables declaration - do not modify                     
    private javax.swing.JButton jButton1;
    private javax.swing.JButton jButton2;
    private javax.swing.JLabel jLabel1;
    private javax.swing.JLabel jLabel10;
    private javax.swing.JLabel jLabel11;
    private javax.swing.JLabel jLabel12;
    private javax.swing.JLabel jLabel13;
    private javax.swing.JLabel jLabel14;
    private javax.swing.JLabel jLabel15;
    private javax.swing.JLabel jLabel2;
    private javax.swing.JLabel jLabel3;
    private javax.swing.JLabel jLabel4;
    private javax.swing.JLabel jLabel5;
    private javax.swing.JLabel jLabel6;
    private javax.swing.JLabel jLabel7;
    private javax.swing.JLabel jLabel8;
    private javax.swing.JLabel jLabel9;
    private javax.swing.JPanel jPanel1;
    private javax.swing.JScrollPane jScrollPane2;
    private javax.swing.JSeparator jSeparator1;
    private javax.swing.JTextPane jTextPane2;
    private javax.swing.JPanel pnlPrincipal;
    // End of variables declaration                   
}

3
Hola, necesitaría ayuda para resolver este ejercicio.

Ejercicio

Hacer un programa por consola Java que permita gestionar las compras hechas por unos clientes mediante el uso de la clase ArrayList o clase Vector. El programa debe permitir almacenar los nombres de los clientes de un almacén y el valor de las compras hechos por los mismos, dicha información la deben almacenar en dos ArrayList o Vector.
Mediante un menú de opciones realizar lo siguiente:

1.   Registrar los clientes y sus compras.
2.   Mostrar el listado de los clientes y las compras hechas.
3.   Buscar un cliente dado su nombre y mostrar el valor de la compra hecha.
4.   Eliminar un cliente dado su nombre.


4
Hola, estoy intentando resolver el ejercicio y necesitaría ayuda.

Ejercicio interfaces Java

Se desea hacer un programa para realizar ciertas operaciones sobre unos materiales educativos (libros), los cuales son comercializados por una librería y/o utilizados en una biblioteca. Para ello se requiere controlar las siguientes acciones:

· Transaccion(): Esta se encargará, según el tipo de negocio, de vender un libro a un cliente (en caso de la librería) o realizar un préstamo a un usuario (en caso de la biblioteca).

· Cambios(): Se encargará, según el tipo de negocio, de realizar un cambio (en caso de una librería) o de hacer la devolución del libro (en caso de ser la biblioteca). Se debe informar la fecha del cambio y el nombre del nuevo libro por el que fue cambiado. Y mostrar la fecha de la devolución del libro.

Tenga en cuenta que cada material debe llevar un ISBN (Código), nombre, autor, precio de compra (En caso de la librería), días de préstamo y valor de la multa (en caso de la biblioteca). Las clases deben llevar sus respectivos constructores, métodos get y set y los métodos adicionales.

Por último, debe contar con un programa principal en el cual se pueda realizar ya sea una venta de un material (para una librería) y un préstamo de material (para una biblioteca)

Código: [Seleccionar]
public class Material {
 
private String isbn;
private String nombre;
private String autor;
 
public Material(String isbn, String nombre, String autor) {
this.isbn = isbn;
this.nombre = nombre;
this.autor = autor;
}
 
public String getIsbn() {
return isbn;
}
 
public void setIsbn(String isbn) {
this.isbn = isbn;
}
 
public String getNombre() {
return nombre;
}
 
public void setNombre(String nombre) {
this.nombre = nombre;
}
 
public String getAutor() {
return autor;
}
 
public void setAutor(String autor) {
this.autor = autor;
}
 
}

5
1. Si tenemos una capacidad de memoria física de 2048MB(2GB) y un tamaño de página de 256MB. ¿cuántos marcos de memoria se tendría?

2. Si tenemos una capacidad de memoria de 1024MB y un tamaño de página de 64MB y se requieren cargar los siguientes procesos:

P1= 256MB

P2=512MB

P3=512MB

¿Qué proceso llevaría a cabo en el sistema operativo en el caso anterior?, es decir, es necesario que se describa como se haría la asignación de los marcos requeridos por cada proceso y que sucedería con cada proceso.

3. De acuerdo con lo planteado por el algoritmo del peor ajuste y teniendo en cuenta que la memoria está dividida en segmentos de 100MB, ¿qué sucedería en el escenario mostrado en Ilustración 1: Procesos cargados en Memoria RAM, si se acaban de crear los siguientes procesos y ninguno de los procesos actuales es retirado de memoria, ni se está utilizando memoria virtual?

Procesos nuevos

P3= 256MB

P4=512MB

P5=200MB

P1

H1

H2

P2

H3

H4

H5

Ilustración 1: Procesos cargados en Memoria RAM

Nota: Se debe representar la respuesta de forma gráfica (como se muestra en Ilustración 1: Procesos cargados en Memoria RAM) e indicar lo que sucede con los nuevos procesos.

4. Para el siguiente escenario asuma que la antigüedad del proceso está dada por su nombre (P1 es el más antiguo y P10 el más reciente) de acuerdo con la siguiente representación gráfica y con base en lo definido por el algoritmo FIFO. ¿qué sucedería al crearse un proceso P10 y P11? , represente gráficamente su respuesta.

P1

P2

P4

P5

P7

P8

P9

6
Le agrego eso a la Clasde Producto, y como hago la clase principal me puede ayudar, no se como

7
Saludos a todos, necesitaría ayuda para resolver el siguiente ejercicio.

Ejercicio Java

Desarrollar un programa por consola Java que permita la gestión de una empresa que comercializa tres tipos de productos: frescos, refrigerados y congelados.

Todos los productos llevan esta información común: Código, nombre del producto, precio, fecha de caducidad y número de lote. A su vez, cada tipo de producto lleva alguna información específica.

• Los productos frescos deben llevar la fecha de envasado y el país de origen.

• Los productos refrigerados deben llevar el código la empresa que controla su registro de supervisión.

• Los productos congelados deben llevar la temperatura de congelación recomendada.

El programa debe ser implementado usando herencia desde la superclase Producto hasta las subclases ProductoFresco, ProductoRefrigerado y ProductoCongelado. Cada clase debe disponer de constructores y métodos get y set. Así mismo, debe haber un método para mostrar la información de cada producto y un método para calcular el valor a pagar por la compra hecha de cada producto. Desde el programa principal se debe pedir al usuario la información pertinente (la que usted considere) para que el programa de venta de productos pueda funcionar.


Super Clase Producto

Código: [Seleccionar]

public class Producto {
   
    private String FechaCaduc;
    private String NumLote;

    public Producto() {
        super();
    }

    public Producto(String FechaCaduc, String NumLote) {
        this.FechaCaduc = FechaCaduc;
        this.NumLote = NumLote;
    }

    public String getFechaCaduc() {
        return FechaCaduc;
    }

    public String getNumLote() {
        return NumLote;
    }

    public void setFechaCaduc(String FechaCaduc) {
        this.FechaCaduc = FechaCaduc;
    }

    public void setNumLote(String NumLote) {
        this.NumLote = NumLote;
    }
   
   public void imprimirInfo(){
        System.out.println("Fecha Caducidad: " + getFechaCaduc() + "\nNumero de Lote: " + getNumLote());
    }

}


ProductosRefrigerados

Código: [Seleccionar]

public class Refrigerados extends Producto {
   
    private String CodigoEmpreRegistroSuper;

    public Refrigerados(String FechaCaduc, String NumLote) {
        super(FechaCaduc, NumLote);
    }

    public Refrigerados(String CodigoEmpreRegistroSuper, String FechaCaduc, String NumLote) {
        super(FechaCaduc, NumLote);
        this.CodigoEmpreRegistroSuper = CodigoEmpreRegistroSuper;
    }

    public String getCodigoEmpreRegistroSuper() {
        return CodigoEmpreRegistroSuper;
    }

    public void setCodigoEmpreRegistroSuper(String CodigoEmpreRegistroSuper) {
        this.CodigoEmpreRegistroSuper = CodigoEmpreRegistroSuper;
    }
   
    public void imprimoDatos(){
        imprimirInfo();
        System.out.println("Codigo de Supervision Alimenticia: "
        + getCodigoEmpreRegistroSuper() + "\n");
    }

}


ProductosFrescos

Código: [Seleccionar]

public class Frescos extends Producto {
   
    private String FechaEnva;
    private String PaisOrige;

    public Frescos() {
    }

    public Frescos(String FechaEnva, String PaisOrige, String FechaCaduc, String NumLote) {
        super(FechaCaduc, NumLote);
        this.FechaEnva = FechaEnva;
        this.PaisOrige = PaisOrige;
    }

    public String getFechaEnva() {
        return FechaEnva;
    }

    public String getPaisOrige() {
        return PaisOrige;
    }

    public void setFechaEnva(String FechaEnva) {
        this.FechaEnva = FechaEnva;
    }

    public void setPaisOrige(String PaisOrige) {
        this.PaisOrige = PaisOrige;
    }
   
    public void imprimoDatos(){
        imprimirInfo();
        System.out.println("Fecha de Envasado del Producto: " + getFechaEnva()
                + "\nPais de Origen: " + getPaisOrige() + "\n");
    }
}



ProductosCongelados

Código: [Seleccionar]
package Producto;


public class Congelados extends Producto {
   
    private double TemperCongeR;

    public Congelados() {
    }

    public Congelados(double TemperCongeR, String FechaCaduc, String NumLote) {
        super(FechaCaduc, NumLote);
        this.TemperCongeR = TemperCongeR;
    }

    public double getTemperCongeR() {
        return TemperCongeR;
    }
   
    public void setTemperCongeR(double TemperCongeR) {
        this.TemperCongeR = TemperCongeR;
    }
   
    public void imprimoDatos(){
        imprimirInfo();
        System.out.println("Temperatura Recomendada: "
        + getTemperCongeR() + "\n");
    }
   
}

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