C++ :: Aufgabe #301 :: Lösung #1
1 Lösung
#301
Differenz(en) von Eingabewerten
Fortgeschrittener - C++
von JKooP
- 04.10.2020 um 12:26 Uhr
Schreibe eine Methode/Funktion, die die maximale bzw. minimale Differenz von Eingabewerten ermittelt.
z.B. f(3, -2, 18, -1, 50)
Min: 1, da Absolut(-2 - -1) = 1
Max: 52, da Absolut(50 - -2) = 52
Viel Spaß
z.B. f(3, -2, 18, -1, 50)
Min: 1, da Absolut(-2 - -1) = 1
Max: 52, da Absolut(50 - -2) = 52
Viel Spaß
#1
von JKooP (18090 Punkte)
- 08.01.2021 um 17:19 Uhr
C++ 17
C-Code
#include <iostream>
#include <tuple>
#include <vector>
#include <algorithm>
using namespace std;
tuple<double, double> get_difference(vector<double> p)
{
sort(p.begin(), p.end());
double min = 0, max = 0;
if (p.size() > 1) max = abs(*max_element(p.begin(), p.end()) - *min_element(p.begin(), p.end()));
if (p.size() > 2) min = abs(p[1] - *min_element(p.begin(), p.end()));
return make_tuple(max, min);
}
int main()
{
auto diff{ get_difference({ 3, -2, 18, -1, 50 }) };
std::cout << "Max: " << get<0>(diff) << "\tMin: " << get<1>(diff);
}
Kommentare:
Für diese Lösung gibt es noch keinen Kommentar
Seite 1 von 0
1
