F
Noch ein Tip zur anzahl -Variable: Eine gute Faustregel fürs Software-Design ist, dass es für jede Information ein einem Programm immer nur eine einzige "autoritative" Instanz geben sollte, welche diese vorhält. In deinem Fall macht es daher Sinn, die Variable anzahl nur zum einlesen der Anzahl via std::cin zu verwenden, und im weiteren stattdessen zahlen.size() zu verwenden. Die Größe des Vektors ist dann die maßgebende Instanz für die Anzahl der Elemente. Wer sollte es schliesslich besser wissen als der Vektor? Immerhin verwaltet der den Speicher wo die Elemente abgelegt sind und auf den du später zugreifst ;). In diesem Fall wäre den Vektor nicht zu füllen zwar immer noch ein Bug, aber ein deutlich weniger schwerwiegender, als auf einen uninitialisierten Speicherbereich zuzugreifen, der deinem Programm nicht zgewiesen wurde.
Analog dazu sollte es auch für jede Problemklasse (oder auch einzelne Probleme) immer nur einen einzigen Algorithmus geben, der das Problem löst - ein schönes Beispiel, wo das nicht der Fall ist, sind so manche IDEs, deren selbstgestrickter Parser manchmal Fehler in Programmen anzeigt, die der Compiler dennoch klaglos schluckt.
Auch deine Schleifen sind eine solche Problemklasse, für den Anfang ist es jedoch völlig in Ordung, das so umzusetzen. Halte aber mal im Hinterkopf, dir Beizeiten mal die Algorithmen der Standardbibliothek im <algorithm> -Header anzusehen, wenn du dich sicher genug in den Grundlagen fühlst. Dort gibt es Funktionen, mit denen sich dieses Programm sehr kurz und elegant schreiben lässt.