Foro Oficial de Java

meletrepo

Lanero Reconocido
7 Oct 2005
282
gracias roger_padilla ya lo arreglue
 

sirguille

Lanero Novato
1 Ago 2005
84
hola, tengo una problema con este codigo, solo me muestra el mensaje "SOLUCION INDETERMINADA" en ningun caso puedo hacer que el mensaje "solucion imposible" se muestre. debo estar haciendo algo mal pero no se que, estoy usando el jdeveloper.




double a;
double b;
double x;
a=Double.valueOf(txt_a.getText()).doubleValue();
b=Double.valueOf(txt_a.getText()).doubleValue();


if(a!=0)
{
x=-b/a;
}
else
{
if (b!=0)
{
JOptionPane.showMessageDialog(null,"SOLUCION IMPOSIBLE");
}

else
{
JOptionPane.showMessageDialog(null,"SOLUCION INDETERMINADA");
}
}

}
}
 

Oesoto

Director de Comunidad
Miembro del equipo
Lanero VIP
28 Abr 2004
27,072
Parece que esa conversión no está funcionando bien. Lo puede comprobar imprimiendo los valores de las variables en consola luego de que se les asigna el valor de los campos de texto.

Te recomiendo usar el método ParseDouble

public static double parseDouble(String s) throws NumberFormatException

Creo que sería algo como

a=Double.ParseDouble(txt_a.getText());

lo mismo para el resto de variables, haz la prueba.
 

RogerJose

Lanero Reconocido
6 Mar 2005
545
sirguille dijo:
hola, tengo una problema con este codigo, solo me muestra el mensaje "SOLUCION INDETERMINADA" en ningun caso puedo hacer que el mensaje "solucion imposible" se muestre. debo estar haciendo algo mal pero no se que, estoy usando el jdeveloper.




double a;
double b;
double x;
a=Double.valueOf(txt_a.getText()).doubleValue();
b=Double.valueOf(txt_a.getText()).doubleValue();


if(a!=0)
{
x=-b/a;
}
else
{
if (b!=0)
{
JOptionPane.showMessageDialog(null,"SOLUCION IMPOSIBLE");
}

else
{
JOptionPane.showMessageDialog(null,"SOLUCION INDETERMINADA");
}
}

}
}
No deberia haber problemas, el algoritmo esta bien, ademas, si esta utilizando JDK 5 o mayor, puede omitir el metodo "doubleValue()".

Deberia hacer lo que le dijó Oesosto: "imprimir el valor de las variables despues de asignarle los valores".

Si quiere pruebe el algoritmo con valores directos, asi:

PHP:
        a = Double.valueOf(0);
        b = Double.valueOf(1);        
        
        if(a != 0){
            x=-b/a;
        } else if(b != 0){
            System.out.println ("\n SOLUCION IMPOSIBLE");
        } else{
            System.out.println ("\n SOLUCION INDETERMINADA");
        }
-
 

sirguille

Lanero Novato
1 Ago 2005
84
Oesoto dijo:
Parece que esa conversión no está funcionando bien. Lo puede comprobar imprimiendo los valores de las variables en consola luego de que se les asigna el valor de los campos de texto.

Te recomiendo usar el método ParseDouble

public static double parseDouble(String s) throws NumberFormatException

Creo que sería algo como

a=Double.ParseDouble(txt_a.getText());

lo mismo para el resto de variables, haz la prueba.
probe cambiar a=Double.parseDouble(txt_a.getText()); y con el b tambien, y sí funciono.gracias.aunque me quedo la duda que tiene de especial el parsedouble
 

RogerJose

Lanero Reconocido
6 Mar 2005
545
sirguille dijo:
probe cambiar a=Double.parseDouble(txt_a.getText()); y con el b tambien, y sí funciono.gracias.aunque me quedo la duda que tiene de especial el parsedouble
La diferencia radica en que el metodo "parseDouble(String s)" retorna una variable de tipo "double" (primitiva) inicializada con valor del String pasado como parametro, y por su parte el metodo "valueOf (String s)" retorna un objeto de la clase Double que representa el String pasado como argumento. Pero igual desde Java 5 hay conversion automatica entre primitivas y objetos, asi que no debe haber problemas.

Me extraña que a usted le no le haya funcionado con el metodo valueOf(String s), ya que yo mismo probé su codigo con los dos metodos y ambos funcionan correctamente.

-
 

gabrielsimpsons

Lanero Reconocido
1 Dic 2006
247
que mas laneros, una preguntica, alguien sabe como autoajustar el tamanho de un jlabel, mejor dicho, en el momento de crear el label le paso el string para darle el texto pero si el texto es muy largo pues no lo muestra todo y quiero que si lo haga
gracias
 

Danipilze

Lanero Reconocido
12 Feb 2007
272
Alli hay un problema porque a veces algunos metodos como el resize() no se respetan, es decir, que aunque los llames no siempre se ejecutan o no como uno esperaria
 

gabrielsimpsons

Lanero Reconocido
1 Dic 2006
247
Otra preguntica parceros, es que me toca dibujar uno grafo y correr el algoritmo de sink, necesito pintarlos y unirlos habia pensado en un layout circular pero no se como implementarlo, alguien me puede colaborar?
 

SiNdRoM3

Lanero Regular
29 Dic 2006
92
Usa Applet

