Test of the class Calculator

Dependencies:   USBDevice mbed

Files at this revision

API Documentation at this revision

Comitter:
triple
Date:
Thu Aug 28 20:33:44 2014 +0000
Child:
1:6be4deab8fdc
Commit message:
Calculator class test

Changed in this revision

Calculator.cpp Show annotated file Show diff for this revision Revisions of this file
Calculator.h Show annotated file Show diff for this revision Revisions of this file
USBDevice.lib Show annotated file Show diff for this revision Revisions of this file
main.cpp Show annotated file Show diff for this revision Revisions of this file
mbed.bld Show annotated file Show diff for this revision Revisions of this file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Calculator.cpp	Thu Aug 28 20:33:44 2014 +0000
@@ -0,0 +1,53 @@
+/* The Calculator class implementation (Calculator.cpp) */
+#include "Calculator.h"
+
+// Constructor
+// Default values should be specified in declaration only
+Calculator::Calculator(double number1, double number2){
+    this->number1 = number1;
+    this->number2 = number2;
+};
+
+// Public getter for data member number1
+double Calculator::getNumber1() const {
+    return number1;
+}
+
+// Public setter for data member number1
+void Calculator::setNumber1(double number1) {
+    this->number1 = number1;
+}
+
+// Public getter for data member number2
+double Calculator::getNumber2() const {
+    return number2;
+}
+
+// Public setter for data member number1
+void Calculator::setNumber2(double number2) {
+    this->number2 = number2;
+}
+
+// A public member function to sum number1 and number2
+double Calculator::addNumbers() const {
+    return number1 + number2;
+}
+
+// A public member function to saubtract number1 and number2
+double Calculator::subtractNumbers() const {
+    if (number1 < number2){
+        return number2 - number1;
+        }
+    else
+        return number1 - number2;
+}
+
+// A public member function to multiply number1 and number2
+double Calculator::multiplyNumbers() const {
+    return number1 * number2;
+}
+
+// A public member function to sum number1 and number2
+double Calculator::divideNumbers() const {
+    return number1 / number2;
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Calculator.h	Thu Aug 28 20:33:44 2014 +0000
@@ -0,0 +1,28 @@
+/* The Calculator class header (Calculator.h) */
+//#include "mbed.h"
+using namespace std;
+
+//Calculator class declaration
+class Calculator {
+private:
+    //Private members
+    float number1, number2;
+
+public:
+    //Accessible by all
+    //Declare prototype of member functions
+    //Constructor with default values
+    Calculator(double number1 = 0.0, double number2 = 0.0);
+    
+    //Public getters and setters for private data members
+    double getNumber1() const;
+    void setNumber1(double number1);
+    double getNumber2() const;
+    void setNumber2(double number2);
+    
+    //Public member functions
+    double addNumbers() const;
+    double subtractNumbers() const;
+    double multiplyNumbers() const;
+    double divideNumbers() const;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/USBDevice.lib	Thu Aug 28 20:33:44 2014 +0000
@@ -0,0 +1,1 @@
+http://mbed.org/users/mbed_official/code/USBDevice/#5bf05f9b3c7b
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Thu Aug 28 20:33:44 2014 +0000
@@ -0,0 +1,32 @@
+/*****************************************************************************
+* This program demonstrates how to use Class named Calculator in order to    *
+* process common caluculating functions and display results via serial port  *
+*****************************************************************************/
+#include "mbed.h"
+#include "Calculator.h"
+#include "USBSerial.h"
+using namespace std;
+
+//Virtual serial port over USB
+USBSerial serial;
+
+int main() {
+    double number1, number2;
+    // Construct an instance of Calculator calc
+    Calculator calc(0.0, 0.0);//(number1, number2);
+
+    // Ask user for a number1    
+    serial.scanf("f\r\n", number1);   
+    // Ask user for a number2   
+    serial.scanf("f\r\n", number2);
+    
+    // Set number1 and number2 to user inputs
+    calc.setNumber1(number1);
+    calc.setNumber2(number2);
+    serial.printf("number1: %f.2\r\n", calc.getNumber1());
+    serial.printf("number2: %f.2\r\n", calc.getNumber2());
+    serial.printf("sum: %f.2\r\n", calc.addNumbers());
+    serial.printf("subtraction: %f.2\r\n", calc.subtractNumbers());
+    serial.printf("multiplication: %f.2\r\n", calc.multiplyNumbers());
+    serial.printf("division: %f.2\r\n", calc.divideNumbers());
+ }   
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mbed.bld	Thu Aug 28 20:33:44 2014 +0000
@@ -0,0 +1,1 @@
+http://mbed.org/users/mbed_official/code/mbed/builds/9327015d4013
\ No newline at end of file