Tee ohjelma Kilometrikorvaus, joka laskee omalla autolla ajojen kilometrikorvaukset. Ohjelma kysyy ajokilometrejä, kunnes käyttäjä antaa nollan. Tämän jälkeen ohjelma näyttää ajetut kilometrit sekä ajoista maksettavan korvauksen. Korvaus on 0.43 euroa per kilometri.
Example output:
Anna ajetut kilometrit (0 lopettaa): 12
Anna ajetut kilometrit (0 lopettaa): 13
Anna ajetut kilometrit (0 lopettaa): 98
Anna ajetut kilometrit (0 lopettaa): 73
Anna ajetut kilometrit (0 lopettaa): 160
Anna ajetut kilometrit (0 lopettaa): 0
Yhteensä 356 kilometriä
Korvaus on 153,08 euroa
Kilometrikorvaus.java
import java.util.Scanner;
import java.text.DecimalFormat;
import java.util.InputMismatchException;
public class Kilometrikorvaus {
public static void main(String[] args) {
DecimalFormat r2 = new DecimalFormat("0.00");
double korvaus_euroa_km = 0.43, kilometrit = 0;
while (true) {
System.out.print("Anna ajetut kilometrit (0 lopettaa): ");
try {
Scanner syote = new Scanner(System.in);
double syote_kilometrit = syote.nextDouble();
if (syote_kilometrit < 0) {
System.err.println("Kilometri ei voi olla negatiivinen luku. Ohitetaan syöte");
continue;
} else {
kilometrit += syote_kilometrit;
}
if (syote_kilometrit == 0) {
break;
}
} catch (InputMismatchException e) {
System.err.println("Kilometrin täytyy olla luku. Ohitetaan syöte");
}
}
double korvaus_euroa_yht = kilometrit * korvaus_euroa_km;
System.out.printf(
"Yhteensä %s kilometriä\n" + "Korvaus on %s euroa",
(int)kilometrit,
r2.format(korvaus_euroa_yht)
);
}
}