diff --git a/.classpath b/.classpath new file mode 100644 index 0000000..4943bea --- /dev/null +++ b/.classpath @@ -0,0 +1,6 @@ + + + + + + diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..ea03d78 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +/bin/ +/.metadata/ diff --git a/.project b/.project new file mode 100644 index 0000000..60a0ff0 --- /dev/null +++ b/.project @@ -0,0 +1,17 @@ + + + Programmierung2 + + + + + + org.eclipse.jdt.core.javabuilder + + + + + + org.eclipse.jdt.core.javanature + + diff --git a/Programmierung2/src/Übungen/Abrechnung.java b/Programmierung2/src/Übungen/Abrechnung.java new file mode 100644 index 0000000..c7d9033 --- /dev/null +++ b/Programmierung2/src/Übungen/Abrechnung.java @@ -0,0 +1,26 @@ +public abstract class Abrechnung { + private int periode; + private Mitarbeiter mitarbeiter; + + public Abrechnung(int periode, Mitarbeiter m){ + + this.periode = periode; + this.mitarbeiter = m; + } + + public int getPeriode() { + + return this.periode; + } + public Mitarbeiter getMitarbeiter() { + + return this.mitarbeiter; + } + public abstract double getVerdienst(); + + @Override + public String toString() { + return "Periode= " + periode + ", Mitarbeiter= " + mitarbeiter.toString() + ", Verdienst= " + getVerdienst(); + } + +} \ No newline at end of file diff --git a/Programmierung2/src/Übungen/GehaltsAbrechnung.java b/Programmierung2/src/Übungen/GehaltsAbrechnung.java new file mode 100644 index 0000000..04d776e --- /dev/null +++ b/Programmierung2/src/Übungen/GehaltsAbrechnung.java @@ -0,0 +1,15 @@ +public class GehaltsAbrechnung extends Abrechnung { + + private double gehalt; + + public GehaltsAbrechnung(int periode, Mitarbeiter m, double gehalt){ + + super(periode, m); + this.gehalt = gehalt; + } + + @Override + public double getVerdienst() { + return this.gehalt; + } +} diff --git a/Programmierung2/src/Übungen/Lohnabrechnung.java b/Programmierung2/src/Übungen/Lohnabrechnung.java new file mode 100644 index 0000000..e7560f5 --- /dev/null +++ b/Programmierung2/src/Übungen/Lohnabrechnung.java @@ -0,0 +1,17 @@ +public class Lohnabrechnung extends Abrechnung { + + private double stundenLohn; + private double anzahlStunden; + + public Lohnabrechnung(int periode, Mitarbeiter m, double stundenLohn, int anzahlStunden){ + + super(periode, m); + this.stundenLohn = stundenLohn; + this.anzahlStunden = anzahlStunden; + } + + public double getVerdienst(){ + + return stundenLohn * anzahlStunden; + } +} diff --git a/Programmierung2/src/Übungen/Mitarbeiter.java b/Programmierung2/src/Übungen/Mitarbeiter.java new file mode 100644 index 0000000..35a7b06 --- /dev/null +++ b/Programmierung2/src/Übungen/Mitarbeiter.java @@ -0,0 +1,26 @@ +public class Mitarbeiter { + protected int id; + protected String name; + private static int counterID = 0; + + + public Mitarbeiter(){} + + public Mitarbeiter(String name){ + + this.id = ++counterID; + this.name = name; + } + + public String getName(){ + return name; + } + public void setName(String name){ + this.name = name; + } + + @Override + public String toString(){ + return "Name = " + name + ", Id = " + id; + } +} diff --git a/Programmierung2/src/Übungen/Nacnhrichten.java b/Programmierung2/src/Übungen/Nacnhrichten.java new file mode 100644 index 0000000..f4d5c19 --- /dev/null +++ b/Programmierung2/src/Übungen/Nacnhrichten.java @@ -0,0 +1,20 @@ + +import java.util.ArrayList; + +public class Nacnhrichten{ + + + public static ArrayList nachrichtenlists = new ArrayList<>(); + + + + public static void addMessage(String message) { + nachrichtenlists.add(message); + } + + public static void printNachrichtLists() { + for (String nachricht : nachrichtenlists) + System.out.println(nachricht); + } + +} diff --git a/Programmierung2/src/Übungen/PersonalVerwaltung.java b/Programmierung2/src/Übungen/PersonalVerwaltung.java new file mode 100644 index 0000000..648a974 --- /dev/null +++ b/Programmierung2/src/Übungen/PersonalVerwaltung.java @@ -0,0 +1,44 @@ +import java.lang.reflect.Array; +import java.util.ArrayList; + +public class PersonalVerwaltung extends Mitarbeiter { + + ArrayList mitarbeiterList = new ArrayList<>(); + ArrayList AbrechnungenList = new ArrayList<>(); + + public void setAbrechnung(Abrechnung ab){ + this.AbrechnungenList.add(ab); + } + + public ArrayList getAbrechnungs(){ + + return this.AbrechnungenList; + } + + public void removeAbrechnung(Abrechnung ab){ + + if (this.AbrechnungenList.contains(ab)) + this.AbrechnungenList.remove(ab); + else + System.err.println("Abrechnung ist nicht da!"); + } + + + public void setMitarbeiter(Mitarbeiter ma){ + + this.mitarbeiterList.add(ma); + } + public ArrayList getMitarbeiter(){ + + return mitarbeiterList; + } + + public void removeMitarbeiter(Mitarbeiter m1){ + if (this.mitarbeiterList.contains(m1)) + this.mitarbeiterList.remove(m1); + else + System.err.println("Mitarbeiter existiert nicht!");; + } + + +} diff --git a/Programmierung2/src/Übungen/Radio.java b/Programmierung2/src/Übungen/Radio.java new file mode 100644 index 0000000..12cf8bb --- /dev/null +++ b/Programmierung2/src/Übungen/Radio.java @@ -0,0 +1,59 @@ +public class Radio { + boolean eingeschaltet; + int lautstaerker; + double frequenz; + + public Radio(){} + + public Radio(boolean eingeschaltet, int lautstaerker, double frequenz){ + + this.eingeschaltet = eingeschaltet; + this.lautstaerker = lautstaerker; + this.frequenz = frequenz; + } + + public void lauter(){ + if (this.eingeschaltet) + while (lautstaerker <= 10) + lautstaerker++; + else + System.err.println("Das Radio ist aus!"); + + System.out.println("Lautstärke des Radios= "+ lautstaerker); + } + + public void leiser(){ + if (this.eingeschaltet) + while (lautstaerker >= 0) + lautstaerker--; + else + System.out.println("Das Radio ist aus!"); + + System.out.println("Lautstärke des Radios= "+ lautstaerker); + } + + public String an(){ + this.eingeschaltet = true; + return "an"; + } + + public boolean aus(){ + return this.eingeschaltet = false; + } + + public void waehleSender(double frequenz){ + if (frequenz < 85.0 || frequenz > 110.0) + this.frequenz = 99.9; + else + this.frequenz = frequenz; + } + + @Override + public String toString(){ + if (this.eingeschaltet) + return"Radio an: Freq = " + this.frequenz + ", Laut = " + this.lautstaerker; + + return "Radio ist aus!"; + } + +} diff --git a/Programmierung2/src/Übungen/TestMitarbeiter.java b/Programmierung2/src/Übungen/TestMitarbeiter.java new file mode 100644 index 0000000..1cb5e53 --- /dev/null +++ b/Programmierung2/src/Übungen/TestMitarbeiter.java @@ -0,0 +1,19 @@ +public class TestMitarbeiter { + + public static void main(String[] args) { + Mitarbeiter m1 = new Mitarbeiter("obai"); + System.out.println(m1.toString()); + + Mitarbeiter m2 = new Mitarbeiter("Omar"); + + PersonalVerwaltung p1 = new PersonalVerwaltung(); + p1.setMitarbeiter(m1); + p1.setMitarbeiter(m2); + p1.removeMitarbeiter(m1); + System.out.println(p1.getMitarbeiter()); + + GehaltsAbrechnung gh1 = new GehaltsAbrechnung(124, m2, 40); + System.out.println(gh1.toString()); + + } +} diff --git a/Programmierung2/src/Übungen/TestRadio.java b/Programmierung2/src/Übungen/TestRadio.java new file mode 100644 index 0000000..4e5742f --- /dev/null +++ b/Programmierung2/src/Übungen/TestRadio.java @@ -0,0 +1,12 @@ +public class TestRadio { + + public static void main(String[] args) { + Radio r1 = new Radio(true,2,90); + //System.out.println(r1.toString()); + r1.waehleSender(75.0); + // System.out.println(r1.toString()); + r1.aus(); + System.out.println(r1.toString()); + } + +} diff --git a/Programmierung2/src/Übungen/Tic_Tac_Toe.java b/Programmierung2/src/Übungen/Tic_Tac_Toe.java new file mode 100644 index 0000000..6891b27 --- /dev/null +++ b/Programmierung2/src/Übungen/Tic_Tac_Toe.java @@ -0,0 +1,110 @@ +import java.util.Scanner; + +public class Tic_Tac_Toe { + static Scanner scan = new Scanner(System.in); + static String[][] spielField = new String[3][3]; + static final String playerx = "x" ; + static final String playero = "o" ; + + public static void main(String[] args){ + + + printSpielfeld(); + while (true) { + System.out.println("Bitte geben Sie 'x' und neue Position ein: "); + String playerx =scan.nextLine(); + int x = scan.nextInt(); + int y = scan.nextInt(); + while (!checkSet(playerx, x, y)) { + scan.nextLine(); + System.out.println("Falsche Eingabe! Versuchen Sie nochmal: "); + playerx =scan.nextLine(); + x = scan.nextInt(); + y = scan.nextInt(); + if (checkSet(playerx, x, y)) + break; + } + ausgabeSpielFeld(playerx, x, y); + if (checkGewinner(playerx)) { + System.out.println("Spieler X hat gewonnen!"); + break; + } + scan.nextLine(); + + System.out.println("Bitte geben Sie 'O' und neue Position ein: "); + String playero =scan.nextLine(); + x = scan.nextInt(); + y = scan.nextInt(); + while (!checkSet(playero, x, y)) { + scan.nextLine(); + System.out.println("Falsche Eingabe! Versuchen Sie nochmal: "); + playero =scan.nextLine(); + x = scan.nextInt(); + y = scan.nextInt(); + } + ausgabeSpielFeld(playero, x, y); + if (checkGewinner(playero)) { + System.out.println("Spieler O hat gewonnen!"); + break; + } + scan.nextLine(); + } + } + + public static boolean checkSet(String X_O, int x, int y){ + if ( x < 0 || x > 2 || y < 0 || y > 2) + return false; + + if (!(spielField[x][y].equals("-")) ) + return false; + + return true; + } + + public static boolean checkGewinner(String player){ + for(int i = 0 ; i < 3; i++){ + if (spielField[i][0].equals(player) && spielField[i][1].equals(player) && spielField[i][2].equals(player)) + return true; + } + for (int i = 0; i < 3; i++){ + if (spielField[0][i].equals(player) &&spielField[1][i].equals(player) &&spielField[2][i].equals(player)) + return true; + } + if (spielField[0][0].equals(player)&& spielField[1][1].equals(player)&& spielField[2][2].equals(player)) + return true; + + if (spielField[0][2].equals(player)&& spielField[1][1].equals(player)&& spielField[2][0].equals(player)) + return true; + + return false; + } + + public static void ausgabeSpielFeld(String X_O, int x, int y){ + spielField[x][y] = X_O; + for (int i = 0; i < 3; i++){ + for (int j = 0; j < 3; j++){ + System.out.print(spielField[i][j] + "|"); + } + System.out.println(); + } + + + + } + public static void printSpielfeld(){ + for (int i = 0; i < 3; i++){ + for (int j = 0; j < 3; j++){ + if (j == 2){ + spielField[i][j] = "-"; + System.out.print(spielField[i][j]); + }else{ + spielField[i][j] = "-"; + System.out.print(spielField[i][j]); + System.out.print("|"); + } + } + System.out.println(); + } + + } +} diff --git a/Programmierung2/src/Übungen/Whatsapp.java b/Programmierung2/src/Übungen/Whatsapp.java new file mode 100644 index 0000000..f4ed4d2 --- /dev/null +++ b/Programmierung2/src/Übungen/Whatsapp.java @@ -0,0 +1,107 @@ +import java.util.ArrayList; + +public class Whatsapp extends Nacnhrichten { + private String name; + private String teleN; + private String nachricht; + private Whatsapp empf; + private ArrayList speicherContact; + private ArrayList speicherNummern; + + + + public Whatsapp(){} + + public Whatsapp(String name, String teleN) { + this.name = name; + this.teleN = teleN; + this.nachricht = null; + this.empf = null; + this.speicherContact = new ArrayList<>(); + this.speicherNummern = new ArrayList<>(); + + } + + public void sendeNachricht(Whatsapp empf , String nachricht) { + this.empf = empf; + this.empf.setNachricht(nachricht); + nachrichtenlists.add(getSendeNachricht()); + + } + + public void addContact(String name, String teleN){ + if (name != null && teleN != null){ + speicherContact.add(name); + speicherNummern.add(teleN); + } + + + } + + public String searchContact(String name){ + for (int i = 0; i getContact(){ + return this.speicherContact; + } + + public void printContacte(){ + System.out.println("Deine KontaktListe: "); + for (int i = 0; i < speicherContact.size(); i++){ + System.out.println("Name: " + speicherContact.get(i) + ", Telefonnummer: " + speicherNummern.get(i)); + } + + } + + public String getSendeNachricht() { + return this.name + " sendet zu "+ this.empf.name + " : " + this.empf.getNachricht(); + + } + + public void getNachrichten() { + Nacnhrichten.addMessage(this.getSendeNachricht()); + + } + public ArrayList getnachrichtenlists() { + + return nachrichtenlists; + } + + + + + public String getName() { + return name; + } + public void setName(String name) { + this.name = name; + } + public String getTeleN() { + return teleN; + } + public void setTeleN(String teleN) { + this.teleN = teleN; + } + public String getNachricht() { + return nachricht; + } + public void setNachricht(String nachricht) { + this.nachricht = nachricht; + } + + + @Override + public String toString() { + return "Whatsapp [name=" + name + ", teleN=" + teleN + "]"; + } + + + + + + +} \ No newline at end of file diff --git a/Programmierung2/src/Übungen/WhatsappTest.java b/Programmierung2/src/Übungen/WhatsappTest.java new file mode 100644 index 0000000..2a2e29f --- /dev/null +++ b/Programmierung2/src/Übungen/WhatsappTest.java @@ -0,0 +1,16 @@ +import java.util.ArrayList; + +public class WhatsappTest { + + public static void main(String[] args) { + Whatsapp obai = new Whatsapp("obai", "049321384324"); + Whatsapp omar = new Whatsapp("Omar", "049321384324"); + + obai.sendeNachricht(omar, "Hallo"); + omar.sendeNachricht(obai, "Hi"); + + Nacnhrichten.printNachrichtLists(); + + } + +}