Vergleichsoperator

Grabunold

Mitglied
Java:
public class OperatorenUndAusdruecke {

    public static void main(String[] args){

        /*
        *    Sie können alle Aufgabenteile jederzeit auf Fehler überprüfen!
        *     Navigieren Sie mittels Kommandozeilentool in das Verzeichnis dieser .java Datei. (cd <pfadZurDatei>)
        *    Nutzen Sie anschließend den Java-Compiler via Kommandozeile (javac OperatorenUndAusdruecke.java )
        *     Führen sie anschließend das Programm aus mit (java OperatorenUndAusdruecke)
        */
        
        // 0.   Deklarieren Sie eine Variable vom Typ int mit dem Identifiern "ergebnis1".
        int ergebnis1;
        
        // 0.1. Initialisieren Sie die Variablen "ganzeZahl1" und "ganzeZahl2" vom Typ int mit den Werten 6 und 7.
        int ganzeZahl1 = 6;
        int ganzeZahl2 = 7;
        // 0.2. Initialisieren Sie die Variablen "istGleich" und "istKleiner" vom Typ boolean mit dem Wert false.
        boolean istGleich = false;
        boolean istKleiner = false;

        
        // 1. Multiplizieren Sie "ganzeZahl1" mit "ganzeZahl2" und weisen Sie das Ergebnis der Variable "ergebnis1" zu.
        ganzeZahl1 * ganzeZahl2 = ergebnis1;

    
        // 2. Vergleichen Sie "42" und "ergebnis1" mit dem Gleich-Operator und weisen das Ergebnis der Variable "istGleich" zu. 
        // Geben Sie anschließend die Variable "istGleich" auf der Konsole aus.
        ergebnis1 == 42;
        ergebnis1 = istGleich;
        
        System.out.println(istGleich);
    

        
        // 3. Inkrementieren Sie "ganzeZahl1" und dekrementieren Sie "ganzeZahl2". 
    

        
        // 4. Überprüfen Sie mittels geeignetem Operator ob "ganzeZahl2" nun KLEINER als "ganzeZahl1" ist.
        // Speichern Sie das Ergebnis in der Variable "istKleiner".
    

        
        // 5. Schreiben Sie eine passende Anweisungen, um Auszugeben ob "istGleich" UND "istKleiner" den Wert true besitzen.
        

    }
}

der Fehler soll bei:
ergebnis1 == 42;
liegen, aber warum bzw. was muss ich verändern ?
 
Zuletzt bearbeitet von einem Moderator:

httpdigest

Top Contributor
Eine Zuweisung hat die Form `variable = ausdruck`.
Überlege mal, was in deinem Fall der Ausdruck ist, der den Wert generiert, welcher der Variablen zugewiesen werden soll.
 

Grabunold

Mitglied
So jetzt müsste es richtig sein
Ist es richtig, dass man int i = ganzeZahl1 setzt ?
ganzeZahl1 hat ja schon den Wert 6, also steht da doch int i = 6
Richtig ?


Java:
public class OperatorenUndAusdruecke {

