C++ :: Aufgabe #293 :: Lösung #1
2 Lösungen
#293
Rationale Zahlen einlesen: Mittelwert,Produkt und das Maximum ermitteln
Anfänger - C++
von Cara
- 10.05.2020 um 21:54 Uhr
Schreiben Sie ein Programm, das n rationale Zahlen einliest / einlesen kann und den Mittelwert, das Produkt und das Maximum dieser Zahlen ermittelt und ausgibt.
#1
von JKooP (18090 Punkte)
- 24.07.2020 um 17:18 Uhr
// C++ 11
#include <algorithm>
#include <iostream>
#include <vector>
#include <string>
#include <numeric>
using namespace std;
int main()
{
auto max_numbers{ 0 };
auto counter{ 0 };
vector<double> vec_numbers;
cout << "Anzahl der einzugebenen Zahlen: ";
cin >> max_numbers;
cin.clear();
cin.ignore(numeric_limits<streamsize>::max(), '\n');
if (max_numbers < 1)
{
cout << "Das war keine positive Zahl!";
return 0;
}
while (max_numbers != counter)
{
auto number{ 0.0 };
cout << "Bitte Gleitkommazahl " << ++counter << " von " << max_numbers << " eingeben: ";
cin >> number;
cin.clear();
cin.ignore(numeric_limits<streamsize>::max(), '\n');
vec_numbers.push_back(number);
}
auto cnt = vec_numbers.size();
auto sum = accumulate(vec_numbers.begin(), vec_numbers.end(), 0.0);
auto avg = sum / vec_numbers.size();
auto min = *min_element(vec_numbers.begin(), vec_numbers.end());
auto max = *max_element(vec_numbers.begin(), vec_numbers.end());
auto pro{ 1.0 };
for (const auto& p : vec_numbers) pro *= p;
cout << "\nAlle Zahlen: ";
for (const auto& n : vec_numbers) cout << n << " ";
cout << "\nAnzahl Zahlen: " << cnt
<< "\nSumme: " << sum
<< "\nMittelwert: " << avg
<< "\nMinimum: " << min
<< "\nMaximum: " << max
<< "\nProdukt: " << pro << endl;
}
Kommentare:
Für diese Lösung gibt es noch keinen Kommentar
Seite 1 von 0
1
