====== LU01.L02 - myGeometryCalculator ====== ===== Auftrag ===== Programmieren Sie einen Rechner //myGeometryCalculator.js//, der die genannten geometrischen Funktionen ausführen kann. Testen Sie anschliessend Ihre Lösung auf Funktion, indem Sie diese ausführen und das Ergebnis auf der Kommandozeile ausgeben lassen. ==== Lösung 1: Kreisfläche ===== const pi = 3.14; //accuracy is sufficient enough for our purpose let r = 10; // 10 is easy to calculate function circleArea(radius) { // Variante ohne lokale Veriable return pi*radius*radius; } function circleArea2(radius) { let cA = pi*radius*radius; // mit lokaler Variable return cA; } console.clear(); // Terminal wird bereinigt console.log("function circleArea mit Radius: ", r, " = ", circleArea(r), "Flaecheneinheiten."); console.log("function circleArea2 mit Radius: ", r, " = ", circleArea2(r), "Flaecheneinheiten."); ==== Teilauftrag 2: Kreisumfang ===== function circleCircumference(radius) { // Variante ohne lokale Variable return 2*pi*radius; } function circleCircumference2(radius) { // Variante mit lokaler Variable let area = 2*pi*radius; return area; } console.log(); console.log("function circleCircumference: " + r + " = " + circleCircumference(r)); console.log("function circleCircumference2: " + r + " = " + circleCircumference2(r)); ==== Teilauftrag 3: Dreiecksfläche ===== function triangleArea(side, height) { let area = side*height/2; // Lokale Variable ist nur sichtbar innerhalb der Funktion return area; } console.log(); /* Aus Gründen der Übersichtlichkeit wird nachfolgend nur eine Variante verwendet: Zwischenschritt mit mit Speicherung in lokaler Variable oder ohne - direkte Berechnung und Rückgabe des Ergebnisses an die aufrufende Funktion */ console.log("function triangleArea with side ", s, " & height ", h, "=", triangleArea(s, h)); ==== Teilauftrag 4: Dreiecksumfang ===== const pi = 3.14; //accuracy is sufficient enough for our purpose var sA=3, sB=10, sC=5; function triangleCircumfence(sideA, sideB, sideC) { let cf = sideA+sideB+sideC; // lokale Variable, nur innerhalb Funktion sichtbar return cf; } console.log("function triangleCircumfence with sideA:", sA, ", sideB:", sB, " sC:", sC, "=",triangleCircumfence(sA, sB, sC)); ==== Teilauftrag 5: quadratFlaeche ===== const pi = 3.14; //accuracy is sufficient enough for our purpose var side = 20; console.log("function square: ", side, " = ", squareArea(side)); function squareArea(x) { let sa = x*x; return sa; } ==== Teilauftrag 6: quadratUmfang ===== const pi = 3.14; //accuracy is sufficient enough for our purpose var side = 4; function squareCircumference(s) { let cf = 4*s; // lokale Variablen return cf; } console.log(); console.log("function squareCircumference: side ", side +" = ",squareCircumference (side)); ==== Teilauftrag 7: rechtEckFlaeche ===== const pi = 3.14; //accuracy is sufficient enough for our purpose var sideA = 10, sideB=15; function rectangleArea(sA, sB) { let rA = sA*sB; return rA; } console.log(); console.log("function rectangleArea: sideA:", sideA, " sideB:", sideB, " = ", rectangleArea(sideA, sideB)); ==== Teilauftrag 8: rechteckUmfang ===== const pi = 3.14; //accuracy is sufficient enough for our purpose var sideA = 10, sideB=15; function rectangleCurcumference(sA, sB) { let rcf = 2*(sA+sB); return rcf; } console.log(); console.log("function rectangleCurcumfence: sideA:", sideA, " sideB:", sideB, " = ", rectangleCurcumference(sideA, sideB)); ---- [[https://creativecommons.org/licenses/by-nc-sa/4.0/|{{https://i.creativecommons.org/l/by-nc-sa/4.0/88x31.png}}]] Volkan Demir