elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Entrar al Canal Oficial Telegram de elhacker.net


  Mostrar Temas
Páginas: 1 2 [3]
21  Programación / Java / Problema con clases en: 24 Noviembre 2011, 16:19 pm
Hola estoy intentando resolver un problema que viene con indicaciones no muy precisas.
Es el siguiente:

Desarrollar clase motor. Esta clase la hice exactamente como se pide, así que no hay problemas:

Código:
import java.io.*;
public class Motor
{
    private int litros, cv;
   
    public Motor(int cv)
    {
        this.cv = cv;
        litros = 0;
    }
   
    public int getLitros()
    {
        return litros;
    }
   
    public int getCv()
    {
        return cv;
    }
   
    public void setLitros(int lt)
    {
        litros = lt;
    }
   
}

La siguiente es la clase Auto, me pide 3 atributos: uno tipo Motor, 2 String (marca y modelo), y un double que es el precio acumulado de las averías.

Y que esta clase tenga además un método que acumule averías (incrementa el importe gastado en baterías).

La clase Auto me quedó así, aunque no estoy seguro sobre el método acumular averías:

Código:
import java.io.*;
public class Auto
{
    private Motor m;
    private String marca, modelo;
    private double precio;
   
    public Auto(String marca, String modelo)
    {
        this.marca = marca;
        this.modelo = modelo;
    }
   
    public Motor getM()
    {
        return m;
    }
   
    public String getMarca()
    {
        return marca;
    }
   
    public String getModelo()
    {
        return modelo;
    }
   
    public double getPrecio()
    {
        return precio;
    }
   
    public void acumularAveria()
    {
        precio++;
    }
}

Y finalmente una clase taller, con 3 atributos: Un string con la avería asociada, y el numero de autos que se ha atendido.

El taller solo puede atender a un auto en cada momento. Se debe controlar esa condición. Como podría hacer eso???

Hay que usar además, un método aceptaAuto que recibe una variable tipo Auto y avería asociada. El taller solo atiende a un auto en cada momento. Si se está atendiendo uno, devuelve false. Por lo que sería un método boolean.

Y además un método devuelveAuto que deja el taller en estado de aceptar un nuevo auto.

Clase taller:

Código:
import java.io.*;
public class Taller
{
    private Auto a;
    private String averia;
    private int numero;
   
    public boolean aceptarAuto(Auto a, String averia)
    {
    }
   
   
}

No comprendo como aplicarlo.

22  Programación / Java / Dudas con clases en: 23 Noviembre 2011, 19:08 pm
Tengo que desarrollar una clase que Profe que tenga un método poneNotas y recibe un parámetro tipo Alumno y este método no devuelve nada. Lo que hace es poner una calificación a cada asignatura del alumno.

Tengo una clase Asignatura:

Código:
public class Asignatura {
    private int ident, cal;
   
    public Asignatura(int int)
    {
       
        this.ident = ident;
    }
   
    public int getIdent()
    {
        return ident;
    }
   
    public int getCal()
    {
        return cal;
    }
   
    public void setIdent(int y)
    {
        cal = y;
    }
   

La clase Alumno:

Código:
public class Alumno {
   
    private Asignatura a1, a2, a3;
   
    public Alumno(Asignatura a1, Asignatura a2, Asignatura a3)
    {
        this.a1 = a1;
        this.a2 = a2;
        this.a3 = a3;
    }
   
    public Alumno(int b1, int b2, int b3)
    {
        a1 = new Asignatura(b1);
        a2 = new Asignatura(b2);
        a3 = new Asignatura(b3);
    }
   
    public Asignatura getA1()
    {
        return a1;
    }
   
    public Asignatura getA2()
    {
        return a2;
    }
   
    public Asignatura getA3()
    {
        return a3;
    }
   
}
   

Clase Profesor:

Código:
public class Profesor {
   
    public void ponerNotas(Alumno a)
    {
        double n1, n2, n3;
       
        n1 = Math.round(Math.random());
        n2 = Math.round(Math.random());
        n3 = Math.round(Math.random());
       
        a = new Alumno(n1,n2,n3);
    }
}

El problema está en que el constructor Alumno(int, int, int) recibe como parámetros el número que identifica a cada asignatura, y no las calificaciones.

O quizás en el constructor de Asignatura(int ident) en realidad sea Asignatura(int cal) (cal = calificación).

Pero el otro détalle es que las notas deben ser tipo double, y no int.

Saludos.

23  Programación / Java / Problema con clase en: 20 Noviembre 2011, 18:44 pm
Hola, resulta que tengo una clase de nombre: Punto. Contiene un método que calcula distancia, pero el problema es que recibe un parámetro de tipo Punto.
Es un problema, porque ahora estoy haciendo una clase gráfica. La clase gráfica tiene un TextField que recibe a la variable tipo Punto, por medio de un evento de botón.

La clase Punto es esta:

Código:
public class Punto {
    private double x, y;
   
