JavaScript - Taschenrechner

Erste Frage Aufrufe: 1429     Aktiv: 13.06.2020 um 14:21

0

Hallo zusammen,

ich eine Funktion mit dem Namen taschenrechner schreiben. Als Parameter habe ich einen Rechenoperator als String und zwei Rechenoperanden. Die Funktion soll das Ergebnis dieser Operation wiedergeben (Rechenoperatoren: +,-,*,/)

Zum Beispiel bei "*",8,100 kommt als Ergebnis 800.

Kann mir da jemand weiterhelfen?

Vielen Dank

Diese Frage melden
gefragt

Punkte: 30

 
Kommentar schreiben
3 Antworten
0

Gibt sehr viele youtube videos & blogs dazu.

Diese Antwort melden
geantwortet

Punkte: 0

 

Kommentar schreiben

0

Hi, die Aufgabe lässt sich einfach dadurch lösen, den aktuellen Operator herauszufinden und dann die richtige Rechnung durchzuführen (mit Hilfe von if-/switch-statements, etc.).

Das könnte ungefähr so aussehen:

function taschenrechner(operand1, operand2, operator) {
   switch (operator) {
      case "+": return operand1 + operand2;
      case "*": return operand1 * operand2;
      // usw ...
      default: throw new Error("Illegal operator");
   }
}
Diese Antwort melden
geantwortet

Student, Punkte: 10

 

Kommentar schreiben

0

Hi,

Da hier schon ein schönes Beispiel mit switch / case veröffentlich wurde, möchte ich den noch etwas funktionaleren Ansatz zeigen:


Variante 1:
    const calculator = (op, n1, n2) => {
        const operations = {
            '*': (n1, n2) => n1 * n2,
            '+': (n1, n2) => n2 + n1
        };
        return operationsop;
    };
    document.writeln(calculator("+", 3, 4));

Oder Variante 2:

const calculator2 = (op) => {
    const operations = {
        '*': (n1, n2) => n1 * n2,
        '+': (n1, n2) => n2 + n1
    };
    return operations[op];
};
const add = calculator2("+");
document.writeln(add(3, 4));
document.writeln(calculator2("+")(3, 4));

Der Unterschied von Variante 1 zu switch / case ist, dass dies besser lesbar ist und einfacher umzubauen.
Variante 2 bringt dir den Vorteil, dass du die jeweilige Funktion zurückgibst. Somit kannst du diese immer wiederverwenden.

Gutes Buch um JS zu lernen:
You-Dont-Know-JS (1st Edition) https://github.com/getify/You-Dont-Know-JS/blob/1st-ed/README.md
You-Dont-Know-JS (2nd Edition, noch nicht ganz fertig) https://github.com/getify/You-Dont-Know-JS

Diese Antwort melden
geantwortet

Student, Punkte: 30

 

Kommentar schreiben