    public static void main(String[] args){

        /*
        *    Sie können alle Aufgabenteile jederzeit auf Fehler überprüfen!
        *     Navigieren Sie mittels Kommandozeilentool in das Verzeichnis dieser .java Datei. (cd <pfadZurDatei>)
        *    Nutzen Sie anschließend den Java-Compiler via Kommandozeile (javac OperatorenUndAusdruecke.java )
        *     Führen sie anschließend das Programm aus mit (java OperatorenUndAusdruecke)
        */
        
        // 0.   Deklarieren Sie eine Variable vom Typ int mit dem Identifiern "ergebnis1".
        int ergebnis1;
        
        // 0.1. Initialisieren Sie die Variablen "ganzeZahl1" und "ganzeZahl2" vom Typ int mit den Werten 6 und 7.
        int ganzeZahl1 = 6;
        int ganzeZahl2 = 7;
        // 0.2. Initialisieren Sie die Variablen "istGleich" und "istKleiner" vom Typ boolean mit dem Wert false.
        boolean istGleich = false;
        boolean istKleiner = false;

        
        // 1. Multiplizieren Sie "ganzeZahl1" mit "ganzeZahl2" und weisen Sie das Ergebnis der Variable "ergebnis1" zu.
        ergebnis1 = ganzeZahl1 * ganzeZahl2;

    
        // 2. Vergleichen Sie "42" und "ergebnis1" mit dem Gleich-Operator und weisen das Ergebnis der Variable "istGleich" zu. 
        // Geben Sie anschließend die Variable "istGleich" auf der Konsole aus.
        istGleich = ergebnis1 == 42;
        
        System.out.println(istGleich);
    

        
        // 3. Inkrementieren Sie "ganzeZahl1" und dekrementieren Sie "ganzeZahl2". 
        int i = ganzeZahl1;
        ganzeZahl1 = ++i;
        int o = ganzeZahl2;
        ganzeZahl2 = --o;
    

        
        // 4. Überprüfen Sie mittels geeignetem Operator ob "ganzeZahl2" nun KLEINER als "ganzeZahl1" ist.
        // Speichern Sie das Ergebnis in der Variable "istKleiner".
        istKleiner = ganzeZahl2 < ganzeZahl1;
    

        
        // 5. Schreiben Sie eine passende Anweisungen, um Auszugeben ob "istGleich" UND "istKleiner" den Wert true besitzen.
        System.out.println(istGleich == true && istKleiner == true);
    

    }
}
 
Zuletzt bearbeitet von einem Moderator:

mihe7

Top Contributor
Nein, ich könnte nicht in Worte fassen, was da passiert bzw. steht.
Wie @httpdigest geschrieben hat, sieht eine Anweisung so aus:
Code:
variable = ausdruck;
In Deinem Fall ist ergebnis1 == 42 der Ausdruck, in diesem Fall ein boolescher Ausdruck, der true/false liefert. Dieses Ergebnis wird der Variablen istGleich zugewiesen, die vom Typ boolean ist und damit das Ergebnis eines booleschen Ausdrucks aufnehmen kann.

So kompiliert der Code, ist alles richtig ?
0-2 ok
3: was soll das i und o?!?
4: ok, Erklärung wie oben bei == :)
5: Da steht dick und fett ein UND in der Aufgabe. Schau mal nach logischen Operatoren.
 

Grabunold

Mitglied
Wie @httpdigest geschrieben hat, sieht eine Anweisung so aus:
Code:
variable = ausdruck;
In Deinem Fall ist ergebnis1 == 42 der Ausdruck, in diesem Fall ein boolescher Ausdruck, der true/false liefert. Dieses Ergebnis wird der Variablen istGleich zugewiesen, die vom Typ boolean ist und damit das Ergebnis eines booleschen Ausdrucks aufnehmen kann.


0-2 ok

3: was soll das i und o?!?
das habe ich geändert

4: ok, Erklärung wie oben bei == :)

5: Da steht dick und fett ein UND in der Aufgabe. Schau mal nach logischen Operatoren.
ebenfalls geändert

Jetzt müsste aber alles richtig sein^^, habe den Code auch verstanden
 

Grabunold

Mitglied
Das ist jetzt der endgültige Code mit meinen Kommentaren
Ist nun alles richtig ?


Java:
public class OperatorenUndAusdruecke {

