Перевод десятичного числа в двоичное выполняется делением: исходное число делим на 2 (т.к. в двоичной системе алфавит состоит из 2 цифр: 0,1), в остатке должно получится либо 1, либо 0, если не получилось, то делим дальше (как в обычном делении) пока не получим в остатке либо 1, либо 0; после этого полученное частное делим на 2, и снова должны получить либо 1, либо 0; и так делаем до того момента, пока в частном не будет 0. Получившиеся остатки записываем в обратном порядке, получается исходное число в двоичной системе (в 8-ричной, 16-ричной системе то же самое, только вместо того, чтобы делить на 2, мы делим либо на 8, либо на 16)
Если я правильно понял задание:
#include <iostream>
#include <algorithm>
#include <clocale>
template<typename T>
void func(T&& var1, T&& var2)
{
auto var3 = std::minmax(var1, var2);
std::cout << "min = " << var3.first << " | " << " max = " << var3.second << std::endl;
}
template<typename T>
void func(T&& var1, T&& var2, T&& var3)
{
auto var4 = std::minmax({var1, var2, var3});
std::cout << "Макс. число больше мин. числа в " << var4.second / var4.first << std::endl;
}
int main()
{
std::setlocale(LC_ALL, "Russian");
float var1, var2, var3;
std::cin >> var1 >> var2;
func(var1, var2);
std::cin >> var1 >> var2 >> var3;
func(var1, var2, var3);
std::system("PAUSE >> void");
return 0;
}