Diskuze: Jak počítat se zápornými čísly v Javě?
V předchozím kvízu, Online test znalostí Java, jsme si ověřili nabyté zkušenosti z kurzu.
Člen
Zobrazeno 10 zpráv z 10.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Online test znalostí Java, jsme si ověřili nabyté zkušenosti z kurzu.
Zdravím, "Java vie" počítať aj so zápornými číslami, chyba je niekde v tvojom kóde, niečo si iba nedomyslel . Tipujem, že si niekde zamenil + a - .
Správne to je takto:
x Kelvinov je x - 273,15 °C.
Keď si aj tak nebudeš vedieť dať rady, post-ni sem kód kde premienaš K na °C
Teď mě to funguje, ale mám tu další problém: říká mi to, že -273.15°C je -546.30K. S Javou začínám, takže radši pošlu kód.
private void buttonVypocitejCFPressed(java.awt.event.MouseEvent evt) {
String zceho = String.valueOf(comboboxZceho.getSelectedItem());
double VysledekCCF = 0;
double CCF = Double.parseDouble(textfieldC.getText());
System.out.println("Button CF pressed.");
switch (zceho)
{
case "°C -> °F":
labelZCeho.setText("°C");
labelNaCo.setText("°F");
VysledekCCF = 1.8 * CCF + 32;
VysledekCCF = Math.round(VysledekCCF*100)/100.0;
break;
case "°F -> °C":
labelZCeho.setText("°F");
labelNaCo.setText("°C");
VysledekCCF = 0.5555555555555556 * (CCF - 32);
VysledekCCF = Math.round(VysledekCCF*100)/100.0;
break;
case "°C -> K":
labelZCeho.setText("°C");
labelNaCo.setText("K");
VysledekCCF = CCF - 273.15;
VysledekCCF = Math.round(VysledekCCF*100)/100.0;
break;
case "K -> °C":
labelZCeho.setText("K");
labelNaCo.setText("°C");
VysledekCCF = CCF + 273.15;
VysledekCCF = Math.round(VysledekCCF*100)/100.0;
if (VysledekCCF < 0);
{
VysledekCCF = - VysledekCCF;
}
break;
default:
break;
}
labelCFVysledek.setText(String.format("%.2f%n", VysledekCCF));
}
Doufám, že můj kód pochopíte.
Nemali by tie znamienka byť obrátene? Pri prevode z °C na K CCF + 273.15 a z K na °C CCF 2 273.15
Skús si dosadiť napr. 0 ako si už skúšal, uvidíš, že tvoj kód pre 0 °C vráti výsledok -273.15 K, čo je hlúposť
Nemusíš byť expert v Jave aby si ľahko zistil že v tvojom prípade program vykoná tretí case kde máš
VysledekCCF = CCF - 273.15;
a teda skutočne záporné číslo mínus záporné číslo ti dá výsledok ktorý si dostal ako Martin už napísal znamienka by mali byť opačne
No jo jsem pitomec. A nevíte jestli existuje nějaký příkaz na počítaní jaký potřebuji?
Tak je to pomerne jednoduchý úkon, ku ktorému (podobne ako k väčšine fyzikálnych výpočtov) žiadne funkcie / metódy v štandardných knižniciach nenájdeš.
Ak by si ale véééľmi chcel, tu k môjmu vlastnému podivu dal niekto ku
konverzii teploty dokopy celú triedu:
https://courses.cs.washington.edu/…Advisor.java
Díky už mi to fakčí. Stačilo po zobrazení výsledku vynulovat proměnné.
Viem, že ide o nejakú úlohu a nie o vedecký projekt. Ale toto sa mi páči:
Predicts tomorrow's temperature by randomly generating a value within
5 degrees C of the current temperature.
Zobrazeno 10 zpráv z 10.