aboutsummaryrefslogtreecommitdiff
path: root/week03/Exercise2.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'week03/Exercise2.cpp')
-rw-r--r--week03/Exercise2.cpp45
1 files changed, 45 insertions, 0 deletions
diff --git a/week03/Exercise2.cpp b/week03/Exercise2.cpp
new file mode 100644
index 0000000..2d7c748
--- /dev/null
+++ b/week03/Exercise2.cpp
@@ -0,0 +1,45 @@
+#include <iostream>
+#include <cstring>
+
+struct Alarm {
+private:
+ char modelName[1024];
+ unsigned int pin;
+ float modelRevision;
+
+public:
+ const char* getModelName() {
+ return modelName;
+ }
+ void setModelName(const char* newModel) {
+ for (int i = 0; newModel[i] != '\0'; i++) {
+ if (newModel[i] < 'A' || newModel[i] > 'Z')
+ return;
+ }
+
+ strcpy(modelName, newModel);
+ }
+
+ unsigned int getPin() {
+ return pin;
+ }
+ void setPin(unsigned int newPin) {
+ if (newPin > 9999) return;
+
+ pin = newPin;
+ }
+
+ float getModelRevision() {
+ return modelRevision;
+ }
+ void setModelRevision(float newRevision) {
+ if (newRevision <= 0)
+ return;
+
+ modelRevision = newRevision;
+ }
+};
+
+int main() {
+ TODO
+}