Website Summary Files Commits Branches @commit @diff @stats
path: root / Week02 / Exercise05 / main.cpp
diff options
context:
space:
mode:
Commitf18c44909c604a01bb0265d006a84223ee88d603 (patch)
Author
 Syndamia <kamen@syndamia.com>
2026-03-01 18:33:54 +0200
Committer
 Syndamia <kamen@syndamia.com>
2026-03-01 18:33:54 +0200
Files513a5b000add253f698901c7d636ed921f6913f2 /Week02/Exercise05/main.cpp
oop-2025-solutions-f18c44909c604a01bb0265d006a84223ee88d603.tar
oop-2025-solutions-f18c44909c604a01bb0265d006a84223ee88d603.tar.gz
oop-2025-solutions-f18c44909c604a01bb0265d006a84223ee88d603.zip
Parentfcf38e62e8160f2c9901bdfd33760afed28beb8d (diff)
feat(Week02): Add solutions
1 files changed, 49 insertions, 0 deletions
-rw-r--r--Week02/Exercise05/main.cpp49
diff --git a/Week02/Exercise05/main.cpp b/Week02/Exercise05/main.cpp
new file mode 100644
index 0000000..a79d628
--- /dev/null
+++ b/Week02/Exercise05/main.cpp
@@ -0,0 +1,49 @@
+#include <iostream>
+#include "package.h"
+#include "warehouse.h"
+
+int main() {
+ unsigned warehouseCount;
+ std::cin >> warehouseCount;
+
+ Warehouse* warehouses = new Warehouse[warehouseCount];
+
+ for (unsigned i = 0; i < warehouseCount; ++i) {
+ std::cin >> warehouses[i].ID >> warehouses[i].packageCapacity;
+ warehouses[i].packages = new Package[warehouses[i].packageCapacity];
+ }
+
+ unsigned packagesCount;
+ std::cin >> packagesCount;
+ std::cin.ignore();
+
+ for (unsigned i = 0; i < packagesCount; ++i) {
+ Package p = readPackage();
+
+
+ char warehouse;
+ std::cin >> warehouse;
+ std::cin.ignore();
+
+ for (unsigned i = 0; i < warehouseCount; ++i) {
+ if (warehouses[i].ID == warehouse) {
+ warehouses[i].storePackage(p);
+ break;
+ }
+ }
+ }
+
+ for (unsigned i = 0; i < warehouseCount; ++i) {
+ std::cout << warehouses[i].ID << ' ' << warehouses[i].storedPackages << '/' << warehouses[i].packageCapacity << std::endl;
+ for (unsigned j = 0; j < warehouses[i].storedPackages; ++j) {
+ std::cout << warehouses[i].packages[j].ID << std::endl;
+ }
+ }
+
+ for (unsigned i = 0; i < warehouseCount; ++i) {
+ delete[] warehouses[i].packages;
+ }
+ delete[] warehouses;
+
+ return 0;
+}