    public Punto(double x, double y)
    {
        this.x = x;
        this.y = y;
    }
   
    public Punto()
    {
        this.x = 0.0;
        this.y = 0.0;
    }
   
    public double getX()
    {
        return x;
    }
   
    public double getY()
    {
        return y;
    }
   
    public double calcularDistanciaDesde(Punto p)
    {
        double x1, y1;
        x1 = x - p.getX();
        y1 = y - p.getY();
        return Math.sqrt((x1*x1)+(y1*y1));
    }
   
}

Y el metodo ActionPerformed de la clase gráfica es este:

Código:
public void ActionPerformed(ActionEvent e){
Punto p1 = new Punto();
t1.setText(p1.calcularDistanciaDesde(p1));
}

No entiendo a la perfección la función de una variable tipo Punto. Se que permite llamar a funciones. Pero una vez que la paso como parámetro se supone que no toma un valor numérico.
Me podrían explicar o aclarar un poco?

Gracias.

24  Programación / Programación C/C++ / Problema con lista enlazada en: 8 Julio 2011, 00:35 am
Hola, la verdad es que tengo problemas con la función buscar, probé mil formas pero no me resulta. Espero me puedan ayudar.


Código:
#include<stdio.h>
#include<stdlib.h>
#include<string.h>

typedef struct ElementoLista
{
        int *dato;
        struct ElementoLista *siguiente;
        }Elemento;
       
typedef struct ListaIdentificar
{
        Elemento *inicio;
        Elemento *fin;
        int tam;
        }Lista;
       
void inicializar(Lista *lista);
int insertalistavacia(Lista *lista, int *dato);
int insertalistainicio(Lista *lista, char *dato);
int inserta_final(Lista *lista, char *dato, Elemento *actual);
void visualizar(Lista *lista);
int sup_inicio (Lista * lista);
void buscar(Lista *lista, int dato);

int main()
{
    Lista lista;
    Elemento actual;
    inicializar(&lista);
    int d = 2;
    insertalistavacia(&lista, &d);
    buscar(&lista, d);
     
    visualizar(&lista);
    system("pause");
    return 0;
}

void inicializar(Lista *lista)
{
     lista->inicio=NULL;
     lista->fin=NULL;
     int tam=0;
}

int insertalistavacia(Lista *lista, int *dato)
{
    Elemento *nuevo_elemento;
    if((nuevo_elemento=(Elemento *)malloc(sizeof(Elemento)))==NULL)
    return -1;
    if((nuevo_elemento->dato=(int *)malloc(50*sizeof(int)))==NULL)
    return -1;
    nuevo_elemento->dato=dato;
    nuevo_elemento->siguiente=NULL;
    lista->inicio=nuevo_elemento;
    lista->fin=nuevo_elemento;
    lista->tam++;
    return 0;
}

int insertalistainicio(Lista *lista, int *dato)
{
     Elemento *nuevo_elemento;
     if((nuevo_elemento=(Elemento *)malloc(sizeof(Elemento)))==NULL)
     return -1;
     if((nuevo_elemento->dato=(int *)malloc(50*sizeof(int)))==NULL)
     return -1;
     nuevo_elemento->dato=dato;
     nuevo_elemento->siguiente=lista->inicio;
     lista->inicio=nuevo_elemento;
     lista->tam++;
     return 0;
}
   
int inserta_final(Lista *lista, int *dato, Elemento *actual)
{
    Elemento *nuevo_elemento;
    if((nuevo_elemento = (Elemento *)malloc(sizeof(Elemento)))==NULL)
    return -1;
    if((nuevo_elemento->dato = (int *)malloc(50*sizeof(int)))==NULL)
    return -1;
    nuevo_elemento->dato=dato;
    actual->siguiente = nuevo_elemento;
    nuevo_elemento->siguiente=NULL;
    lista->fin = nuevo_elemento;
    lista->tam++;
    return 0;
}

int sup_inicio (Lista *lista)
{
  if (lista->tam == 0)
    return -1;
  Elemento *sup_elemento;
  sup_elemento = lista->inicio;
  lista->inicio = lista->inicio->siguiente;
  if (lista->tam == 1)
    lista->fin = NULL;
  free (sup_elemento->dato);
  free (sup_elemento);
  lista->tam--;
  return 0;
}

void buscar(Lista *lista, int dato)
{
     
     Elemento *actual;
     actual = lista->inicio;
     
     while(actual!=NULL)
     {
         if(dato==actual)
         {
             sup_inicio (&lista);
         }
         else
         {
             actual = actual->siguiente;
         }
     }
}

void visualizar(Lista *lista)
{
     Elemento *actual;
     actual = lista->inicio;
     while(actual!=NULL)
     {
        printf("%s\n", actual->dato);
        actual = actual->siguiente;
     }
}   
                                         

25  Programación / Programación C/C++ / Método Burbuja en: 1 Mayo 2011, 19:18 pm
Hola, estoy tratando de aplicar el método Burbuja en C, pero no lo consigo. Estoy seguro que debe ser algún détalle que me falta.

Código:
#include<stdio.h>
#include<stdlib.h>

int burbuja(int a[], int n);

int main()
{
    int n;
    printf("Ingrese el tamaño del arreglo: \n");
    scanf("%d",&n);
   
    int a[n];
   
   
    printf("Ingrese los elementos al arreglo: \n");
    for(int i=0;i<n;i++)
    {
         scanf("%d",&a[i]);
    }
   
    for(int i=0;i<n;i++)
    {
         a[i] = burbuja(a,n);
         printf("%d\n",a[i]);
    }
   
    system("pause");
    return 0;
}
     
