#include <iostream>
using namespace std;
//2つの引数の最大値を求める
int maxvalue(int a, int b)
{
if (a > b)
return a;
else
return b;
}
double maxvalue(double a, double b)
{
if (a > b)
return a;
else
return b;
}
float maxvalue(float a, float b)
{
if (a > b)
return a;
else
return b;
}
template <typename T>
T maxvalue(T a, T b)
{
if (a > b)
return a;
else
return b;
}
int main()
{
int x = 10, y = 30, z;
double x1 = 15.1, y1 = 10.1, z1;
z = maxvalue<int>(x, y);
z1 = maxvalue<double>(x1, y1);
cout << z << endl;
cout << z1 << endl;
return 0;
}