    public static void main(String[] args){

        /*
        *    Sie können alle Aufgabenteile jederzeit auf Fehler überprüfen!
        *     Navigieren Sie mittels Kommandozeilentool in das Verzeichnis dieser .java Datei. (cd <pfadZurDatei>)
        *    Nutzen Sie anschließend den Java-Compiler via Kommandozeile (javac OperatorenUndAusdruecke.java )
        *     Führen sie anschließend das Programm aus mit (java OperatorenUndAusdruecke)
        */
        
        // 0.   Deklarieren Sie eine Variable vom Typ int mit dem Identifiern "ergebnis1".
        int ergebnis1;
        
        // 0.1. Initialisieren Sie die Variablen "ganzeZahl1" und "ganzeZahl2" vom Typ int mit den Werten 6 und 7.
        int ganzeZahl1 = 6;
        int ganzeZahl2 = 7;
        // 0.2. Initialisieren Sie die Variablen "istGleich" und "istKleiner" vom Typ boolean mit dem Wert false.
        boolean istGleich = false;
        boolean istKleiner = false;

        
        // 1. Multiplizieren Sie "ganzeZahl1" mit "ganzeZahl2" und weisen Sie das Ergebnis der Variable "ergebnis1" zu.
        ergebnis1 = ganzeZahl1 * ganzeZahl2;

    
        // 2. Vergleichen Sie "42" und "ergebnis1" mit dem Gleich-Operator und weisen das Ergebnis der Variable "istGleich" zu. 
        // Geben Sie anschließend die Variable "istGleich" auf der Konsole aus.
        istGleich = ergebnis1 == 42;
        
        System.out.println(istGleich);
    

        
        // 3. Inkrementieren Sie "ganzeZahl1" und dekrementieren Sie "ganzeZahl2". 
        int i = ganzeZahl1;
        ganzeZahl1 = ++i;
        // ganzeZahl1 = 6 wird um 1 erhöht 
        int o = ganzeZahl2;
        ganzeZahl2 = --o;
        // ganzeZahl2 = 7 wird um 1 verringert 
        
        // ganzeZahl1 ist dann 7 und ganzeZahl2 ist dann 6 
    

        
        // 4. Überprüfen Sie mittels geeignetem Operator ob "ganzeZahl2" nun KLEINER als "ganzeZahl1" ist.
        // Speichern Sie das Ergebnis in der Variable "istKleiner".
        istKleiner = ganzeZahl2 < ganzeZahl1;
        // es ist richtig, dass 6 < 7 ist 
        
    

        
        // 5. Schreiben Sie eine passende Anweisungen, um Auszugeben ob "istGleich" UND "istKleiner" den Wert true besitzen.
        System.out.println(istGleich == true && istKleiner == true);
    // erstes true ist ob 42 = 42 ist und zweites true ist ob 42 = 42 ist UND ob ganze Zahl2 < ganzeZahl1 ist, also beides zusammen 

    }
}
 
Zuletzt bearbeitet von einem Moderator:
X

Xyz1

Gast
Wer soll sich das durchlesen. Das ist nicht strukturiert. So ist es eine Zumutung an den Leser. Meinen Hinweis hast Du zudem einfach ignoriert... Ich frage mich also was das bezwecken soll...
 

Grabunold

Mitglied
Ist alles gut strukturiert und auch von der Länge überschaubar(kann man sich also durchlesen).
Vollends zumutbar und deinen "Hinweisen" entsprechend :)

Ist ja auch kein krasser Code, sondern einer aus der zweiten Woche eines Medieninformatik Studiums, somit umfasst er auch keine zu schwierige Thematik.
 

temi

Top Contributor
// 3. Inkrementieren Sie "ganzeZahl1" und dekrementieren Sie "ganzeZahl2".
int i = ganzeZahl1;
ganzeZahl1 = ++i;
// ganzeZahl1 = 6 wird um 1 erhöht
int o = ganzeZahl2;
ganzeZahl2 = --o;
// ganzeZahl2 = 7 wird um 1 verringert

Warum gehst du einen Umweg über die zusätzliche Variablen i und o anstatt direkt die gewünschte Variable zu inkrementieren und dekrementieren?
 

temi

Top Contributor
// 5. Schreiben Sie eine passende Anweisungen, um Auszugeben ob "istGleich" UND "istKleiner" den Wert true besitzen.
System.out.println(istGleich == true && istKleiner == true);

Das ist korrekt, aber "istGleich" und "istKleiner" sind bereits beides vom Typ boolean und können damit auch direkt verglichen werden:

istGleich == true && istKleiner == true

ist funktional identisch mit:

istGleich && istKleiner
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
S Operatoren Boolean Vergleichsoperator Java Basics - Anfänger-Themen 7

Ähnliche Java Themen

Neue Themen


Oben