Informatiker Board (http://www.informatikerboard.de/board/index.php)
- Themengebiete (http://www.informatikerboard.de/board/board.php?boardid=1)
--- Theoretische Informatik (http://www.informatikerboard.de/board/board.php?boardid=5)
---- Logik (http://www.informatikerboard.de/board/board.php?boardid=16)
----- Ausdrücke definieren (http://www.informatikerboard.de/board/thread.php?threadid=3763)


Geschrieben von luise1995 am 05.11.2017 um 12:21:

  Ausdrücke definieren

Meine Frage:
Wie formuliert man das denn genau?

Meine Ideen:
Gegeben seien folgende Variablen Definitionen:
int a, b, c;
double d, e, f;
boolean g, h, i;
Drücken Sie die folgenden Ausdrücke mit Hilfe der Programmiersprache Java aus.
Dabei müssen die Variablennamen und Konstanten exakt wie angegeben verwendet
werden:
1. c ist gleich 3.141, wenn g oder h und nicht g oder nicht h gleich false sind.
2. Solange a größer b und größer c und d mal e geteilt durch f gleich 0.0, sei g gleich h oder i.
3. d, e und f sind gleich 0.0 oder g und nicht h oder nicht i sind true.
4. g ist gleich true, wenn h gleich false oder wenn h und i gleich true sind,
ansonsten ist g gleich false.
5. Solange d größer a ist und b und e nicht 0 sind, ist c gleich f geteilt durch b plus
f geteilt durch c.

Also ich habe angefangen und so sieht es aus:
1. c=3.141 impliziert (g und h) oder (nicht g oder nicht h)
Stimmt das so zu machen oder nicht?



Geschrieben von as_string am 05.11.2017 um 12:34:

 

Ich verstehe das:
Zitat:
Drücken Sie die folgenden Ausdrücke mit Hilfe der Programmiersprache Java aus.

so, dass Du Java-Code-Zeilen schreiben sollst.
Was ist denn der Punkt in der 3.141? Wenn das ein Dezimal-Trennzeichen sein soll (also wie etwa das Komma im Deutschen), dann wäre das merkwürdig, weil die Variable c als int deklariert ist. Wenn es ein Tausender-Punkt sein soll, dann würde ich den Punkt einfach im Java-Code weg lassen, weil Java den als Dezimal-Trennzeichen interpretieren würde.

Gruß
Marco



Geschrieben von Steffi1995 am 05.11.2017 um 12:49:

 

Ja also der punkt sollt ein komma darstellen



Geschrieben von as_string am 05.11.2017 um 12:58:

 

Dann verstehe ich aber nicht, wie c gleich 3.141 werden kann. Es ist ja immerhin ein int. Kannst Du nochmal überprüfen, ob das wirklich so da steht?



Geschrieben von Steffi1995 am 05.11.2017 um 13:24:

 

Ja das steht so da



Geschrieben von as_string am 05.11.2017 um 16:49:

 

Ich verstehe, abgesehen von der Sache mit dem int, nicht so ganz, wo Du hängst. Hast Du denn schon einmal versucht, das in Java-Syntax zu formulieren? Wie sehen diese Versuche denn aus?

Gruß
Marco



Geschrieben von Steffi1995 am 05.11.2017 um 16:57:

 

Nein habe ich nicht



Geschrieben von as_string am 05.11.2017 um 19:16:

 

Also ich weiß auch nicht so genau, wie die Aufgabe gelöst werden soll, aber ich würde meinen, dass es vielleicht immer ein if sein soll, so in der Art (für die zweite):
code:
1:
2:
3:
if(a > b && a > c && (d*g/f == 0.0)) {
    g = (h || i);
}
Aber da musst Du mal schauen, ob das mit den Klammern so richtig ist und alles, ich hab das jetzt nicht extra überprüft ob es wirklich stimmt.

Gruß
Marco



Geschrieben von Steffi1995 am 05.11.2017 um 19:18:

 

Ok danke aber ich habe das jetzt auch so in etwa


Forensoftware: Burning Board, entwickelt von WoltLab GmbH