Java fundamentals through coding exercises
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 

1.9 KiB

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)
);
}
}