From 33613a85afc4b1481367fbe92a17ee59c240250b Mon Sep 17 00:00:00 2001 From: Sven Eisenhauer Date: Fri, 10 Nov 2023 15:11:48 +0100 Subject: add new repo --- .../hjp5/examples/Gehaltsberechnung.java | 90 ++++++++++++++++++++++ 1 file changed, 90 insertions(+) create mode 100644 Master/Reference Architectures and Patterns/hjp5/examples/Gehaltsberechnung.java (limited to 'Master/Reference Architectures and Patterns/hjp5/examples/Gehaltsberechnung.java') diff --git a/Master/Reference Architectures and Patterns/hjp5/examples/Gehaltsberechnung.java b/Master/Reference Architectures and Patterns/hjp5/examples/Gehaltsberechnung.java new file mode 100644 index 0000000..71e6d83 --- /dev/null +++ b/Master/Reference Architectures and Patterns/hjp5/examples/Gehaltsberechnung.java @@ -0,0 +1,90 @@ +/* Gehaltsberechnung.java */ + +import java.util.Date; + +abstract class Mitarbeiter +{ + int persnr; + String name; + Date eintritt; + + public Mitarbeiter() + { + } + + public abstract double monatsBrutto(); +} + +class Arbeiter +extends Mitarbeiter +{ + double stundenlohn; + double anzahlstunden; + double ueberstundenzuschlag; + double anzahlueberstunden; + double schichtzulage; + + public double monatsBrutto() + { + return stundenlohn*anzahlstunden+ + ueberstundenzuschlag*anzahlueberstunden+ + schichtzulage; + } +} + +class Angestellter +extends Mitarbeiter +{ + double grundgehalt; + double ortszuschlag; + double zulage; + + public double monatsBrutto() + { + return grundgehalt+ + ortszuschlag+ + zulage; + } +} + +class Manager +extends Mitarbeiter +{ + double fixgehalt; + double provision1; + double provision2; + double umsatz1; + double umsatz2; + + public double monatsBrutto() + { + return fixgehalt+ + umsatz1*provision1/100+ + umsatz2*provision2/100; + } +} + +public class Gehaltsberechnung +{ + private static final int ANZ_MA = 100; + private static Mitarbeiter[] ma; + private static double bruttosumme; + + public static void main(String[] args) + { + ma = new Mitarbeiter[ANZ_MA]; + + //Mitarbeiter-Array füllen, z.B. + //ma[0] = new Manager(); + //ma[1] = new Arbeiter(); + //ma[2] = new Angestellter(); + //... + + //Bruttosumme berechnen + bruttosumme = 0.0; + for (int i=0; i