Website Summary Files Commits Branches @commit @diff @stats
path: root / Classes / Distance
diff options
context:
space:
mode:
Commit0218c678e13e1cb94a352c91733cea68467dc566 (patch)
Author
 Angeld55 <angel_dimitriev@abv.bg>
2021-02-14 23:06:35 +0200
Committer
 Angeld55 <angel_dimitriev@abv.bg>
2021-02-14 23:06:35 +0200
Files16fb3114cb560242458d10411765e50f5d6183db /Classes/Distance
Object-oriented_programming_FMI-0218c678e13e1cb94a352c91733cea68467dc566.tar
Object-oriented_programming_FMI-0218c678e13e1cb94a352c91733cea68467dc566.tar.gz
Object-oriented_programming_FMI-0218c678e13e1cb94a352c91733cea68467dc566.zip
Parentd4ae0ef9ec1b54420176c4a88e09f2fd44ae31b0 (diff)
start from scratch
2 files changed, 0 insertions, 136 deletions
-rw-r--r--Classes/Distance/Distance.cpp105
-rw-r--r--Classes/Distance/Distance.h31
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;
-};