知識社群登入
位置: AutoCAD開放式教學 > 討論區 > 討論
(n + 1) 一定大於 n ?
1樓
那可未必,

不管是 整數,或者是 浮點數,
不管是 長整數數,或是短的整數,
不管是 單精確度,或是雙倍精確度的浮點數,

(n + 1) 不一定會 大於 n

這是一個 很嚴重的問題,可是大家好像都 忽略了這個問題。
詳細,後稟,。。。。


2樓
#if 0

n= 2147483647, m= -2147483648
請按任意鍵繼續 . . .

目前的 int 所能夠表示的 最大整數為
2147483647,

這個數字加一,會變成 -2147483648.
這是因為電腦的內部,使用二的補數來
表示 負整數的關係。

詳細,請繼續參考 二的補數

#endif


#include <stdlib.h>
#include <stdio.h>

int main()
{
int n, m;
n= 10;
m= n + 1;// m > n
while (m > n) {
n++;
m= n + 1;
}
printf("n= %d, m= %d\n", n, m);
system("pause");
return 0;
}

3樓
這個程式,大概要跑個 10秒鐘吧!

所以,就引發出 另外的一個問題,

到底是 需要多少時間?
時間的測量,可以精確到什麼程度?

會使用到 ftime() 這個函數。
敬請 期待。