simple calculator, in/out PC

Dependencies:   mbed

Revision:
0:68303edf5ba2
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Fri Nov 22 16:00:24 2019 +0000
@@ -0,0 +1,47 @@
+/* ************************************************************************ */
+/* *****************  Projekt: BuNuc_rechner   **************************** */
+/* *****  Abteilung Elektronik und Technische Informatik / Humer ********** */
+/* *****    BULME GRAZ, einfacher Taschenrechner über UART   ************** */
+/* ************************************************************************ */
+
+#include "mbed.h"
+
+Serial pc(SERIAL_TX, SERIAL_RX);        // TxD, RxD Definition der Portleitung
+/* ******************** Variablendefinitionen ***************************** */
+float zahl1;
+float zahl2;
+float erg;
+char op;
+/* ********************* Hauptprogramm ************************************ */
+main()
+{
+    pc.baud(9600);          // Datenübertragungsgeschw. 9600 bit/sec
+    wait(5);                // Warte 5 Sekunden, Verbindung am PC herstellen
+
+while(1)
+{
+  pc.printf("Geben Sie zwei Zahlen ein: \n");   // Ausgabe
+  pc.printf("Zahl1 Operator Zahl2 <return>, Komma mit Punkt\n");
+  pc.scanf("%f %c %f",&zahl1,&op,&zahl2);   // Einlesen der Daten
+  pc.printf("Zahl 1 = %7.2f \n",zahl1);     // Ausgabe der Zahl1
+  pc.printf("Operator = %c\n",op);          // Ausgabe des Operators
+  pc.printf("Zahl 2 = %7.2f \n",zahl2);     // Ausgabe der Zahl2
+  pc.printf("--------------------------\n");
+    switch(op)
+    {
+    case '+':
+    pc.printf("Ergebnis = %7.2f\n",(float)zahl1+zahl2); // Ergebnis für +
+    break;
+    case '-':
+    pc.printf("Ergebnis = %7.2f\n",(float)zahl1-zahl2); // Ergebnis für -
+    break;
+    case '/':
+    pc.printf("Ergebnis = %7.2f\n",(float)zahl1/zahl2); // Ergebnis für /
+    break;
+    case '*':
+    pc.printf("Ergebnis = %7.2f\n",(float)zahl1*zahl2); // Ergebnis für *
+    break;
+    } /* end switch */
+  pc.printf("\n\r");                        // Leerzeile
+} /* end while */
+} /* end main */