DCV 2024 03/Strukturierte Programmierung Uebungen/Logische Operatoren: Unterschied zwischen den Versionen

Aus CCWiki
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Zeile 1: Zeile 1:
Im folgenden sollen '''Logische Operatoren''', Kontrollstrukturen und der Datentyp {{JSL|boolean}} geübt werden.
Im folgenden sollen '''Logische Operatoren''', Kontrollstrukturen und der Datentyp {{JSL|boolean}} geübt werden.
  Folgende Aufgaben sollen in jeweils '''zwei''' Varianten gelöst werden.
  Folgende Aufgaben sollen in jeweils '''zwei''' Varianten gelöst werden.
  * Die Auswertung erfolgt durch verknüpfung von '''logischen Operatoren'''
  * Die Auswertung erfolgt durch verknüpfung von '''logischen Operatoren'''
  * Die Auswertung erfolgt mittels '''if then else'''
  * Die Auswertung erfolgt mittels '''if then else'''
Teste deine Lösungen ausgiebig!
{{JML|code=
Random random = new Random();
//Random number between 100 and 100
int randomNumber = random.nextInt(-100, 101);
}}
{| class="wikitable"
|+ Wahrheitstabelle für logische Operatoren
|-
! Eingabe A !! Eingabe B !! A AND B !! A OR B
|-
| true || true || true || true
|-
| true || false || false || true
|-
| false || true || false || true
|-
| false || false || false || false
|}


=== Beispiel: Aufgabe 0 ===
=== Beispiel: Aufgabe 0 ===

Version vom 29. Februar 2024, 07:32 Uhr

Im folgenden sollen Logische Operatoren, Kontrollstrukturen und der Datentyp boolean geübt werden.

Folgende Aufgaben sollen in jeweils zwei Varianten gelöst werden.
* Die Auswertung erfolgt durch verknüpfung von logischen Operatoren
* Die Auswertung erfolgt mittels if then else
Teste deine Lösungen ausgiebig!
Random random = new Random();
//Random number between 100 and 100
int randomNumber = random.nextInt(-100, 101);
Wahrheitstabelle für logische Operatoren
Eingabe A Eingabe B A AND B A OR B
true true true true
true false false true
false true false true
false false false false

Beispiel: Aufgabe 0

Erstelle eine Methode, welche eine Ganzzahl als Parameter nimmt. Diese Methode gibt true zurück, wenn folgende Bedingung für die Zahl gilt:

Die Zahl ist: Größer als 3 und eine gerade Zahl oder 11

Aufruf:

isBiggerThanThreeAndEvenOrEleven(10);

Ausgabe:

true

//Solution 1: Connecting logical operators
public static boolean isBiggerThanThreeAndEvenOrEleven1(int value) {
    return value > 3 && value % 2 == 0 || 11;
}

//Solution 2: if then else
public static boolean isBiggerThanThreeAndEvenOrEleven1(int value) {
    if(value == 11) {
        return true;
    }
    if(value > 3) {
        if(value % 2 == 0) {
            return true;
        }
    }
    return false;
}

//Solution 3: if then else, without nesting
public static boolean isBiggerThanThreeAndEvenOrEleven1(int value) {
    if(value == 11) {
        return true;
    }
    if(value <= 3) {
        return false;
    }
    return value % 2; 
}

Beispiel: Aufgabe 1

Erstelle eine Methode, welche eine Ganzzahl als Parameter nimmt. Diese Methode gibt true zurück, wenn folgende Bedingung für die Zahl gilt:

Die Zahl ist: Ist gerade und größer als 10

Beispiel: Aufgabe 2

Erstelle eine Methode, welche eine Ganzzahl als Parameter nimmt. Diese Methode gibt true zurück, wenn folgende Bedingung für die Zahl gilt:

Die Zahl ist: Ist kleiner als 5 oder größer als 100

Beispiel: Aufgabe 3

Erstelle eine Methode, welche eine Ganzzahl als Parameter nimmt. Diese Methode gibt true zurück, wenn folgende Bedingung für die Zahl gilt:

Die Zahl ist: Ist größer gleich 5 und kleiner gleich 100

Kann hier auf eine der vorhergehenden Aufgaben zurückgegriffen werden? !

Beispiel: Aufgabe 4

Erstelle eine Methode, welche eine Ganzzahl als Parameter nimmt. Diese Methode gibt true zurück, wenn folgende Bedingung für die Zahl gilt:

Die Zahl ist: Positive und ungerade

Beispiel: Aufgabe 5

Erstelle eine Methode, welche eine Ganzzahl als Parameter nimmt. Diese Methode gibt true zurück, wenn folgende Bedingung für die Zahl gilt:

Die Zahl ist: Kleiner als 0 aber nicht -1

Beispiel: Aufgabe 6

Erstelle eine Methode, welche eine Ganzzahl als Parameter nimmt. Diese Methode gibt true zurück, wenn folgende Bedingung für die Zahl gilt:

Die Zahl ist: ein Schaltjahr