Java - estoy recien aprendiendo

 
Vista:
sin imagen de perfil

estoy recien aprendiendo

Publicado por marco castro (1 intervención) el 14/10/2018 07:04:08
Hola mi nombre es marco y estoy recien empezando a programar en Java y practicado me paso el siguiente error
alguien me prodria decir en que me estoy equivocando
gracia
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
package ecuacion_2º_grado;
 
/**
 *
 * @author marco
 */
public class Entrada {
 
    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        // TODO code application logic here
        double a,b,c; //coeficiente axa2+bc+c=0
    double x1,x2,d; //soluciones y determinante
    System.out.println("introduzca primer coeficiente(a):");
    a=Entrada.entero();
    System.out.println("introduzca segundo coeficiente(b):");
    b=Entrada.entero();
    System.out.println("introduzca segundo coeficiente(c):");
    c=Entrada.entero();
 
            //calculamos el determinante//
     d=((b*b)-4*a*c);
     if (d<0)
         System.out.println("no existen soluciones reales");
     else{
    System.out.println();
//queda confirmar que se diferente a 0//
//si a=0 nos encontramos una division por cero//
       x1=(-b+Math.sqrt(d)/(2*a));
       x2=(-b-Math.sqrt(d)/(2*a));
       System.out.println("solucion:"+x1);
       System.out.println("solucion:"+x2);
     }
 }
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve
Val: 686
Bronce
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

estoy recien aprendiendo

Publicado por xve (345 intervenciones) el 14/10/2018 20:35:41
Hola Marco, que error te da?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Kabuto
Val: 3.428
Oro
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

estoy recien aprendiendo

Publicado por Kabuto (1381 intervenciones) el 15/10/2018 01:23:09
Esto no tiene sentido:
1
2
System.out.println("introduzca primer coeficiente(a):");
    a=Entrada.entero();

Ahi estas llamando al metodo .entero(), de la clase Entrada, pero lo que pasa es que Entrada es la clase que tú estas escribiendo. Y no tiene ningún metodo llamado .entero() (ya que no lo has escrito)

Tu ahí quieres que el usuario pueda teclear un valor, un número entero en este caso. Para ello necesitas usar un objeto de la clase Scanner.

A ver, para empezar, tu clase, el programa que estás escribiendo, ha de tener un nombre más adecuado a lo que realiza.
Entrada no es un buen nombre, no es descriptivo del propósito del programa.

Mejor algo así:

1
public class Ecuacion2Grado

Luego, antes de pedir datos tienes que crear el objeto Scanner para que el usuario pueda teclear. Para crearlo tienes que ponerle un nombre, por ejemplo, se puede llamar "entrada". Para este objeto si que es buen nombre. Yo suelo llamarlo "teclado", pero esto ya va a gustos.
1
Scanner entrada = new Scanner(System.in);

Fíjate que para que poder usar esta clase, tenemos que "importarla", sino Java no sabrá como utilizarla.
Es posible que tu entorno de desarrollo (IDE) haga el import automáticamente.
Si no lo hace, basta con que lo pongas tu, debajo de la linea donde indicas el package y antes de empezar a escribir la clase principal.

1
2
3
4
5
package ecuacion_2º_grado;
 
import java.util.Scanner;
 
public class Ecuacion2Grado {

Bien, "entrada" ahora es un objeto Scanner. Este objeto tiene varios metodos para pedir datos por teclado. Por ejemplo, el metodo nextInt() que transforma lo tecleado por el usuario, en un numero entero.
1
int num = entrada.nextInt();

Sin embargo, para este ejercicio, puesto que los valores a, b y c que vamos a pedir son datos de tipo double, vamos a preferir usar el metodo nextDouble()
1
2
3
4
5
6
System.out.println("introduzca primer coeficiente(a):");
a=entrada.nextDouble();
System.out.println("introduzca segundo coeficiente(b):");
b=entrada.nextDouble();
System.out.println("introduzca segundo coeficiente(c):");
c=entrada.nextDouble();


Por ultimo, cuando ya hemos terminado de pedir datos y no vamos a usar más el objeto Scanner, es conveniente "cerrarlo".
1
entrada.close();
No es obligatorio, y el programa por lo general funcionará bien. Pero es buena costumbre y además la mayoría de IDE de programacion (Eclipse, NetBeans,...) nos mostrarán un aviso recordándonos la conveniencia de cerrarlo.

Te dejo el programa completo, sin errores de ningun tipo.
Si las operaciones matemáticas son correctas o no, eso ya no lo se..., no es lo mio...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
package ecuacion_2º_grado;
 
import java.util.Scanner;
 
public class Ecuacion2Grado {
 
	/**
	 * @param args the command line arguments
	 */
	public static void main(String[] args) {
 
		Scanner entrada = new Scanner(System.in);
 
		double a,b,c; //coeficiente axa2+bc+c=0
		double x1,x2,d; //soluciones y determinante
		System.out.println("introduzca primer coeficiente(a):");
		a=entrada.nextDouble();
		System.out.println("introduzca segundo coeficiente(b):");
		b=entrada.nextDouble();
		System.out.println("introduzca segundo coeficiente(c):");
		c=entrada.nextDouble();
 
		entrada.close();
 
		//calculamos el determinante//
		d=((b*b)-4*a*c);
		if (d<0)
			System.out.println("no existen soluciones reales");
		else{
			System.out.println();
			//queda confirmar que se diferente a 0//
			//si a=0 nos encontramos una division por cero//
			x1=(-b+Math.sqrt(d)/(2*a));
			x2=(-b-Math.sqrt(d)/(2*a));
			System.out.println("solucion:"+x1);
			System.out.println("solucion:"+x2);
		}
	}
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar