網頁

2008年9月11日 星期四

test

test請留言!

到第十前,都沒說對!提示一下:

形態轉換int->float


int sum=596;

average=(double)sum/10;

average=sum/10;

有何不同?

64 則留言:

  1. 有double時會有小數點
    沒有double則只有整數

    回覆刪除
  2. double是倍精浮點數
    有double可以表示的小數點範圍很大
    沒有double的話
    能表示小數點的範圍一定比較小
    相較之下
    float可以表示小數點範圍
    就比double來的小
    順帶一提
    float是4 bytes
    double是8 bytes
    byte 的值域 -128 ~ 127

    回覆刪除
  3. 有double(8 bytes)
    可以表示的小數點範圍很大
    沒有double
    能表示小數點的範圍一定比較小
    相較之下
    float(4 bytes)
    可以表示小數點範圍
    就比double來的小
    byte 的值域 -128 ~ 127

    回覆刪除
  4. 有打double時有小數點

    沒有打double時則只有到整數
    沒有小數點

    回覆刪除
  5. 有double有小數
    沒double沒小數
    double是8bytes可印出8個數字含小數點
    超過8bytes的小數點會無條件四捨五入

    回覆刪除
  6. 較大的浮點數型態轉至較小的浮點數型態
    會有潛在問題
    也就是會漏失精確度
    原值可能超出目的型態所能容納的範圍
    如此結果不可預知
    float有效位數有4個位元組
    而double有6個位元組

    回覆刪除
  7. 要注意的是較大的浮點數型態轉至較小的浮點數型態
    會有潛在問題 也就是會漏失精確
    原值可能超出目的型態所能容納的範圍
    如此結果不可預知
    因為float的有效位數至少有4個位元組
    而double至少有6個位元組

    回覆刪除
  8. 答案用程式跑就知道!我問的是差別!

    回覆刪除
  9. 有加 double 的類型變量跟沒加 double 的類型變量,差別是所需記憶體空間大小及值域所能接受的範圍不一樣。

    回覆刪除
  10. double倍精確度資料型別
    長度為64位元(8Bytes)
    在程式中
    有加double時
    可執行有效位數15位數
    如果沒加double時
    則只會到整數位

    回覆刪除
  11. double 倍精確數資料型態,所佔空間8bytes(當你宣告這個變數時,這個程式就在記憶體中佔用的空間)。值的範圍 1.7*10^-308 ~ +1.7*10^+308(這個變數所能接受的最大數值或範圍)。

    回覆刪除
  12. 有用double比較佔記憶體空間
    但是可以容納的小數位數比較多

    回覆刪除
  13. int & double 的差別

    在 int 只能接受整數而已

    ( 不接受小數的部分 )

    但 double 卻包含了整數及浮點數

    (十進位的小數第15位)

    回覆刪除
  14. int sum;這裡宣告sum為整數
    之後那個double是改為可出現小數

    沒有double的話,跑出來sum會是整數
    有double的話,double是宣告sum為小數
    差在sum表達的方式

    回覆刪除
  15. 在int的情況下,
    相除下來如果有小數:
    有加double會在小數最末位四捨五入;
    沒有加double則會直接刪去小數位。

    回覆刪除
  16. 老師我run過了!真的!!
    這是結果↓↓↓

    int sum=596;
    average=(double)sum/10;
    average=sum/10;

    把int sum=596;的int換成double
    宣告average為double
    run出59.6

    沒換的話 就只有59

    回覆刪除
  17. 運算式決定最後型態是依照某個最大型態來決定的,double>float>int,所以前者(double)為最大型態數,後者(無double,只有int型態)為最小型態數。

    回覆刪除
  18. 有double會四捨五入到小數第一位
    沒有double的話 就只有除出來的整數

    老師 我跟B9633063一起RUN過了!真的!
    可是他比我先打了..冏
    我的台詞都被他搶走了= =!

    回覆刪除
  19. float 是單精準度
    當浮點數ㄉ小數超過第六位時
    會以四捨五入法取到小樹第六位
    double 是雙精準度
    當浮點數ㄉ小數位超過15位數
    會自動四捨五入到第15位

    回覆刪除
  20. double為類別上的靜態資料成員,表示double型態的正無限大值,也可能表示浮點數的一個非數字型態,表示數學上的未定義值,正無限大就是無限大數,所以比較會正確

    回覆刪除
  21. double是倍精確實數
    有加double算出來的結果會有小數點
    沒有加double算出來的結果是整數

    回覆刪除
  22. int宣告的是整數.
    而有加double會取到小數第一位,
    沒有的話就會取整數。

    回覆刪除
  23. int為整數型態
    所以有加double會使產生的數有小數點
    沒有加double則為整數

    回覆刪除
  24. 當程式中有double時,
    若無法整數除盡,小數點超過第5位時,
    會以四捨五入法取小數點第4位,
    所以整數+小數點最多為7位,
    由於double長度為64位元(8Bytes),
    而1個字元佔2Bytes,7*2=14,
    所以最高只能取到小數點第4位。
    若沒加入double,則會直接取整數,
    小數點無條件捨去。
    程式中,加不加入double,差別應該是這個
    以上,程式跑過後,我的想法。

    回覆刪除
  25. double 倍精確度浮點數
    精確度比較高
    EX:
    123.456(double)
    123.456f(float)

    回覆刪除
  26. int宣告為整數
    而有加double會四捨五入取到小數第一位,
    沒有加double的話是會取整數
    double倍精確度浮點數
    精確度比較高

    回覆刪除
  27. 有加double 在執行結果如果無法整除
    因為只有顯示六位數
    所以會在第6個數字後進行四捨五入

    例:
    原本:813/7=116.142857....
    經程式Run過得:116.143

    而沒加double 就是只取整數

    回覆刪除
  28. 因為上面宣告sum是整數而average=(double)sum/10;就是把sum轉換成double的型態強制他不成為整數,而average=sum/10 因它上面宣告 int sum;所以顯示出來的會是整數。

    回覆刪除
  29. 有double四捨五入取到小數第一位(小數點)
    沒有double只有整數

    回覆刪除
  30. double和float都可以顯示小數點,可是因為doubel是8bytes,但float卻是4bytes!所以相較記憶體大小之下,double所能表達的小數點就比float要的多~懂嗎?!所以在沒有相當的必要下,選用float比double要省電腦資源的多! 喔,對了,int是整數宣告

    回覆刪除
  31. 宣告sum為int,int為整數資料
    所以求 average =sum / 10的值會為整數
    如果加上 double
    而sum必須已double的形式運算
    double為倍精確度資料,可印出小數位數資料
    則求 average =(double) sum / 10的值會出現小數位數資料

    回覆刪除
  32. 雙倍精度浮點數(double)佔8 bytes
    浮點數(float)佔4 bytes

    雙倍精度浮點數(double)比浮點數(float)可存放範圍還大!

    依照程式RUN~不加double,只顯示整數!
    加double,顯示至小數第三位!

    回覆刪除
  33. 有double時,會以double去執行
    如果沒有指示的話,會以int執行

    回覆刪除
  34. 測出來的結果是有無小數點之分
    有double的話就有小數點
    因代表的空間可以比較大

    沒double的話就沒有小數點
    是整數代表空間較小了,因此四捨五入

    double所佔的空間比較大
    float=4個位元組
    double=8個位元組

    回覆刪除
  35. 測出來的結果是有無小數點之分
    有double的話就有小數點
    因代表的空間可以比較大

    沒double的話就沒有小數點
    是整數代表空間較小了,因此四捨五入

    double所佔的空間比較大
    float=4個位元組
    double=8個位元組

    回覆刪除
  36. 測出來的結果是有無小數點之分
    有double的話就有小數點
    因代表的空間可以比較大

    沒double的話就沒有小數點
    是整數代表空間較小了,因此四捨五入

    double所佔的空間比較大
    float=4個位元組
    double=8個位元組

    回覆刪除
  37. int 宣告為整數
    當沒有 double 時,只會以整數型態呈現。

    float 宣告為浮點數
    因為 double 佔 8 bytes
       float 佔 4 bytes
    兩者相較之下,所佔的記憶體大小也有所不同。
    所以,當有 double 時,會以浮點數型態呈現。
    並且會四捨六入輸出結果。

    回覆刪除
  38. (doubie)倍精度浮點數是佔有8bit的空間
    而浮點數所佔是4bit的空間
    而且浮點數表示的範圍在1.2e-38到3.4e38
    而倍精度浮點數所表示的範圍在2.2e-308到1.8e308
    應該是這樣吧! 錯了我就不知道囉!

    回覆刪除
  39. int宣告sum為整數
    加了double的話就會到小數點
    而小數則分為float和double
    double表達的範圍較float大
    所以有些小數在double裡可以表達
    但在float裡則不行

    回覆刪除
  40. double是倍精確實數
    所以會取到小數第一位

    如果不加double
    就會直接進位...

    回覆刪除
  41. 啊,我剛剛說錯了
    如果不加double
    就會無條件捨去...

    回覆刪除
  42. double意思是倍精確實數ㄉ意思,加上了double的話~~最後的結果會出現小數第三位,如果沒有加double最後的結果會是整數

    回覆刪除
  43. float是單倍精確度
    double是雙倍精確度
    雙倍精確度會比單倍精確度來的精準

    回覆刪除
  44. double雙倍精度浮點數
    用了八個位元組存放單精度浮點數
    功能可以顯示到小數點
    但是佔了比較大的記憶體

    回覆刪除
  45. int是整數的資料型態
    運算出來的數字沒有小數
    而double是倍精浮點數
    運算出來的數字會有小數
    也比較精確

    回覆刪除
  46. 因為sum的型態是整數(int)
    所以沒加double時得出來的數一定是整數
    如果加了double是強制把小數點顯示出來

    回覆刪除
  47. 沒加double時是整數
    加了double運算出有小數
    比較準確!!!!

    回覆刪除
  48. 沒加double時是整數
    加了double運算出有小數

    回覆刪除
  49. 沒double沒小數點(小數點後數字無條件捨去)
    有double有顯示小數點

    回覆刪除
  50. 有int只會到整數(不會有小數)
    變換成double會到末端再四捨五入
    程式已run過

    回覆刪除
  51. 有double的會有小數點,四捨五入到第一位
    沒有double的話 就是整數

    回覆刪除
  52. int為整數
    有加double使數字會有小數點
    沒有加double的為整數

    回覆刪除
  53. 一個有小數位
    一個沒有小數位

    回覆刪除
  54. int  沒有小數
    float 有小數

    回覆刪除
  55. bouble為雙精浮點數 可顯示小數點範圍廣 所以運算的結果會較為精確

    回覆刪除
  56. 有double代表有小數點
    表示的小數點範圍很大
    沒有double只有整數
    表示小數點的範圍比較小

    回覆刪除
  57. 有double時有小數點
    反之無double時則為整數

    回覆刪除
  58. int為整數型態
    只會到整數
    double 倍精確度浮點數精確度比較高
    有double會在小數最末位四捨五入
    沒有double會直接刪去小數位

    回覆刪除
  59. int是宣告為整數
    double倍精準度
    有加double時
    最多可達15小數位數
    沒有double
    就只有整數
    因為只有int咩

    回覆刪除
  60. double佔8 bytes
    有小數點 (4捨5入取第6位)

    float 佔4 bytes
    沒小數

    回覆刪除
  61. 當加了int
    就"只能"顯示出整數
    而double
    是可以有整數and小數點
    有些程式會需要加上double
    就是為了要更精確的得到答案
    可是~
    加了double
    所佔的位元會更大喔

    回覆刪除
  62. int為整數型態
    所以有加double會使產生的數有小數點
    沒有加double則為整數

    回覆刪除

HTML 編輯器