計算結果問題 |
尚未結案
|
nanaya
一般會員 發表:25 回覆:33 積分:11 註冊:2004-07-13 發送簡訊給我 |
|
folkchen
高階會員 發表:9 回覆:232 積分:173 註冊:2003-10-09 發送簡訊給我 |
|
nanaya
一般會員 發表:25 回覆:33 積分:11 註冊:2004-07-13 發送簡訊給我 |
|
richtop
資深會員 發表:122 回覆:646 積分:468 註冊:2003-06-10 發送簡訊給我 |
nanaya 您好: 曾經有過的經驗是:
由於捨去誤差的關係,使得數值後面會帶一些其它數字,試著提高資料型態至double可解決部分問題。
或者是強迫以較精確的方式輸出結果,如限定小數點後出現的位數。參考下述程式碼:
void __fastcall TForm1::Button1Click(TObject *Sender) { AnsiString msg; for (int i=1 ; i<=10 ; i ) { msg.printf("%.3f",-0.55 i*0.55 ); Edit1->Text=msg; Edit1->Refresh(); Sleep(200); } }另外有一件事小小聲悄悄告訴您:我在BCB6下測試您提出的程式碼好像沒有問題!? |
folkchen
高階會員 發表:9 回覆:232 積分:173 註冊:2003-10-09 發送簡訊給我 |
|
nanaya
一般會員 發表:25 回覆:33 積分:11 註冊:2004-07-13 發送簡訊給我 |
|
nlj859
資深會員 發表:139 回覆:375 積分:322 註冊:2004-03-20 發送簡訊給我 |
|
nanaya
一般會員 發表:25 回覆:33 積分:11 註冊:2004-07-13 發送簡訊給我 |
|
richtop
資深會員 發表:122 回覆:646 積分:468 註冊:2003-06-10 發送簡訊給我 |
|
nanaya
一般會員 發表:25 回覆:33 積分:11 註冊:2004-07-13 發送簡訊給我 |
|
richtop
資深會員 發表:122 回覆:646 積分:468 註冊:2003-06-10 發送簡訊給我 |
nanaya 您好:
引言:a為16進制資料(a=01~0A) Edit1->Text=AnsiString(FormatFloat("0.00",StrToInt(a))*0.55-0.55)a的值有點奇怪,如果要當成16進位應該在其前加上0x或0X,即0x00,...,0x0A,.., 如果只是當成您寫的方式,開頭的0會被認為是8進位數,這時08以上表示法就錯了(雖然還是會傳回值)。 RichTop 敬上 =====***** 把數學當工具,可以解決問題;將數學變能力,能夠發現並解決問題! =====##### 發表人 - richtop 於 2004/07/27 19:31:52 |
ubong
一般會員 發表:2 回覆:42 積分:23 註冊:2002-10-02 發送簡訊給我 |
Edit1->Text=AnsiString(FormatFloat("0.00",StrToInt(a))*0.55-0.55)
如果你的輸入沒錯應該是
Edit1->Text=AnsiString(FormatFloat("0.00",(StrToInt(a)*0.55-0.55));
而且你的程式只會顯示i=9 時的結果 (i=1--8的計算是無意義的。)
你應該用個ListBox來顯示才有意義
ListBox1->Clear();
ListBox1->Items->Add(AnsiString(FormatFloat("0.00",(StrToInt(a)*0.55-0.55)));
P.S. 我沒有實作,只就你的內文作分析。 ubong
------
ubong |
nlj859
資深會員 發表:139 回覆:375 積分:322 註冊:2004-03-20 發送簡訊給我 |
|
nlj859
資深會員 發表:139 回覆:375 積分:322 註冊:2004-03-20 發送簡訊給我 |
看看你寫的是否和我的一樣.
AnsiString k; AnsiString n[11]={"0","1","2","3","4","5","6","7","8","9","a"}; for (int i=0;i<11;i ) { k=StrToInt("0x" n[i]); //16轉10 AnsiString aaa=FormatFloat("0.00",StrToInt(k))*0.55-0.55; //計算 Memo1->Lines->Add(aaa); //顯示 }發表人 - nlj859 於 2004/07/31 12:56:09 |
nanaya
一般會員 發表:25 回覆:33 積分:11 註冊:2004-07-13 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |