static public final boolean IsAbsoluteNull(double _value)
{
return (Math.abs(_value) == -273.15);
}
тогда уж до кучи:
static public final boolean IsFahrenheitNull(double _value)
{
return IsVeryNull(_value * 9.0 / 5.0 + 32);
}
Homo sum et nihil humani a me alienum puto...
Re: IsNull vs. IsVeryNull
От:
Аноним
Дата:
31.05.06 20:44
Оценка:
Здравствуйте, Fortnum, Вы писали:
F>
F>static public final boolean IsNull(double _value)
F>static public final boolean IsVeryNull(double _value)
F>
шутки шутками, но что-то не пойму, при чем тут Null ?
ведь по теории указателей (интересно, а есть такая теория ??? ) Null это дословно объект не существует но никак не ноль...
и не важно, что #define NULL 0
имхо вот так было бы и смешно и корректно )))) :
static public final boolean IsZero(double _value)
static public final boolean IsVeryZero(double _value)
Здравствуйте, mcf, Вы писали:
mcf>Здравствуйте, Mr. None, Вы писали:
MN>>Здравствуйте, Fortnum, Вы писали:
MN>>
MN>>static public final boolean IsAbsoluteNull(double _value)
MN>>{
MN>> return (Math.abs(_value) == -273.15);
MN>>}
MN>>
mcf>Вот так рождаются ошибки в программах mcf>Судя по назнанию функции, она должна бы выглядеть так банально: mcf>
mcf>static public final boolean IsAbsoluteNull(double _value)
mcf>{
mcf> return _value == 0.0;
mcf>}
mcf>
mcf>А вообще любителей ставить static поубибав бы!
Вот как рождаются люди без чуства юмора и знания физики.
Судя по названию форума всё что сюда постится, должно восприниматься в юмористическо-саркастическом ключе. Но, боюсь, если вы не знакомы с законами элементарной физики, юмора вы не поймёте... Я объясню...
Смысл этой шутки заключается в том, что, в физике абсолютным нулём называют температуру в 0 Кельвинов, что примерно соответсвует температуре -273.15 градусов по Цельсию. Приведённая мной функция называется IsAbsoluteNull, по названию видно, что она проверяет переданное значение на равенство абсолютному нулю... Это логическое продолжения набора функций, предложенных в вышеизложенных постах (IsNull, IsVeryNull). Согласен, возможно название можно трактовать двояко — не совсем ясно, в каких единицах измеряется переданная величина: в Цельсиях, Фаренгейтах или Кельвинах. Возможно надо было назвать функицю как-нибудь так: IsAbsoluteNullInCelsiusDegree, тогда вопросов бы не возникло вообще, но тогда название функции было бы слишком длинным и использование неудобным. Я вижу единственный выход из сложившейся, чрезвычайно неприятной ситуации — изменить сигнатуру функции:
static public final boolean IsAbsoluteNull(double _value, TemperatureMetrix _metrix);
где TemperatureMetrix — это перечисление возможных температурных метрик (Цельсий, Фаренгейт, Кельвин и т.д.)... Но поскольку это был всего лишь концепт прототипа будущей билиотеки для определения равенства величины абсолютному нулю, то я не стал приводить всех этих заключений и выводов.
Надеюсь вы меня поняли и дальнейшие рассуждения продолжите сами.
Компьютер сделает всё, что вы ему скажете, но это может сильно отличаться от того, что вы имели в виду.