Информация об изменениях

Сообщение Re: Как провести вычисление только в рамках типа float, а не от 01.12.2016 12:56

Изменено 01.12.2016 12:59 kov_serg

Здравствуйте, oziro, Вы писали:

O>Привет!

O>(Если кто не понял, это попытка получить значения DBL_EPSILON и FLT_EPSILON, которых по какой-то причине не завезли в дотнет)
Просто проводи вычисления с типом float и все промежуточные результаты складывай во временные переменные

    static float eps() {
        float x = 1/3f, y = 3*x-1; 
        return y;
    }
    static float eps1() {
        float x = 1,y = 1,t;
        do {
            t = x + y;
            y /=2;
        } while (t != x);
        return y;
    }
Re: Как провести вычисление только в рамках типа float, а не
Здравствуйте, oziro, Вы писали:

O>Привет!

O>(Если кто не понял, это попытка получить значения DBL_EPSILON и FLT_EPSILON, которых по какой-то причине не завезли в дотнет)
Просто проводи вычисления с типом float и все промежуточные результаты складывай во временные переменные

static float eps() {
    float x = 1/3f, y = 3*x-1; 
    return 2*y;
}
static float eps1() {
    float x = 1,y = 1,t;
    for(;;) {
        t = x + y;
        if (t == x) return y;
        y /= 2;
    }
}