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.
 

2.9 KiB

Tee ohjelma Palkka, joka kysy käyttäjältä bruttopalkan, veroprosentin ja iän. Ohjelma laskee käteen jäävän osuuden palkasta sekä verojen, työttömyysvakuutuksen (1.5%) ja työeläkemaksun. Työeläkemaksu on 53-62 vuotiaalla 8.25% ja muilla 6.75%.

Veron osuus on palkka * veroprosentti / 100.0

Työeläkevakuutusmaksun osuus on palkka * XX, missä XX on joko 0.0825 tai 0.0675 riippuen iästä

Työttömyysvakuutuksen osuus on palkka * 0.015

Käteen jäävä osuus on palkka - vero - työttömyysvakuutus - työeläkevakuutusmaksu

Example output:
Anna palkka: 3000
Anna veroprosentti: 20
Anna ikä: 25
Bruttopalkka 3000
Veron osuus 600,00
Työeläkevakuutusmaksun osuus 202,50
Työttömyysvakuutuksen osuus 45,00
Käteen jää 2152,50

Palkka.java

import java.text.DecimalFormat;
import java.util.Scanner;
import java.util.InputMismatchException;
public class Palkka {
public static void main(String[] args) {
DecimalFormat r2 = new DecimalFormat("0.00");
Scanner syote = new Scanner(System.in);
try {
System.out.print("Anna palkka: ");
double palkka = syote.nextDouble();
if (palkka < 0 || palkka > 100000) {
throw new InputMismatchException();
}
System.out.print("Anna veroprosentti: ");
double veroprosentti = syote.nextDouble();
if (veroprosentti < 0) {
throw new InputMismatchException();
}
System.out.print("Anna ikä: ");
int ika = syote.nextInt();
double tyoelakemaksu = 0;
if (ika < 0 || ika > 120) {
throw new InputMismatchException();
}
if (ika >= 53 && ika <= 62) {
tyoelakemaksu = 0.0825;
} else {
tyoelakemaksu = 0.0675;
}
int bruttopalkka = (int)palkka;
double vero_osuus = palkka * veroprosentti / 100.0;
double tyoelakevakuutusmaksu_osuus = palkka * tyoelakemaksu;
double tyottomyysvakuutus_osuus = palkka * 0.015;
double kulut = vero_osuus + tyoelakevakuutusmaksu_osuus + tyottomyysvakuutus_osuus;
double kateen_jaa_euroina = bruttopalkka - kulut;
System.out.printf(
"Bruttopalkka %s\n" +
"Veron osuus %s\n" +
"Työeläkevakuutusmaksun osuus %s\n" +
"Työttömyysvakuutuksen osuus %s\n" +
"Käteen jää %s",
bruttopalkka,
r2.format(vero_osuus),
r2.format(tyoelakevakuutusmaksu_osuus),
r2.format(tyottomyysvakuutus_osuus),
r2.format(kateen_jaa_euroina)
);
} catch (InputMismatchException e) {
System.err.println("Virheellinen syöte");
System.exit(1);
}
}
}