Frage - Antwort - Spiel



  • In dem Skript, das ich zur Zeit bearbeite, sind am Ende jedes Kapitels ein paar Fragen. Ich hoffe, dass ich sie richtig beantworten kann. Wenn ich falsch liege, dann bin ich für Lösungen offen

    1. Was ist ein Ausdruck?
    Ein Ausdruck ist eine Anweisung, die Werte zuweist und als Ausdruck einen Wert zurückgeben kann

    2. Ist x = 5 + 7 ein Ausdruck? Was ist sein Wert?
    Ja, ist ein Ausdruck. Sein Wert ist 12.

    3. Was ist der Wert von 201 / 4?
    50

    4. Was ist der Wert von 201 % 4?
    1

    5. Wenn meinAlter, a und b Integer-Variablen sind, wie lauten Ihre Werte nach
    meinAlter = 39;
    a = meinAlter++;
    b = ++meinAlter;

    meinAlter = 41;
    a=39;
    b=41;

    6. Was ist der Wert von 8 + 2 * 3?
    14

    7. Was ist der Unterschied zwischen if(x = 3) und if(x == 3)?

    Bei if(x=3) wird x der Wert 3 zugewisen, bei if(x==3) wird gebrüft, ob x den Wert 3 hat.

    8. Ergeben die folgenden Werte true oder false?

    0 > false
    1 > true
    -1> true
    x = 0 > true
    x == 0 // angenommen x hat den Wert 0 > true

    Liege ich richtig? Falls nicht, bitte erklärt warum ich falsch liege.

    Danke ersteinmal im Voraus für die Antworten.

    Gruß Max



  • Auf feine Formulierungen gehe ich jetzt nicht ein, aber:
    "x = 0" ist ein Ausdruck, sein Wert ist 0, also false. 😉



  • Dann gehe ich einmal davon aus, dass der Rest bis auf Rechtschreibfehler passt?



  • Zu 5: meinAlter=39;
    a=39;
    b=41;

    Zu 7: Deine Antwort ist richtig möchte nur noch was hinzufügen: if(x=3) ist immer true!



  • Syntax_error schrieb:

    Zu 5: meinAlter=39;

    Falsch. Wie kommst du darauf? Die Antwort 41 ist natürlich korrekt.

    @silent_max
    Joa. Ein Ausdruck muss nicht zwangsläufig etwas Zuweisen. "5;" wäre auch ein Ausdruck. Wobei ich die Frage etwas schwammig finde. Um da richtig drauf zu antworten, müsste man schon zieemlich viel schreiben. Da bleiben nur oberflächliche Kurzbeschreibungen:

    An expression is a sequence of operators and operands that specifies a computation. An expression can result in a value and can cause side effects.



  • Genau genommen ist "5;" kein Ausdruck; das Semikolon gehört da nicht dazu. "5" ist ein Ausdruck, "5, 5" auch, und "static_cast<void>(5)" auch. Der Begriff bezieht sich nicht auf semantische Eigenschaften, sondern hat mit Syntax etwas zu tun. Wenn du dir die BNF im Standard ankuckst, sind Expressions da über drei Seiten ausgewalzt (In Anhang A, speziell A.4).



  • cooky451 schrieb:

    Syntax_error schrieb:

    Zu 5: meinAlter=39;

    Falsch. Wie kommst du darauf? Die Antwort 41 ist natürlich korrekt.

    Sorry hab mich verschrieben! 41 ist selbstverständlich korrekt!


Anmelden zum Antworten