diff options
start from scratch
2 files changed, 0 insertions, 136 deletions
| -rw-r--r-- | Classes/Distance/Distance.cpp | 105 | ||||
| -rw-r--r-- | Classes/Distance/Distance.h | 31 |
diff --git a/Classes/Distance/Distance.cpp b/Classes/Distance/Distance.cpp deleted file mode 100644 index aea74a7..0000000 --- a/Classes/Distance/Distance.cpp +++ /dev/null @@ -1,105 +0,0 @@ -#include "Distance.h" - -Distance::Distance() -{ - setCm(minCM); - setM(minM); - setKm(minKm); - -} -Distance::Distance(int km, int m, int cm) -{ - setCm(cm); - setM(m); - setKm(km); -} -//constructs the distance by only given cm. -Distance::Distance(int cm) -{ - int km = cm / 100000; - int rest = cm % 100000; - int m = rest / 100; - rest = rest % 100; - - setKm(km); - setM(m); - setCm(rest); - - -} -void Distance::setCm(int cm) -{ - if (cm < minCM || cm > maxCM) - cm = minCM; - this->cm = cm; -} -void Distance::setM(int m) -{ - if (m < minM || m > maxM) - m = minM; - this->m = m; -} -void Distance::setKm(int km) -{ - if (km < minKm) - km = 0; - this->km = km; -} -int Distance::getCm()const -{ - return cm; -} -int Distance::getM() const -{ - return m; -} -int Distance::getKm() const -{ - return km; -} -void Distance::Print() const -{ - std::cout << "KM: " << km << " M: " << m << " CM: " << cm << std::endl; -} -int Compare(const Distance& d1, const Distance& d2) -{ - if (d1.getKm() < d2.getKm()) - return -1; - else if (d1.getKm() > d2.getKm()) - return 1; - else - { - if (d1.getM() < d2.getM()) - return -1; - else if (d1.getM() > d2.getM()) - return 1; - else - { - if (d1.getCm() < d2.getCm()) - return -1; - else if (d1.getCm() > d2.getCm()) - return 1; - else - return 0; - } - } -} -// if its between 66km and 99,5 km -bool Distance::isGreedy() const -{ - Distance lowLimit(66, 0, 0); - Distance upLimit(99, 500, 0); - return Compare(*this, lowLimit) > 0 && Compare(*this, upLimit) < 0; -} -int Distance::convertToCm() const -{ - return cm + m * 100 + km * 100000; -} -Distance getDiff(const Distance& d1, const Distance& d2) -{ - int cm1 = d1.convertToCm(); - int cm2 = d2.convertToCm(); - int diff = abs(cm1 - cm2); - Distance result(diff); - return result; -} diff --git a/Classes/Distance/Distance.h b/Classes/Distance/Distance.h deleted file mode 100644 index dfa47d0..0000000 --- a/Classes/Distance/Distance.h +++ /dev/null @@ -1,31 +0,0 @@ -#include <iostream> - -const int maxCM = 99; -const int minCM = 0; -const int maxM = 999; -const int minM = 0; -const int minKm = 0; - -class Distance -{ - int cm; - int m; - int km; - -public: - Distance(); - Distance(int km, int m, int cm); - Distance(int cm); - - int getCm() const; - int getM() const; - int getKm() const; - - void setCm(int cm); - void setM(int m); - void setKm(int km); - - void Print() const; - bool isGreedy() const; - int convertToCm() const; -}; |
