Другие языки программирования и технологии

Дано четыре числа, вывести на экран то, которое меньшее и то, которое большее с соответствующим обобщением. В C++

Нужно написать программу в C++
Vitaliy Kindzadza
Vitaliy Kindzadza
190
#include <iostream>
using namespace std;
template<typename Type, typename... Args>
Type min(Args... args) {
auto seq = initializer_list<Type>({ args... });
auto mn = numeric_limits<Type>::max();
for (auto value : seq) if (value < mn) mn = value;
return mn;
}
template<typename Type, typename... Args>
Type max(Args... args) {
auto seq = initializer_list<Type>({ args... });
auto mx = numeric_limits<Type>::min();
for (auto value : seq) if (value > mx) mx = value;
return mx;
}
int main() {
cout << ">>> ";
int a, b, c, d;
cin >> a >> b >> c >> d;
const auto mn = min<int>(a, b, c, d );
const auto mx = max<int>(a, b, c, d);
cout << "min: " << mn << "\nmax: " << mx << endl;
system("pause");
}
EM
El'dar Magomedov
88 348
Лучший ответ
#include <iostream>
#include <cmath>
using namespace std;
int main(){
int a, b, c, d;
cin >> a >> b >> c >> d;
cout << "Min = " << (a + ((((c + d - abs(c - d)) / 2) + b - abs(((c + d - abs(c - d)) / 2) - b)) / 2)- abs(a - ((((c + d - abs(c - d)) / 2) + b - abs(((c + d - abs(c - d)) / 2) - b)) / 2))) / 2 << endl;
cout << "Max = " << (a + ((((c + d + abs(c - d)) / 2) + b + abs(((c + d + abs(c - d)) / 2) - b))/ 2) + abs(a - ((((c + d + abs(c - d)) / 2) + b + abs(((c + d + abs(c - d)) / 2) - b)) / 2))) / 2 << endl;
cin.ignore();
cin.get();
return 0;
}
Брат Свой
Брат Свой
71 464
Берик Мырзакулов по моему проще было бы использовать массив чтобы хранить числа
и выводить резальтаты после обсчета значений

хотя автор не просил упрощать

Похожие вопросы