herrDeng網內搜尋

自訂搜尋

Ads

2008年9月11日 星期四

test

test請留言!

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

形態轉換int->float


int sum=596;

average=(double)sum/10;

average=sum/10;

有何不同?

64 則留言:

匿名 提到...

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

匿名 提到...

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

匿名 提到...

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

匿名 提到...

有打double時有小數點

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

匿名 提到...

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

B9633073 提到...

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

b9633085 提到...

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

anwendeng 提到...

答案用程式跑就知道!我問的是差別!

匿名 提到...

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

匿名 提到...

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

匿名 提到...

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

匿名 提到...

有用double比較佔記憶體空間
但是可以容納的小數位數比較多

匿名 提到...

int & double 的差別

在 int 只能接受整數而已

( 不接受小數的部分 )

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

(十進位的小數第15位)

匿名 提到...

int sum;這裡宣告sum為整數
之後那個double是改為可出現小數

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

anwendeng 提到...

RUN一次就知道!

匿名 提到...

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

B9633065許景翔(風紀) 提到...
作者已經移除這則留言。
b9633063 提到...

老師我run過了!真的!!
這是結果↓↓↓

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

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

沒換的話 就只有59

匿名 提到...

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

B9633065許景翔(風紀) 提到...

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

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

匿名 提到...

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

匿名 提到...

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

匿名 提到...

double是倍精確實數
有加double算出來的結果會有小數點
沒有加double算出來的結果是整數

匿名 提到...

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

匿名 提到...

int為整數型態
所以有加double會使產生的數有小數點
沒有加double則為整數

匿名 提到...

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

匿名 提到...

double 倍精確度浮點數
精確度比較高
EX:
123.456(double)
123.456f(float)

匿名 提到...

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

匿名 提到...

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

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

而沒加double 就是只取整數

匿名 提到...

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

匿名 提到...

有double四捨五入取到小數第一位(小數點)
沒有double只有整數

匿名 提到...

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

匿名 提到...

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

匿名 提到...

雙倍精度浮點數(double)佔8 bytes
浮點數(float)佔4 bytes

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

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

匿名 提到...

有double時,會以double去執行
如果沒有指示的話,會以int執行

匿名 提到...

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

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

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

匿名 提到...

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

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

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

匿名 提到...

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

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

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

匿名 提到...

int 宣告為整數
當沒有 double 時,只會以整數型態呈現。

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

匿名 提到...

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

匿名 提到...

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

匿名 提到...

double是倍精確實數
所以會取到小數第一位

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

匿名 提到...

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

匿名 提到...

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

匿名 提到...

float是單倍精確度
double是雙倍精確度
雙倍精確度會比單倍精確度來的精準

匿名 提到...

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

匿名 提到...

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

匿名 提到...

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

b9633060 提到...

沒加double時是整數
加了double運算出有小數
比較準確!!!!

匿名 提到...

沒加double時是整數
加了double運算出有小數

匿名 提到...

沒double沒小數點(小數點後數字無條件捨去)
有double有顯示小數點

匿名 提到...

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

匿名 提到...

有double的會有小數點,四捨五入到第一位
沒有double的話 就是整數

匿名 提到...

int為整數
有加double使數字會有小數點
沒有加double的為整數

匿名 提到...

一個有小數位
一個沒有小數位

匿名 提到...

int  沒有小數
float 有小數

Unknown 提到...

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

匿名 提到...

有double代表有小數點
表示的小數點範圍很大
沒有double只有整數
表示小數點的範圍比較小

匿名 提到...

有double時有小數點
反之無double時則為整數

匿名 提到...

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

匿名 提到...

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

匿名 提到...

double佔8 bytes
有小數點 (4捨5入取第6位)

float 佔4 bytes
沒小數

匿名 提到...

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

匿名 提到...

int為整數型態
所以有加double會使產生的數有小數點
沒有加double則為整數

Related Posts Plugin for WordPress, Blogger...

熱門文章