     int burbuja(int a[],int n)
     {
         int aux=0;
         
         for(int i=0;i<n;i++)
         {
            if(a[i]<a[i-1])
            {
               aux = a[i];
               a[i] = a[i-1];
               a[i-1] = aux;
            } 
            return a[i];
         }
         
      }
26  Programación / Java / Juego Gato en: 21 Marzo 2011, 20:30 pm
Hola, quería pedir algunos consejos, estoy tratando de hacer un gato, y aún nose exactamente como hacerlo o que recurso ocupar.
La idea que tengo es poner 9 jTextfield dentro de un Jpanel, y con un botón aparecerá el círculo o la x dentro del cuadro, pero me doy cuenta que no es tan sencillo, ubicarse en el cuadro que uno desee a la hora de jugar.

Así me quedó:



Ojala me puedan brindar ideas sobre como puedo mejorarlo, o que librería usar, etc.

Gracias
27  Programación / Java / Java + Base de datos en: 8 Diciembre 2010, 01:10 am
Hola estoy haciendo un programa de login, que pide usuario y pass, y si los datos ingresados corresponden a los de la tabla, entonces mostrará un mensaje.
El código de conexión lo compilé y no lanzó ningún error, supongo que significa que está correcto. Pero tengo problemas con la clase Consultas, me dice que el problema está acá (dice que no existen los métodos getNombre y getContraseña), algunas partes del código las extraje de otro lado, supuse que eran funciones de alguna librería:

Código:
String sql = "insert into app.LOGIN values ('"+ d.getNombre() +"', '"+ d.getContraseña() +"')";
            st = conn.getConnection().createStatement();

Código Conexión con la bd:

Código:
Conectar:


package base;
import java.sql.*;

public class Conectate {
    Connection conn = null;
    public void Conectate(){
        try{
            Class.forName("conn.mysql.jdbc.Driver");
            conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/datos","lain0x","");
            if(conn!=null)
            {
                System.out.println("conexión lista");

            }
        }
        catch(SQLException e){
            System.out.println(e);
        }
        catch(ClassNotFoundException e){
            System.out.println(e);
        }
    }
    public Connection getconnetion(){
        return conn;
           
        }
    public void desconectar(){
        conn=null;
    }




}



Código Consultar:

Código:
package base;
import javax.swing.JOptionPane;
import java.sql.DriverManager;
import java.sql.Connection;
import java.sql.PreparedStatement.*;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.logging.Level;
import java.util.logging.Logger;
public class Consultas{
   
static Conectate conn;
static Statement st;

public static void Login(Ventana d){
        try {
            conn = new Conectate();
       
            String sql = "insert into app.LOGIN values ('"+ d.getNombre() +"', '"+ d.getContraseña() +"')";
            st = conn.getConnection().createStatement();
            int res = st.executeUpdate(sql);
            System.out.println(res);

if (res == 1) {
                JOptionPane.showMessageDialog(null, "Nombre Valido");
            }
            conn.desconectar();
           
        }catch (SQLException ex) {
            JOptionPane.showMessageDialog(null, ex.getMessage());
        }


}
   
}   

28  Programación / Java / [Java] Error con actionPerformed en: 3 Diciembre 2010, 16:22 pm
Hola, estoy haciendo un programa en Java en que una clase gráfica llama a una clase operaciones por medio de un objeto. El problema es que no se ejecuta correctamente, la verdad no hace nada.

Clase gráfica (No está completa obviamente, sólo la parte en que se origina el error)
La idea en ésta parte es que al presionar un botón se ingrese una cierta cantidad predeterminada, ésta cantidad es un String. El objeto p está declarado antes correctamente.

Código:
private void b1ActionPerformed(java.awt.event.ActionEvent evt) {                                   
        if(evt.getSource()==b1)
            new Operacion();
        {   String n="";
            n = "10000";

            t.setText(p.diezmil(n)+"");
        }
    }   



Clase Operación
El método de ésta clase recibe al String, lo convierte a entero, aplica la fórmula y retorna un número.

Código:
public class Operacion {

    public int diezmil(String valor)
    {
        valor ="";
        int a = Integer.parseInt(valor);
        int bi10;
        bi10 = a/10000;
        a = a%10000;

        return(bi10);
    }
}

Espero puedan ayudarme, gracias.
Páginas: 1 2 [3]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines