Skip to content

Instantly share code, notes, and snippets.

@TimDaub
Last active August 29, 2015 14:01
Show Gist options
  • Save TimDaub/be79b39043da7dd19189 to your computer and use it in GitHub Desktop.
Save TimDaub/be79b39043da7dd19189 to your computer and use it in GitHub Desktop.

Revisions

  1. TimDaub revised this gist May 14, 2014. 1 changed file with 2 additions and 2 deletions.
    4 changes: 2 additions & 2 deletions Javainsel.java
    Original file line number Diff line number Diff line change
    @@ -7,8 +7,8 @@ public static void main(String[] args) {


    Scanner scanner = new Scanner(System.in);
    System.out.println("Um Fragen mit 'Ja' zu beantworten, gib 1 ein.")
    System.out.println("Um Fragen mit 'Nein' zu beantworten, gib 0 ein.")
    System.out.println("Um Fragen mit 'Ja' zu beantworten, gib 1 ein.");
    System.out.println("Um Fragen mit 'Nein' zu beantworten, gib 0 ein.");

    // Ab hier Einlesen der Daten mit scanner
    System.out.println("Hat die Person einen Knelt?");
  2. TimDaub created this gist May 14, 2014.
    121 changes: 121 additions & 0 deletions Javainsel.java
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,121 @@
    import java.util.Scanner;


    class Javainsel {
    public static void main(String[] args) {
    boolean hatKnelt, tutNopeln, tutManuseln, loepst;


    Scanner scanner = new Scanner(System.in);
    System.out.println("Um Fragen mit 'Ja' zu beantworten, gib 1 ein.")
    System.out.println("Um Fragen mit 'Nein' zu beantworten, gib 0 ein.")

    // Ab hier Einlesen der Daten mit scanner
    System.out.println("Hat die Person einen Knelt?");
    if(scanner.nextLine().equals("1")) {
    hatKnelt = true;
    } else {
    hatKnelt = false;
    }

    System.out.println("Nopelt die Person?");
    if(scanner.nextLine().equals("1")) {
    tutNopeln = true;
    } else {
    tutNopeln = false;
    }

    System.out.println("Manuselt die Person?");
    if(scanner.nextLine().equals("1")) {
    tutManuseln = true;
    } else {
    tutManuseln = false;
    }

    System.out.println("Loepst die Person?");
    if(scanner.nextLine().equals("1")) {
    loepst = true;
    } else {
    loepst = false;
    }

    System.out.println("Das Programm wertet die eigegebene Person nun aus:");


    // Aufgabenstellung:
    // -----------------------------
    //
    // "Im Herzen einer Java-Plantage leben die vier St¨amme der Asis, Belas, Cedis und Drudis. Forschungen
    // ergaben, dass es vier Eigenschaften gibt, die eine Unterscheidung der St¨amme erlauben: ein
    // Bewohner der Plantage kann (muss aber nicht) manuseln, einen Knelt haben, l¨opsen und nopeln.
    // Man weiss, dass nur die Asis einen Knelt haben und manuseln. Hat jemand keinen Knelt und nopelt,
    // dann ist er gewiss ein Bela. Ein Bewohner mit Knelt, der nicht manuselt, ist ein Cedi, wenn er
    // immer nopelt. Wer keinen Knelt hat und l¨opst, nie nopelt und stets manuselt, ist mit Bestimmtheit
    // ein Cedi; w¨urde er nicht manuseln, w¨are er ein Drudi. Es ist geradezu typisch f¨ur Drudis, dass sie
    // weder manuseln noch nopeln, aber einen ordentlichen Knelt haben. Ganz enthaltsame Bewohner,
    // die keinen Knelt haben, nicht l¨opsen und nicht nopeln, sind Drudis, wenn sie manuseln, und Cedis
    // wenn sie nicht manuseln.
    // Schreibe ein Programm, dass die vier Eigenschaften eines Plantagenbewohners erfragt und eine
    // Diagnose liefert, zu welchem Stamm dieser geh¨ort.
    // Das folgende St¨uck Quelltext verwendet den Scanner von oben und liest eine Eingabe ein und liefert
    // bei J oder j als Ergebnis true und sonst false.
    // 1 String janein = scanner.nextLine();
    // 2 boolean test = janein.equals("j") || janein.equals("J");
    // 3 // test ist true bei j oder J
    // Tipp: Im Skript steht im Teil Wahrheitswerte aus dem Kapitel Datenstrukturen, wie du mehrere
    // Booleans miteinander verkn¨upfen kannst."

    // Auswertung des Ausdrucks mit den 4 oben gesetzten Booleans
    //
    // Zum Verständnis: Ich habe mir einfach den Text durchgelesen und mir immer die jeweiligen
    // Sätze rauskopiert, die auf den Charakter passen und dann entweder ein ! vorne hingemacht oder nicht


    // Asis
    // "Man weiss, dass nur die Asis einen Knelt haben und manuseln."
    if(hatKnelt && tutManuseln) {
    System.out.println("Der Bewohner ist ein Asis!");
    }
    // Bela
    // "Hat jemand keinen Knelt und nopelt dann ist er gewiss ein Bela."
    if(!hatKnelt && tutNopeln) {
    System.out.println("Der Bewohner ist ein Bela!");
    }


    // Cedi
    // 1. Klammer
    // "Ein Bewohner mit Knelt, der nicht manuselt, ist ein Cedi, wenn er immer nopelt."
    //
    // oder ||
    //
    // 2. Klammer
    // "Wer keinen Knelt hat und l¨opst, nie nopelt und stets manuselt, ist mit Bestimmtheitein Cedi"
    //
    // 3. Klammer
    // "Ganz enthaltsame Bewohner, die keinen Knelt haben, nicht l¨opsen
    // und nicht nopeln, sind Drudis, wenn sie manuseln, und Cedis wenn sie nicht manuseln."
    if((hatKnelt && !tutManuseln && tutNopeln) || (!hatKnelt && loepst && !tutNopeln && tutManuseln)
    || (!hatKnelt && !loepst && !tutNopeln && !tutManuseln)) {
    System.out.println("Der Bewohner ist ein Cedi!");
    }


    // Drudis
    // 1. Klammer
    // "Wer keinen Knelt hat und l¨opst, nie nopelt und stets manuselt, ist mit Bestimmtheit
    // ein Cedi; w¨urde er nicht manuseln, w¨are er ein Drudi." ==> einfach !tutManuseln
    //
    // 2. Klammer
    // "Es ist geradezu typisch f¨ur Drudis, dass sie weder manuseln noch nopeln,
    // aber einen ordentlichen Knelt haben." ==> verwirrt mich au a bissl, hatKelt = true?
    //
    // 3. Klammer
    // "Ganz enthaltsame Bewohner, die keinen Knelt haben, nicht l¨opsen und nicht nopeln,
    // sind Drudis, wenn sie manuseln,"
    if((!hatKnelt && loepst && !tutNopeln && !tutManuseln) || (hatKnelt && loepst && !tutNopeln && !tutManuseln)
    || (!hatKnelt && !loepst && !tutNopeln && tutManuseln)) {
    System.out.println("Der Bewohner ist ein Drudis!");
    }
    }
    }