Kezdőoldal » Számítástechnika » Programozás » Java kezdő kérdés. Miért nem...

Java kezdő kérdés. Miért nem működik így?

Figyelt kérdés
(Forrásfájl az 1. hozzászólásban)
2016. aug. 8. 16:04
1 2
 1/17 A kérdező kommentje:

package elso;

import java.util.Scanner;

public class launcher {


public static void main(String[] args) {

// TODO Auto-generated method stub

masodfoku m = new masodfoku();

Scanner sc = new Scanner(System.in);

System.out.println("a= ");

m.a = sc.nextFloat();

System.out.println("b= ");

m.b = sc.nextFloat();

System.out.println("c= ");

m.c = sc.nextFloat();

float[] er = m.eredmeny();

System.out.println("x1 = " + (float) er[1]);

System.out.println("x2 = " + (float) er[2]);

sc.close();

}

}


és a mosodfokút számoló class:



package elso;


public class masodfoku {

public float a;

public float b;

public float c;

public float gyokalatt;

public float x1;

public float x2;


public float[] eredmeny() {

gyokalatt = (float) Math.sqrt((b*b)-(4*a*c));

x1 = (float) ((-b+gyokalatt)/(2*a));

x2 = (float) ((-b-gyokalatt)/(2*a));

return new float [] {x1,x2};

}

}

2016. aug. 8. 16:06
 2/17 anonim ***** válasza:
Milyen hibát dob ki?
2016. aug. 8. 16:10
Hasznos számodra ez a válasz?
 3/17 anonim ***** válasza:

Egyébként olyan számokat adsz meg aminek van eredménye?

Mert ha random írogatsz be számokat simán lehet, hogy komplex az eredmény

2016. aug. 8. 16:12
Hasznos számodra ez a válasz?
 4/17 A kérdező kommentje:

x1 = NaN

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 2

at elso.launcher.main(launcher.java:20)

2016. aug. 8. 16:13
 5/17 A kérdező kommentje:

Amúgy ez a 20. sor:


System.out.println("x2 = " + (float) er[2]);

2016. aug. 8. 16:15
 6/17 A kérdező kommentje:
ok. egyik részére rájöttem. A tömb első eleme nem 1. hanem 0. Viszont így is NaN -t ad x1 re és x2 re is.
2016. aug. 8. 16:16
 7/17 anonim ***** válasza:
pl a kiíratásnál miért akarod a floatot floatá konvertálni?
2016. aug. 8. 16:17
Hasznos számodra ez a válasz?
 8/17 A kérdező kommentje:

mert a gyökvonásnál nem akarta elfogadni így inkább már mindenhová betettem a float -ra kényszerítést. Viszont most ki Sout -oztam a részeredményeket és gyanús,hogy az itteni gyökvonással van a gond:


gyokalatt = (float) Math.sqrt((b*b)-(4*a*c));

2016. aug. 8. 16:20
 9/17 anonim ***** válasza:
És mik az a,b,c értékek, amit próbálsz?
2016. aug. 8. 17:54
Hasznos számodra ez a válasz?
 10/17 anonim ***** válasza:
Futtasd debug módban, és nézd a változókat, mikor mire vált.
2016. aug. 8. 17:58
Hasznos számodra ez a válasz?
1 2

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!