Ayuda con ejercicio de programación en java.

Pues a ver, nos han mandado crear un programa que determine si las longitudes de 3 segmentos permiten formar un triángulo rectángulo. Y esto es lo que he puesto:

import java.util.Scanner;

class EsRectangulo
{

public static void main (String arg[]) {

int a, b, c;
Scanner kbd= new Scanner (System.in);
System.out.println("Introduzca 3 numeros enteros:");
a= kbd.nextInt();
b= kbd.nextInt();
c= kbd.nextInt();
// imprime true si a, b y c pueden formar un triangulo rectángulo
boolean ahipotenusa = Math.pow(a,2) == Math.pow(b,2) + Math.pow(c,2);
boolean bhipotenusa = Math.pow(b,2) == Math.pow(a,2) + Math.pow(c,2);
boolean chipotenusa = Math.pow(c,2) == Math.pow(a,2) + Math.pow(b,2);
System.out.println (ahipotenusa || bhipotenusa || chipotenusa);

}

}
pues bien, a la hora de compilarlo (estoy usando javac, desde ms-dos), me da 3 errores:

Imagen

¿Sabéis que es lo que está mal? es que no entiendo que quiere decir con eso de que no puede resolver el símbolo...

gracias
Ni puta idea de java... pero tiene pinta de que está mal escrita o esa función no existe... revisalo
A mí, cogiéndolo tal cual, me compila y ejecuta correctamente.

java version "1.6.0_01"
Java(TM) SE Runtime Environment (build 1.6.0_01-b06)
Java HotSpot(TM) Client VM (build 1.6.0_01-b06, mixed mode, sharing)
Echale un ojo a la API y si no lo solucionas, me mandas un MP y miramos de solucionarlo.

Aqui la API: http://java.sun.com/j2se/1.5.0/docs/api/

Saludos.

P.D: Soy programador Java. ;)

EDITO: A mi me ha compilado perfectamente. Igual es tu versión de Java.
Yo de tí me bajaría el JCreator, es un programa muy sencillo, pero es más manejable que la ventana de comandos.

Yo creo que el código está bien.

Saludos.
pues debe ser la versión de mi java. Hay algún paquete de java que contenga el compilador y esté actualizado? es que en la página de java sun me salen muchas versiones.
Bajate el Eclipse de http://www.eclipse.org.

Mañana te respondo a tu pregunta por MP. Que ahora no estoy lucido xD
ok, pero el programa está bien, ¿no?

Es que lo tengo que entregar mañana, a vosotros no os da error verdad?

gracias [ok]
Eso tiene pinta que tu versión de JDK no es la más actual y no incluye la clase Scanner (que yo por cierto es la primera vez que la veo y llevo la tira de años programando en este lenguaje), seguramente la habrán incluido en la J2SE 6.0

¿Lo has programado a pelo o con algún entorno de desarrollo? Yo en lugar de Eclipse, te recomiendo Lomboz que es lo mismo pero con muchos plugins ya incluidos para hacer casi de todo.

Ya nos cuentas, saludos!
El problema parece ser tal y como te han indicado en que tu JDK no encuentra el paquete.

He buscado en la API e indica:

http://java.sun.com/j2se/1.5.0/docs/api/java/util/Scanner.html

Since: 1.5

Por lo tanto si tienes una version mas antigua de la JDK no le va a ser posible compilarlo.

Te recomiendo que ejecutes en la linea de comando lo siguiente:
javac -J-version

y veas a que version de la JDK estas utilizando.

Si no es la correcta, tendras que descargarte una mas reciente y modificar la variable %JAVA_HOME%

Salu2
danitxu escribió:Te recomiendo que ejecutes en la linea de comando lo siguiente: javac -J-version

Salu2


Con java -version también aparece [oki]
Smoje escribió:
Con java -version también aparece [oki]


Pero asi ves la version de la runtime, no la del compilador :)
ok gracias a todos, ya conseguí solucionarlo, era la versión de JDK. Me bajé la 6 update 3, y ya tira bien.

saludos
12 respuestas