我想知道下面的C程序是否可能打印其他的東西然後0?加法和減法時的數值問題
double f(double x, double y) {
return x*x/x+x*x*x; // or whatever operations using *, /, +, -
}
int main(int argc, char** argv) {
double x = 4.0;
double y = 5.0;
double z = f(x,y);
x += 1e-7;
x -= 1e-7;
printf("%f\n", (f(x,y+1e-7)-z)/1e-7);
return 0;
}
任何人都可以啓發我關於此? 乾杯,
你爲什麼不試試看? – SomeWittyUsername
只是因爲我無法重現它。我只是想看看這個代碼總是會打印0,無論在函數f中使用什麼操作。 – syl