[QUIZ#2] Polnischer Taschenrechner

Online-Skater

Erfahrenes Mitglied
Hallo,

bei Wiki steht doch aber:
Code:
Operator Operand1 Operand2 ... OperandN

Somit müsste * * + 1 2 + 3 4 2 doch (1+2)*(3+4+2) und das eine mal zeichen wär überflüssig oder so ? Es sei denn die Übung soll auf 2 Operanden pro Operation beschränkt sein.

@tecla Joa sicher geht das das wäre dann eben auch 42 ;)

mfg
 
Zuletzt bearbeitet:
K

kalle123456

Das ist doch mal eine schöne Aufgabe ;), beim nächsten mal bin ich mit dabei, wenn eure Termine für so ein Quiz dann fest sind. Momentan bin ich komplett ausgelastet, aber wäre gerne dabei.

Gruss

P.S. fand eure Lösungen von der Ersten Aufgabe sehr informativ, nur leider fehlt mir die Zeit;-)
 
Ich denk an die armen Handy-Benutzer. :)
Ist einfach gewöhnungsbedürftig.
Das vorderste * ist doch die letzte Operation, oder? Und gehört zur 2 die zuhinterst steht, grrhh. D.h. ich muss zuallererst den Operanden eingeben, den ich als letztes abarbeite.
Gratuliere, du hast die polnische Notation verstanden ;) Wer noch nicht damit zu tun hatte, muss sich erst mal daran gewöhnen, das stimmt. Aber die polnische Notation ist trotzdem vollkommen logisch. Der Aufhänger mit der Handysoftware ist natürlich mit einem Augenzwinkern zu verstehen.

bei Wiki steht doch aber:
Code:
Operator Operand1 Operand2 ... OperandN

Somit müsste * * + 1 2 + 3 4 2 doch (1+2)*(3+4+2) und das eine mal zeichen wär überflüssig oder so ? Es sei denn die Übung soll auf 2 Operanden pro Operation beschränkt sein.
Die Grundrechenarten sind allesamt binäre Operationen (erwarten also zwei Operanden). Wenn du ihnen eine variable Stelligkeit (Anzahl Operanden) verpassen willst, wirst du an einer Klammerung nicht vorbei kommen, da es sonst Mehrdeutigkeiten geben kann.
 

Mark

Cinema4D
Hi!

Natürlich eine tolle Aufgabe :) ... nur, "gefallen" will sie mir nicht: mir fällt partout kein Grund ein, solch einen Taschenrechner in C4D zu inkludieren ;)

Und nur mal so nachgefragt: wieso ist nicht auch die Variablen-Zuweisung "polnisch"?
> = a * 6 7
...ohne Hintergedanken ... ganz naiv :)

Liebe Grüße,
Mark.

//edit: wer lesen kann, ist klar im Vorteil: "Wie das aussehen könnte, seht ihr in der Beispielsitzung." ... ;)
 
Natürlich eine tolle Aufgabe :) ... nur, "gefallen" will sie mir nicht: mir fällt partout kein Grund ein, solch einen Taschenrechner in C4D zu inkludieren ;)
Mit der polnischen Notation kannst du die kompliziertesten Rechnungen durchführen ohne mit der Hand den Ziffernblock verlassen zu müssen - also wenn das nichts ist ;) Bitte mach doch wieder eine Lösung in COFFEE :)

Und nur mal so nachgefragt: wieso ist nicht auch die Variablen-Zuweisung "polnisch"?
> = a * 6 7
...ohne Hintergedanken ... ganz naiv :)
Auch keine schlechte Idee, damit könnte man dann auch Zuweisungen tief in einer verschachtelten Rechnung "verstecken" ;)
 

Thomas Darimont

Erfahrenes Mitglied
Hallo,

also außer in Kuriosität sehe ich für Lösungen in solch esoterischen (Brainfuck, Moo, etc.) Programmiersprachen keinen besonders pädagogischen Mehrwert.

Ich hab mal wieder eine Scala Lösung in "voller" Ausbaustufe abgegeben.
Eine Java Lösung kommt je nach Zeit und Lust am WE nach.

Gruß Tom
 

OnlyFoo

Erfahrenes Mitglied
also außer in Kuriosität sehe ich für Lösungen in solch esoterischen (Brainfuck, Moo, etc.) Programmiersprachen keinen besonders pädagogischen Mehrwert.

Stimmt, aber solange es Spaß macht, ist das doch in Ordnung? :) Ich werd natürlich höchst wahrscheinlich auch noch eine Python und vllt eine C-Lösung abgeben... Je nach Zeit, klausuren kommen näher....
 
Stimmt, aber solange es Spaß macht, ist das doch in Ordnung? :)
Klar doch :) Aber leider bist du dann der einzige, der was davon hat. Der Sinn des Coding Quiz besteht ja unter anderem auch darin, von den Einsendungen der anderen Teilnehmer zu lernen. Bei esoterischen Programmiersprachen wie Brainf*** ist das aber nahezu auszuschließen, vor allem wenn nur der Quellcode ohne Erläuterungen abgegeben wird. Das hat irgendwie den Beigeschmack von reinem "Show-Off" und dazu ist das Quiz wirklich nicht gedacht...