summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorlonkaars <loek@pipeframe.xyz>2023-02-04 16:15:14 +0100
committerlonkaars <loek@pipeframe.xyz>2023-02-04 16:15:18 +0100
commitfba03cf4e13783d2d0c355c1a7d7c0799762aea5 (patch)
tree37ec42b299ecf6ec64d3607954279658c4a6635e
week 1 deel 1 (initial commit)
-rw-r--r--.gitignore6
-rw-r--r--algo1w1/NAW.cpp24
-rw-r--r--algo1w1/NAW.h30
-rw-r--r--algo1w1/NAWArray.cpp121
-rw-r--r--algo1w1/NAWArray.h31
-rw-r--r--algo1w1/class-diagram.svg626
-rw-r--r--algo1w1/main.cpp41
l---------algo1w1/makefile1
-rw-r--r--makefile11
-rw-r--r--week.mk30
10 files changed, 921 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..4cf3fc4
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,6 @@
+**/*.o
+**/*.pdf
+**/main
+**/compile_commands.json
+**/.cache
+
diff --git a/algo1w1/NAW.cpp b/algo1w1/NAW.cpp
new file mode 100644
index 0000000..72b1b29
--- /dev/null
+++ b/algo1w1/NAW.cpp
@@ -0,0 +1,24 @@
+#include "NAW.h"
+#include <iostream>
+
+NAW::NAW() { }
+
+NAW::NAW(const std::string& naam, const std::string& adres, const std::string& woonplaats) {
+ setNaam(naam);
+ setAdres(adres);
+ setPlaats(woonplaats);
+}
+
+NAW::~NAW() { }
+
+const std::string& NAW::getNaam() const { return _naam; }
+const std::string& NAW::getAdres() const { return _adres; }
+const std::string& NAW::getPlaats() const { return _woonplaats; }
+
+void NAW::setNaam(const std::string& naam) { _naam = naam; }
+void NAW::setAdres(const std::string& adres) { _adres = adres; }
+void NAW::setPlaats(const std::string& woonplaats) { _woonplaats = woonplaats; }
+
+bool NAW::heeftNaam(const std::string& naam) const { return getNaam().compare(naam) == 0; }
+bool NAW::heeftAdres(const std::string& adres) const { return getAdres().compare(adres) == 0; }
+bool NAW::heeftPlaats(const std::string& woonplaats) const { return getPlaats().compare(woonplaats) == 0; }
diff --git a/algo1w1/NAW.h b/algo1w1/NAW.h
new file mode 100644
index 0000000..ad38133
--- /dev/null
+++ b/algo1w1/NAW.h
@@ -0,0 +1,30 @@
+#pragma once
+
+#include <string>
+#include <stdbool.h>
+
+class NAW {
+public:
+ NAW();
+ NAW(const std::string&, const std::string&, const std::string&);
+ virtual ~NAW();
+
+public:
+ virtual const std::string& getNaam() const;
+ virtual const std::string& getAdres() const;
+ virtual const std::string& getPlaats() const;
+
+public:
+ virtual void setNaam(const std::string&);
+ virtual void setAdres(const std::string&);
+ virtual void setPlaats(const std::string&);
+
+public:
+ virtual bool heeftNaam(const std::string&) const;
+ virtual bool heeftAdres(const std::string&) const;
+ virtual bool heeftPlaats(const std::string&) const;
+
+private:
+ std::string _naam, _adres, _woonplaats;
+};
+
diff --git a/algo1w1/NAWArray.cpp b/algo1w1/NAWArray.cpp
new file mode 100644
index 0000000..51742f1
--- /dev/null
+++ b/algo1w1/NAWArray.cpp
@@ -0,0 +1,121 @@
+#include "NAWArray.h"
+#include "NAW.h"
+
+#include <sstream>
+#include <iostream>
+
+NAWArray::NAWArray() { }
+NAWArray::~NAWArray() { }
+
+void NAWArray::add(const NAW& newNAW) {
+ _nawCollection[_nawCollectionSize++] = new NAW(newNAW);
+}
+
+int NAWArray::zoekOpEersteNaam(const std::string& naam) const {
+ for (unsigned i = 0; i < _nawCollectionSize; i++) {
+ if (!_nawCollection[i]->heeftNaam(naam)) continue;
+ return i;
+ }
+ return -1;
+}
+
+int NAWArray::zoekOpEersteAdres(const std::string& adres) const {
+ for (unsigned i = 0; i < _nawCollectionSize; i++) {
+ if (!_nawCollection[i]->heeftAdres(adres)) continue;
+ return i;
+ }
+ return -1;
+}
+
+int NAWArray::zoekOpEerstePlaats(const std::string& plaats) const {
+ for (unsigned i = 0; i < _nawCollectionSize; i++) {
+ if (!_nawCollection[i]->heeftPlaats(plaats)) continue;
+ return i;
+ }
+ return -1;
+}
+
+int NAWArray::zoekOpEersteAdresEnPlaats(const std::string& adres, const std::string& plaats) const {
+ for (unsigned i = 0; i < _nawCollectionSize; i++) {
+ if (!_nawCollection[i]->heeftAdres(adres)) continue;
+ if (!_nawCollection[i]->heeftPlaats(plaats)) continue;
+ return i;
+ }
+ return -1;
+}
+
+int NAWArray::verwijderEersteMetNaam(const std::string& naam) {
+ int x = -1; // deleted element index
+ for (unsigned i = 0; i < _nawCollectionSize; i++) {
+ if (x == -1) {
+ if (!_nawCollection[i]->heeftNaam(naam)) continue;
+ x = i; // set deleted element index
+ _nawCollectionSize--; // decrease container size
+ i++; // skip deleted element
+ }
+ if (i == 0) continue; // check if i-1 >= 0
+ _nawCollection[i-1] = _nawCollection[i]; // shift elements back
+ }
+ return x;
+}
+
+int NAWArray::verwijderLaatsteMetNaam(const std::string& naam) {
+ int x = -1; // deleted element index
+ for (unsigned _i = 0; _i < _nawCollectionSize; _i++) {
+ unsigned i = _nawCollectionSize - (_i + 1); // calculate index from back
+ if (x == -1) {
+ if (!_nawCollection[i]->heeftNaam(naam)) continue;
+ x = i; // set deleted element index
+ _nawCollectionSize--; // decrease container size
+ _i = i; // set loop index to deleted element
+ i++; // skip deleted element
+ }
+ i = _i; // move forward through array shifting elements back
+ if (i == 0) continue; // check if i-1 >= 0
+ _nawCollection[i-1] = _nawCollection[i]; // shift elements back
+ }
+ return x;
+}
+
+int NAWArray::verwijderAllenMetNaam(const std::string& naam) {
+ int c = 0; // deleted element count
+ for (unsigned i = 0; i < _nawCollectionSize; i++) {
+ if (_nawCollection[i]->heeftNaam(naam)) {
+ c++; // pun unintended
+ _nawCollectionSize--; // decrease container size
+ }
+ if (i + c >= _nawCollectionSize) break;
+ _nawCollection[i] = _nawCollection[i + c]; // shift elements back
+ }
+ return c;
+}
+
+int NAWArray::verwijderEersteMetAdresEnPlaats(const std::string& adres, const std::string& plaats) {
+ int x = -1; // deleted element index
+ for (unsigned i = 0; i < _nawCollectionSize; i++) {
+ if (x == -1) {
+ if (!_nawCollection[i]->heeftAdres(adres)) continue;
+ if (!_nawCollection[i]->heeftPlaats(plaats)) continue;
+ x = i; // set deleted element index
+ _nawCollectionSize--; // decrease container size
+ i++; // skip deleted element
+ }
+ if (i == 0) continue; // check if i-1 >= 0
+ _nawCollection[i-1] = _nawCollection[i]; // shift elements back
+ }
+ return x;
+}
+
+int NAWArray::verwijderAllenMetAdresEnPlaats(const std::string& adres, const std::string& plaats) {
+ int c = 0; // deleted element count
+ for (unsigned i = 0; i < _nawCollectionSize; i++) {
+ if (_nawCollection[i]->heeftAdres(adres) &&
+ _nawCollection[i]->heeftPlaats(plaats)) {
+ c++; // pun unintended
+ _nawCollectionSize--; // decrease container size
+ }
+ if (i + c >= _nawCollectionSize) break;
+ _nawCollection[i] = _nawCollection[i + c]; // shift elements back
+ }
+ return c;
+}
diff --git a/algo1w1/NAWArray.h b/algo1w1/NAWArray.h
new file mode 100644
index 0000000..2f98885
--- /dev/null
+++ b/algo1w1/NAWArray.h
@@ -0,0 +1,31 @@
+#pragma once
+
+#include <string>
+
+class NAW;
+
+class NAWArray {
+public:
+ NAWArray();
+ virtual ~NAWArray();
+
+public:
+ virtual void add(const NAW&);
+
+public:
+ virtual int zoekOpEersteNaam(const std::string&) const;
+ virtual int zoekOpEersteAdres(const std::string&) const;
+ virtual int zoekOpEerstePlaats(const std::string&) const;
+ virtual int zoekOpEersteAdresEnPlaats(const std::string&, const std::string&) const;
+
+public:
+ virtual int verwijderEersteMetNaam(const std::string&);
+ virtual int verwijderLaatsteMetNaam(const std::string&);
+ virtual int verwijderAllenMetNaam(const std::string&);
+ virtual int verwijderEersteMetAdresEnPlaats(const std::string&, const std::string&);
+ virtual int verwijderAllenMetAdresEnPlaats(const std::string&, const std::string&);
+
+private:
+ const NAW* _nawCollection[20] = { nullptr };
+ unsigned _nawCollectionSize = 0;
+};
diff --git a/algo1w1/class-diagram.svg b/algo1w1/class-diagram.svg
new file mode 100644
index 0000000..0d0758a
--- /dev/null
+++ b/algo1w1/class-diagram.svg
@@ -0,0 +1,626 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg width="301.36mm" height="63.5mm"
+ viewBox="0 0 1138 239"
+ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
+<title>Qt SVG Document</title>
+<desc>Generated with Qt</desc>
+<defs>
+</defs>
+<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >
+
+<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,-22.2094,-57.6876)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="#ffffff" fill-opacity="1" stroke="none" transform="matrix(0.991736,0,0,0.991736,-22.2094,-57.6876)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+<rect x="22.3945" y="58.1683" width="1140.68" height="242"/>
+</g>
+
+<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,-22.2094,-57.6876)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,-22.2094,-57.6876)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,-22.2094,-57.6876)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(-0.00412693,-0.991727,0.991727,-0.00412693,642.329,121.036)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="#ffffff" fill-opacity="1" stroke="#990000" stroke-opacity="1" stroke-width="1" stroke-linecap="round" stroke-linejoin="round" transform="matrix(-0.00412693,-0.991727,0.991727,-0.00412693,642.329,121.036)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+<path vector-effect="non-scaling-stroke" fill-rule="evenodd" d="M-6,0 L0,10 L6,0 L-6,0"/>
+</g>
+
+<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(-0.00412693,-0.991727,0.991727,-0.00412693,642.329,121.036)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,473.659,98.2598)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,473.659,98.2598)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,473.659,98.2598)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+<text fill="#000000" fill-opacity="1" stroke="none" xml:space="preserve" x="4.25" y="14" font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+ >0..20</text>
+</g>
+
+<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,473.659,98.2598)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,-22.2094,-57.6876)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="none" stroke="#990000" stroke-opacity="1" stroke-width="1" stroke-linecap="round" stroke-linejoin="round" transform="matrix(0.991736,0,0,0.991736,-22.2094,-57.6876)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+<path vector-effect="non-scaling-stroke" fill-rule="evenodd" d="M495.394,180.94 L670.076,180.213"/>
+</g>
+
+<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,-22.2094,-57.6876)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,470.929,120.643)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,470.929,120.643)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,470.929,120.643)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+<text fill="#000000" fill-opacity="1" stroke="none" xml:space="preserve" x="4.20313" y="14" font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+ >-_nawCollection</text>
+</g>
+
+<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,470.929,120.643)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,0.991736,11.1605)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#990000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,0.991736,11.1605)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+<rect vector-effect="non-scaling-stroke" x="0" y="0" width="472" height="225"/>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,0.991736,11.1605)"
+font-family="Sans Serif" font-size="12" font-weight="700" font-style="normal"
+>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,0.991736,11.1605)"
+font-family="Sans Serif" font-size="12" font-weight="700" font-style="normal"
+>
+<text fill="#000000" fill-opacity="1" stroke="none" xml:space="preserve" x="205.641" y="12" font-family="Sans Serif" font-size="12" font-weight="700" font-style="normal"
+ >NAWArray</text>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#990000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,0.991736,11.1605)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+<polyline fill="none" vector-effect="non-scaling-stroke" points="0,15 472,15 " />
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,0.991736,11.1605)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,0.991736,11.1605)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,0.991736,11.1605)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+<text fill="#000000" fill-opacity="1" stroke="none" xml:space="preserve" x="5" y="27" font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+ >- _nawCollection : const NAW*[20]</text>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,0.991736,11.1605)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,0.991736,11.1605)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+<text fill="#000000" fill-opacity="1" stroke="none" xml:space="preserve" x="5" y="42" font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+ >- _nawCollectionSize : unsigned</text>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,0.991736,11.1605)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#990000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,0.991736,11.1605)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+<polyline fill="none" vector-effect="non-scaling-stroke" points="0,45 472,45 " />
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,0.991736,11.1605)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,0.991736,11.1605)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,0.991736,11.1605)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,0.991736,11.1605)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+<text fill="#000000" fill-opacity="1" stroke="none" xml:space="preserve" x="5" y="57" font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+ >+ NAWArray() «constructor»</text>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,0.991736,11.1605)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,0.991736,11.1605)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+<text fill="#000000" fill-opacity="1" stroke="none" xml:space="preserve" x="5" y="72" font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+ >+ ~NAWArray() «destructor»</text>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,0.991736,11.1605)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,0.991736,11.1605)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+<text fill="#000000" fill-opacity="1" stroke="none" xml:space="preserve" x="5" y="87" font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+ >+ add( : const NAW&amp;)</text>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,0.991736,11.1605)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,0.991736,11.1605)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+<text fill="#000000" fill-opacity="1" stroke="none" xml:space="preserve" x="5" y="102" font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+ >+ zoekOpEersteNaam( : const std::string&amp;) : int</text>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,0.991736,11.1605)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,0.991736,11.1605)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+<text fill="#000000" fill-opacity="1" stroke="none" xml:space="preserve" x="5" y="117" font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+ >+ zoekOpEersteAdres( : const std::string&amp;) : int</text>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,0.991736,11.1605)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,0.991736,11.1605)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+<text fill="#000000" fill-opacity="1" stroke="none" xml:space="preserve" x="5" y="132" font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+ >+ zoekOpEerstePlaats( : const std::string&amp;) : int</text>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,0.991736,11.1605)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,0.991736,11.1605)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+<text fill="#000000" fill-opacity="1" stroke="none" xml:space="preserve" x="5" y="147" font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+ >+ zoekOpEersteAdresEnPlaats( : const std::string&amp;, : const std::string&amp;) : int</text>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,0.991736,11.1605)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,0.991736,11.1605)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+<text fill="#000000" fill-opacity="1" stroke="none" xml:space="preserve" x="5" y="162" font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+ >+ verwijderEersteMetNaam( : const std::string&amp;) : int</text>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,0.991736,11.1605)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,0.991736,11.1605)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+<text fill="#000000" fill-opacity="1" stroke="none" xml:space="preserve" x="5" y="177" font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+ >+ verwijderLaatsteMetNaam( : const std::string&amp;) : int</text>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,0.991736,11.1605)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,0.991736,11.1605)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+<text fill="#000000" fill-opacity="1" stroke="none" xml:space="preserve" x="5" y="192" font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+ >+ verwijderAllenMetNaam( : const std::string&amp;) : int</text>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,0.991736,11.1605)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,0.991736,11.1605)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+<text fill="#000000" fill-opacity="1" stroke="none" xml:space="preserve" x="5" y="207" font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+ >+ verwijderEersteMetAdresEnPlaats( : const std::string&amp;, : const std::string&amp;) : int</text>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,0.991736,11.1605)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,0.991736,11.1605)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+<text fill="#000000" fill-opacity="1" stroke="none" xml:space="preserve" x="5" y="222" font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+ >+ verwijderAllenMetAdresEnPlaats( : const std::string&amp;, : const std::string&amp;) : int</text>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,0.991736,11.1605)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,0.991736,11.1605)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,0.991736,11.1605)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,652.246,0.991736)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#990000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,652.246,0.991736)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+<rect vector-effect="non-scaling-stroke" x="0" y="0" width="482" height="240"/>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,652.246,0.991736)"
+font-family="Sans Serif" font-size="12" font-weight="700" font-style="normal"
+>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,652.246,0.991736)"
+font-family="Sans Serif" font-size="12" font-weight="700" font-style="normal"
+>
+<text fill="#000000" fill-opacity="1" stroke="none" xml:space="preserve" x="226.344" y="12" font-family="Sans Serif" font-size="12" font-weight="700" font-style="normal"
+ >NAW</text>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#990000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,652.246,0.991736)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+<polyline fill="none" vector-effect="non-scaling-stroke" points="0,15 482,15 " />
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,652.246,0.991736)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,652.246,0.991736)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,652.246,0.991736)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+<text fill="#000000" fill-opacity="1" stroke="none" xml:space="preserve" x="5" y="27" font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+ >- _naam : string</text>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,652.246,0.991736)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,652.246,0.991736)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+<text fill="#000000" fill-opacity="1" stroke="none" xml:space="preserve" x="5" y="42" font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+ >- _adres : string</text>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,652.246,0.991736)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,652.246,0.991736)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+<text fill="#000000" fill-opacity="1" stroke="none" xml:space="preserve" x="5" y="57" font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+ >- _woonplaats : string</text>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,652.246,0.991736)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#990000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,652.246,0.991736)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+<polyline fill="none" vector-effect="non-scaling-stroke" points="0,60 482,60 " />
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,652.246,0.991736)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,652.246,0.991736)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,652.246,0.991736)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,652.246,0.991736)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+<text fill="#000000" fill-opacity="1" stroke="none" xml:space="preserve" x="5" y="72" font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+ >+ NAW() «constructor»</text>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,652.246,0.991736)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,652.246,0.991736)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+<text fill="#000000" fill-opacity="1" stroke="none" xml:space="preserve" x="5" y="87" font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+ >+ NAW( : const std::string&amp;, : const std::string&amp;, : const std::string&amp;) «constructor»</text>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,652.246,0.991736)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,652.246,0.991736)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+<text fill="#000000" fill-opacity="1" stroke="none" xml:space="preserve" x="5" y="102" font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+ >+ ~NAW() «destructor»</text>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,652.246,0.991736)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,652.246,0.991736)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+<text fill="#000000" fill-opacity="1" stroke="none" xml:space="preserve" x="5" y="117" font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+ >+ getNaam() : const std::string&amp;</text>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,652.246,0.991736)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,652.246,0.991736)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+<text fill="#000000" fill-opacity="1" stroke="none" xml:space="preserve" x="5" y="132" font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+ >+ getAdres() : const std::string&amp;</text>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,652.246,0.991736)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,652.246,0.991736)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+<text fill="#000000" fill-opacity="1" stroke="none" xml:space="preserve" x="5" y="147" font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+ >+ getPlaats() : const std::string&amp;</text>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,652.246,0.991736)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,652.246,0.991736)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+<text fill="#000000" fill-opacity="1" stroke="none" xml:space="preserve" x="5" y="162" font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+ >+ setNaam( : const std::string&amp;)</text>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,652.246,0.991736)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,652.246,0.991736)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+<text fill="#000000" fill-opacity="1" stroke="none" xml:space="preserve" x="5" y="177" font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+ >+ setAdres( : const std::string&amp;)</text>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,652.246,0.991736)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,652.246,0.991736)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+<text fill="#000000" fill-opacity="1" stroke="none" xml:space="preserve" x="5" y="192" font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+ >+ setPlaats( : const std::string&amp;)</text>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,652.246,0.991736)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,652.246,0.991736)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+<text fill="#000000" fill-opacity="1" stroke="none" xml:space="preserve" x="5" y="207" font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+ >+ heeftNaam( : const std::string&amp;) : bool</text>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,652.246,0.991736)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,652.246,0.991736)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+<text fill="#000000" fill-opacity="1" stroke="none" xml:space="preserve" x="5" y="222" font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+ >+ heeftAdres( : const std::string&amp;) : bool</text>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,652.246,0.991736)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,652.246,0.991736)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+<text fill="#000000" fill-opacity="1" stroke="none" xml:space="preserve" x="5" y="237" font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+ >+ heeftPlaats( : const std::string&amp;) : bool</text>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,652.246,0.991736)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,652.246,0.991736)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="#ffffc0" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(0.991736,0,0,0.991736,652.246,0.991736)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+
+<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
+font-family="Sans Serif" font-size="12" font-weight="400" font-style="normal"
+>
+</g>
+</g>
+</svg>
diff --git a/algo1w1/main.cpp b/algo1w1/main.cpp
new file mode 100644
index 0000000..9b737e5
--- /dev/null
+++ b/algo1w1/main.cpp
@@ -0,0 +1,41 @@
+#include "NAWArray.h"
+#include "NAW.h"
+
+#include <iostream>
+#include <sstream>
+
+int main() {
+ NAWArray array;
+
+ for (int n = 0; n < 10; n++) {
+ std::stringstream naam, adres, plaats;
+
+ naam << "avans " << n + 1;
+ adres << "onderwijsboulevard " << n + 1;
+ plaats << "den bosch " << n + 1;
+
+ array.add({ naam.str(), adres.str(), plaats.str() });
+ }
+
+ std::cout << array.zoekOpEersteNaam("avans 4") << std::endl;
+ std::cout << array.zoekOpEersteNaam("avans 34") << std::endl;
+ std::cout << array.zoekOpEersteAdres("onderwijsboulevard 7") << std::endl;
+ std::cout << array.zoekOpEersteAdres("onderwijsboulevard 37") << std::endl;
+ std::cout << array.zoekOpEerstePlaats("den bosch 2") << std::endl;
+ std::cout << array.zoekOpEerstePlaats("den bosch 83") << std::endl;
+ std::cout << array.zoekOpEersteAdresEnPlaats("onderwijsboulevard 7", "den bosch 7") << std::endl;
+ std::cout << array.zoekOpEersteAdresEnPlaats("onderwijsboulevard 7", "den bosch 8") << std::endl;
+
+ std::cout << array.verwijderEersteMetNaam("avans 4") << std::endl;
+ std::cout << array.verwijderEersteMetNaam("avans 34") << std::endl;
+ std::cout << array.verwijderLaatsteMetNaam("avans 5") << std::endl;
+ std::cout << array.verwijderLaatsteMetNaam("avans 34") << std::endl;
+ std::cout << array.verwijderAllenMetNaam("avans 5") << std::endl;
+ std::cout << array.verwijderAllenMetNaam("avans 34") << std::endl;
+ std::cout << array.verwijderEersteMetAdresEnPlaats("onderwijsboulevard 7", "den bosch 7") << std::endl;
+ std::cout << array.verwijderEersteMetAdresEnPlaats("onderwijsboulevard 7", "den bosch 8") << std::endl;
+ std::cout << array.verwijderAllenMetAdresEnPlaats("onderwijsboulevard 8", "den bosch 8") << std::endl;
+ std::cout << array.verwijderAllenMetAdresEnPlaats("onderwijsboulevard 9", "den bosch 8") << std::endl;
+
+ return 0;
+}
diff --git a/algo1w1/makefile b/algo1w1/makefile
new file mode 120000
index 0000000..a4e84c6
--- /dev/null
+++ b/algo1w1/makefile
@@ -0,0 +1 @@
+../week.mk \ No newline at end of file
diff --git a/makefile b/makefile
new file mode 100644
index 0000000..acb6c56
--- /dev/null
+++ b/makefile
@@ -0,0 +1,11 @@
+MK = make -j
+WEKEN := $(wildcard oop*w*)
+TARGETS := all clean compile_commands zip
+
+_: all
+
+.PHONY: $(TARGETS) $(WEKEN)
+$(TARGETS): $(WEKEN)
+$(WEKEN):
+ $(MK) -C $@ $(MAKECMDGOALS)
+
diff --git a/week.mk b/week.mk
new file mode 100644
index 0000000..7a58f4d
--- /dev/null
+++ b/week.mk
@@ -0,0 +1,30 @@
+CC = g++
+LD = g++
+RM = rm -f
+TARGET = main
+OUTPUT_ZIP = Huiswerk_2180996.zip
+
+LFLAGS += -lstdc++
+
+SRCS := $(wildcard *.cpp)
+OBJS := $(patsubst %.cpp,%.o, $(SRCS))
+
+.PHONY: clean compile_commands zip
+
+all: $(TARGET)
+
+%.o: %.cpp
+ $(CC) -c $(CFLAGS) $< -o $@
+
+$(TARGET): $(OBJS)
+ $(LD) $^ $(LFLAGS) -o $@
+
+clean:
+ $(RM) $(TARGET) $(OBJS) $(OUTPUT_ZIP)
+
+compile_commands: clean
+ compiledb make -Bn
+
+zip: all
+ zip -q $(OUTPUT_ZIP) makefile $(wildcard *.cpp) $(wildcard *.h) $(wildcard *.hpp)
+