WhItEPoWeR dijo:
Otra preguntica parceros, es que me toca dibujar uno grafo y correr el algoritmo de sink, necesito pintarlos y unirlos habia pensado en un layout circular pero no se como implementarlo, alguien me puede colaborar?

Pos lo primero que se me viene a la mente y creo que sería una buena alternativa, es que no uses swing para esto de los grafos, se te van a hacer bolas de codigo y quizas no llegues a implementarlo, para dibujar sería mejor que uses Applet, hay vas a poder usar drawLine(), drawCircle(), drawOval(), etc.. que te ayudarian mejor, te lo digo por que me toco dibujar un grafo una vez y lo quize hacer por swing (sigue en la papelera el codigo) pero Applet es una mejor opción, ademas recuerda que el Applet ya hecho lo puedes agregar a un JFrame o a un JPanel si deseas y correrlo en una aplicación comun y silvestre...

PD. Aquí te dejo un link de Funciones Gráficas en Applet's
http://www.sc.ehu.es/sbweb/fisica/cursoJava/applets/grafico/funciones.htm
 

RogerJose

Lanero Reconocido
6 Mar 2005
545
WhItEPoWeR dijo:
que mas laneros, una preguntica, alguien sabe como autoajustar el tamanho de un jlabel, mejor dicho, en el momento de crear el label le paso el string para darle el texto pero si el texto es muy largo pues no lo muestra todo y quiero que si lo haga
gracias
Eso es cuestion de utilizar un controlador de distribucion de componenetes (layout manager) adecuado, por ejemplo podria ver el nuevo layout del paquete swing "javax.swing.GroupLayout".

-
 

checho§ierra

Lanero Reconocido
16 Dic 2006
1,468
hola laneroprogramadores
soy nuevo en java y les cuento que estoy usando el ambiente eclipse 3.2.1 les queria pedir un favor para ver si me facilitaban un curso o un manual en linea de eclipse o de como programar esque estoy un poco perdido y nesesito ayuda
gracias y suerte
 

gabrielsimpsons

Lanero Reconocido
1 Dic 2006
247
mandeme un mp, yo tengo un libro de eclipse que le puede servir

EDIT:
una pergunta, desde la consola como puedo hacer que apenas presione una tecla la capture y no esperar a que presione ENTER?

que pena oesoto, ahora comienzo a editarlos
 

checho§ierra

Lanero Reconocido
16 Dic 2006
1,468
hola javalaneros
nesesito que me hagan un fa y es que me pasaran un vector y una matris cualquiera en java eclipse que la nesesito para un examen mañana..
prometo k++
suerte y porfa ayudenme
 

V3NOM

Lanero Reconocido
12 Jun 2006
7,792
hola javalaneros
nesesito que me hagan un fa y es que me pasaran un vector y una matris cualquiera en java eclipse que la nesesito para un examen mañana..
prometo k++
suerte y porfa ayudenme
No te entiendo... necesitas un vector lleno con cualquier cosa y una matriz llena con cualquier cosa o que??
Especifica mas o menos para poderte ayudar
Salu2:p
 

meletrepo

Lanero Reconocido
7 Oct 2005
282
que tal otra vez yo con mis preguntas tengo el siguiente codigo para imprimirlo en consola me esta funcionando bien el problema es cuando lo hago grafico

public class Controlador extends Thread{

public void run(){
while(true){
SimpleDateFormat x= new SimpleDateFormat("h:mm:ss a");
Date today= new Date();
String resp= new String(x.format(today.getTime()));
if(resp.equals("8:47:30 PM"))
System.out.println("es la otra otra hora");
try {
sleep(700);
}
catch(InterruptedException e) {
return;
}
}
}
}

///////esto es lo que estoy tratando de hacer
public class Window extends javax.swing.JFrame implements Runnable{


public Window() {
initComponents();
}


private void initComponents() {
jScrollPane1 = new javax.swing.JScrollPane();
jTextArea1 = new javax.swing.JTextArea();
jMenuBar1 = new javax.swing.JMenuBar();
jMenu1 = new javax.swing.JMenu();
jMenuItem1 = new javax.swing.JMenuItem();

setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
jTextArea1.setColumns(20);
jTextArea1.setRows(5);
jScrollPane1.setViewportView(jTextArea1);

jMenu1.setText("menu");
jMenuItem1.setText("Item");
jMenuItem1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jMenuItem1ActionPerformed(evt);
}
});

jMenu1.add(jMenuItem1);

jMenuBar1.add(jMenu1);

setJMenuBar(jMenuBar1);

org.jdesktop.layout.GroupLayout layout = new org.jdesktop.layout.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(layout.createSequentialGroup()
.addContainerGap()
.add(jScrollPane1, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 510, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.addContainerGap(19, Short.MAX_VALUE))
);
layout.setVerticalGroup(
layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(org.jdesktop.layout.GroupLayout.TRAILING, layout.createSequentialGroup()
.addContainerGap(12, Short.MAX_VALUE)
.add(jScrollPane1, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 438, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.add(22, 22, 22))
);
pack();
}

private void jMenuItem1ActionPerformed(java.awt.event.ActionEvent evt) {
this.run();
}

public void run(){
while(true){
SimpleDateFormat x= new SimpleDateFormat("h:mm:ss a");
Date today= new Date();
String resp= new String(x.format(today.getTime()));

el problema esta aqui que no puedo poner el metodo sleep(700) entonces se me come toda la maquina
}
}
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new Window().setVisible(true);
}
});
}

}