javalla pitäs tehdä tämmönen. Ohjelmassa on määritelty bensiinin kulutus(litraa/100km) sekä bensab litrahinta. Laske ajetulla matkalla kuluva bensab määrä sekä bensan hinta.
Jotta mitäkä kirjottelen jii edittiin, jotta se tulostaa sen sitten oikein? kertokaa!
Jotta mitäkä kirjottelen jii edittiin, jotta se tulostaa sen sitten oikein? kertokaa!
Vastaukset 8
Vanhimmat
Tuo onnistuu ihan tavallisilla kerto-
ja jakolaskuilla. Mitä kohtaa et ymmärrä?
Ei tuo matikka tee mitään, mutta en osaa niitä int double ym ym... siis en osaa tehdä niitä lausekkeita ja semmosia. Just alotin ton opiskelun ja koko homma tuntuu ihan HUH HUH!
Jos tarkoitat tyyppimuunnoksia, niin javassa ne
onnistuu näin:
//esim floatista intiksi
int x;
float y;
y=5.6;
x=(int)y;
Eli suluissa on se tyyppi, jollaiseksi toisen tyypin muuttuja halutaan.
int on kokonaisluku ja float on desimaaliluku.
Jos float_luku on 5.28 ja muutat sen int_luvuksi
int int_luku = (int)floatluku;
Niin tosta desimaaliluvusta tippuu desimaalit veke, eli se ois pelkkä 5.
Esim. auto syö 5 litraa sadalla ja matkaa on 6328km ja bensa maksaa 7.12mk/litra
float litraaPerKm = 5/100; //eli paljon per kilsa
int matkanPituus = 6328;
float kulunutBensa = 0;
float litraHinta = 7.12;
float reissunHinta = 0;
kulunutBensa = matkanPituus * litraaPerKm;
reissunHinta = kulunutBensa * litraHinta;
System.out.println("Löpöä meni: " kulunutBensa " litraa");
System.out.println("Isi joutu maksaan " reissunHinta " rahaa");
.. tein tohon sun koodiin pienen käyttöliittymän aikani kuluksi - Java Rules!
t. Jonttu
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class AdvancedPiru {
public static void main(String args[])
{
JFrame frame = new JFrame("AdvancedPiru");
double litraaPerKm = 5.0/100; //eli paljon per kilsa
int matkanPituus = 6328;
double kulunutBensa = 0;
double litraHinta = 7.12;
double reissunHinta = 0;
kulunutBensa = matkanPituus * litraaPerKm * 100;
kulunutBensa = Math.round(kulunutBensa) / 100.0;
reissunHinta = kulunutBensa * litraHinta * 100;
reissunHinta = Math.round(reissunHinta) / 100.0;
String result = new String("Löpöä meni: " kulunutBensa " litraa.
");
result = result "Isi joutu maksaan " reissunHinta " rahaa";
frame.addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
});
frame.getContentPane().setLayout(null);
Insets insets = frame.getContentPane().getInsets();
JButton button = new JButton("Show Eget");
button.setBounds(90 insets.left, insets.top 50, 100, 25);
button.addActionListener(new txtBox(new String("Tulos:"), result, frame));
frame.getContentPane().add(button);
frame.setSize(300, 200);
frame.setVisible(true);
}
}
class txtBox implements ActionListener
{
String title;
String prompt;
Component c;
public txtBox (String title, String prompt, Component c)
{
this.title = title;
this.prompt = prompt;
this.c = c;
}
public void actionPerformed(ActionEvent e)
{
int btns = JOptionPane.DEFAULT_OPTION;
JOptionPane.showMessageDialog(c, prompt, title, btns);
}
}
Toi sun esimerkki ei muuten toimi tuossa muodossa suoraan, koska noi luvut on "hardkoodattu" kokonaislukumuotoon, jolloin esim. tosta 5/100 jakolaskusta tulee vastaukseksi 0. Eli, numerot pitää muuttaa muotoon 5.0/100, jotta jakolasku tehdään ns. desimaalilaskuna. Tällöin on kuitenkin huomattava muuttaa float double:ksi, jotta käännös onnistuu.
Tää kommentti ihan vaan sitä varten, että noi aloittelijat ei turhaan hakkaisi päätä seinään yrittäessään saada tätä ns. periaatetason esimerkkiä toimimaan.
-Jonttu-
Epäilen että sinulla on java kirja jossa oli tämmöinen harjoitus. Ainakin minun kirjassa on juuri tuommoinen harjoitus. En nyt juuri jaksa antaa ohjeita, sillä olen etsimässä ajureita näytönohjaimeeni. Vastaisitko, onko sulla se kirja?
Joo, on java kirjassa toi tehtävä.