Implemetierung und Test der Klasse MesswerteA
Die Klasse MesswerteA erbt nun alle Fähigkeiten und Attribute der KLasse Messwerte und erhält zusätzlich die Methoden berechneMittelwert() und berechneStreuung():
using namespace std; class MesswerteA : public Messwerte { public: double berechneMittelwert() { double mitte = 0.0; for(int i=0;i<getSize();i++) mitte+=messwerte->at(i); return mitte/(double)getSize(); } double berechneStreuung() { double streu = 0.0; double mitte = berechneMittelwert(); for(int i=0;i<getSize();i++) streu+=(messwerte->at(i)-mitte)*(messwerte->at(i)-mitte); return sqrt(streu)/(double)getSize(); } };
Code 0-1: MesswerteA.h
#include<math.h> #include<iostream> #include<vector> #include "Messwerte.h" #include "MesswerteA.h" using namespace std; int main(void) { MesswerteA meineMessungen; meineMessungen.add(1.0); meineMessungen.add(7.0); meineMessungen.add(3.2); meineMessungen.add(1.5); int anzahlA = meineMessungen.getSize(); cout<<"AnzahlA="<<anzahlA<<endl; double* werteA = meineMessungen.toArray(); for(int i=0;i<anzahlA;i++) cout<<"WertA Nr."<<i<<": "<<werteA[i]<<endl; double mitte = meineMessungen.berechneMittelwert(); double streu = meineMessungen.berechneStreuung(); cout<<"Mittelwert der Messwerte: "<<mitte<<endl; cout<<"Streuung der Messwerte: "<<streu<<endl; }
Code 0-2: testemesswerteA.cpp
