Definir un metodo

Maria Ines
24 de Septiembre del 2003
estoy calculando la hipotenusa de un triangulo, y tengo lo siguiente:
public class Hipotenusa{
public static void main(String[] args) {
System.out.println("introduce el primer cateto: ");
double Cateto1 = cateto1();
System.out.println("introduce el segundo cateto: ");
double Cateto2 = cateto2();
double Hipotenusa = Math.sqrt(Cateto1*Cateto1+Cateto2*Cateto2);
System.out.println("la hiponusa mide: " + Hipotenusa);

Hay un problema con mis catetos como los declaro para que lo reconozca. gracias por la ayuda.
Maria ines

Mario Lavarreda
24 de Septiembre del 2003
import java.io.*;
public class Hipotenusa{
public static void main(String[] args) throws IOException
{
BufferedReader r = new BufferedReader(new InputStreamReader(System.in));
System.out.println("introduce el primer cateto: ");
double Cateto1 = r.readLine();
System.out.println("introduce el segundo cateto: ");
double Cateto2 = r.readLine();
double Hipotenusa = Math.sqrt(Cateto1*Cateto1+Cateto2*Cateto2);
System.out.println("la hiponusa mide: " + Hipotenusa);

}
}

Maria Ines
24 de Septiembre del 2003
Gracias Mario, en esta linea:
double Cateto1 = r.readLine(); y para cateto2 me dice que no puedo convertir de string a double...

chuidiang
24 de Septiembre del 2003
Tienes dos opciones.

1) En vez de en cateto1, mete r.readLine() en un String. Luego convierte el String a double utilizando la funcion cateto1 = Double.valueOf (String)

2) En vez de un BufferedStream, crea un DataInputStream. Este tiene el metodo readDouble(), con lo que lo puedes asignar directamente al cateto1.

Se buena.