Programmierung: Der Ausdruck bei dem entweder true oder false rauskommen soll ist: !(((-a == -b + b % a) && !z) ^ (3*c < 3f/2*b)) was heißt f?

... komplette Frage anzeigen

3 Antworten

Mit dem XOR (^), dem float (f) und dem OR (||) habt ihr wohl alle recht. Doch das da oben ist kein Programmcode, den man in einem Programm verwenden sollte, wenn das Programm wirklich benutzt wird.

Gebt bitte allen Variablen sinnvolle Namen! Das A und O in der Computerprogrammierung ist verständlicher Code!

z. B. "divisor" statt "b", oder "betragInCHF" statt "a". Dieser Code da oben ist ja weder lesbar noch wartbar.

Als Übungsaufgabe ist obiges jedoch durchaus sinnvoll. Wenn Du das Ganze aber warten willst, schlage ich boolesche Subroutinen vor, um den Code a) besser zu strukturieren und b) einzelne Teile wiederverwenden zu können und c) schrittweise debuggen zu können.

!(links(a, b, z) ^ rechts(c, b))

boolean rechts(c, b) {return 3*c < 3f / 2 * b;}

boolean links(a, b, z) {return teil1(a, b) && !z;}

boolean teil1(a, b) {return -a == -b + b%a;}


Antwort bewerten Vielen Dank für Deine Bewertung

f steht für Float, d.h. die Variable wird direkt im Code als Float wert markiert, sonst wird eine Ganzzahl als Integer interpretiert. Das selbe gilt auch für ein kleines d. (Double)

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von Dualerstudentma
13.05.2016, 21:41

Das ist aber kein Code. Für 3*c< 3f/2*b muss entweder true oder false rauskommen und a,b,c & z sind ja gegeben.

0
Kommentar von androhecker
13.05.2016, 22:43

Das habe ich schon geschrieben...

0

^ ist ein xor Operator, natürlich kann da kein "boolean" rauskommen. Falls du das "oder" meinst -> ||

Antwort bewerten Vielen Dank für Deine Bewertung

Was möchtest Du wissen?