dlang-book/book/01-знакомство-с-языком-d/src/chapter-1-6/stats.d

48 lines
701 B
D

module stats;
interface Stat
{
void accumulate(double x);
void postprocess();
double result();
}
class Min : Stat
{
private double min = double.max;
void accumulate(double x)
{
if (x < min)
{
min = x;
}
}
void postprocess() {} // Ни­че­го не де­лать
double result()
{
return min;
}
}
class Max : Stat
{
private double max = double.min_normal;
void accumulate(double x)
{
if (x > max)
{
max = x;
}
}
void postprocess() {} // Ни­че­го не де­лать
double result()
{
return max;
}
}