Java-ban hogyan lehet venni egy szám exponenses értékét (x*10^y)?
Igazából androidról van szó, kiíratni szeretném.
A válaszokat előre köszönöm! :)
Kösz, ezt tudom, nem erre gondoltam
Arra gondoltam, hogy egy számnak tudom-e olyna formába hozni, hogy pl. 6000 >> 6 * 10^3, 0.003 >> 3 * 10^-3
ilyenekbe, csak nem jut eszembe, hogy nevezik ezt.
Erre van mód?
Normál alak :) tényleg, köszi :) ja, igen az kellett, reméltem rövidebb :/
Ha ilyen hosszó, akkor csináljak neki külön classt?
vagy oldjam meg valahogy egy ciklussal, ami osztogatja a számot 10-zel, számolja, hányszor osztotta, amíg még több, mint 1, aztán ezt a számot már egy sime "10^" mellé teszem.
illetve, ha kissebb, mint 1, akkor addig fogja szorozni 10-zel, amíg nagyobb nem lesz 1-nél, ugyancsak számolja, hányszor szorozta (hányszor fut le a ciklus), és ezt a számot teszem a "10^" mellé.
és egy if{}else párral döntöm el, melyiket kell csinálni
Ez hogy hangzik?
Ha csak kiíratni szeretnéd, akkor egy formatternél messzebb nem kell menni szerintem:
Az "E"-t meg lecserélheted utána "*10^"-re, és csók.
Elfogadta ezt (mint értékadás):
double eps0 = 8.85E-12;
Viszont ezt nem fogadja el:
double et = Double.valueOf(et_et.getText().toString())E5; //például 5
Helyette ez jó:
double et = Double.valueOf(et_et.getText().toString()) * (10^5);
?
Igen is, meg nem is.
Igen, 1.23e4 azt jelenti hogy 1.23 * 10^4
Nem, Javaban nem a ^ operátorral hatványozunk. Lásd #1-es választ.
Köszönöm a válaszokat! :) összejött :)
a hatványozást a pow() függvénnyel oldottam meg, azaz pow(10, x).
a formázás pedig formatterrel csináltam:
NumberFormat farmatter = new DecimalFormat(0.00E00)
azért néz ki így mert a 1.##E##-től összeomlik a program. azt írja, hogy ezzel a sorral van a baj, de az 1. megoldással működik. (emlékezetből írtam, lehet, rossz)
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
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!