線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1119
推到 Plurk!
推到 Facebook!

一些關於"="的問題

尚未結案
Ece.Winson
一般會員


發表:13
回覆:19
積分:6
註冊:2003-05-27

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-05-29 17:11:22 IP:211.75.xxx.xxx 未訂閱
各位大大:         下面是我在嘗試加法程式時的一些問題         小弟試了很久都未能解決懇請各位能提         供意見,謝謝             (1).在程式執行完第一次加法後,只要再          按一次"="號程式便將第一次的輸入值纍          加上去.          (2).如果想將加減乘除都寫在"="號的程          式中,該怎麼撰寫才行呢.                    希望各位能夠幫忙,解答我的疑惑謝謝             (百思不解的)   Ece.Winson上 //--------------------------------------------------------------------------- #include  #pragma hdrstop #include "Unit1.h" //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1; float temp; //--------------------------------------------------------------------------- __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } //--------------------------------------------------------------------------- void __fastcall TForm1::Button1Click(TObject *Sender) { temp=StrToInt(Edit1->Text); Edit1->Text=""; } //--------------------------------------------------------------------------- void __fastcall TForm1::Button2Click(TObject *Sender) { Edit1->Text=FloatToStr(temp+StrToInt(Edit1->Text)); } //---------------------------------------------------------------------------
turboted
版主


發表:95
回覆:754
積分:452
註冊:2002-07-23

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-05-29 18:57:29 IP:210.241.xxx.xxx 未訂閱
你這種想法和一般的昨法不太一樣 在我們一般寫的小算盤裏 我們是把 -*/ 分成四個button而且分開計算 例如 temp=temp StrToInt(Edit1->Text); temp=temp-StrToInt(Edit1->Text); temp=temp*StrToInt(Edit1->Text); temp=temp/StrToInt(Edit1->Text); 四則運算分別寫在四個button裏面 而temp可以設成全域變數,也可用傳參數方式都可以
Ece.Winson
一般會員


發表:13
回覆:19
積分:6
註冊:2003-05-27

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-05-29 19:45:32 IP:211.75.xxx.xxx 未訂閱
turboted您好: 謝謝您的回應,照您所說 -*/ 分成四 個button而且分開計算那麼"="裡面要怎麼寫呢? 謝謝 Ece.Winson上
taishyang
站務副站長


發表:377
回覆:5490
積分:4563
註冊:2002-10-08

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-05-29 21:35:40 IP:140.135.xxx.xxx 未訂閱
Ece.Winson您好:   我寫了一個還是很遜的範例您參考看看,還有要注意其他細節   ex.要注意除數不能為0.
 
int compute; //暫存用
int op; //判斷+-/*用
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------
//+號
void __fastcall TForm1::Button1Click(TObject *Sender)
{
 int temp=StrToInt(Edit1->Text);
 compute=compute+temp;
 Edit2->Text=compute;
 Edit1->Text="";
 op=1;
}
//---------------------------------------------------------------------------    void __fastcall TForm1::Button5Click(TObject *Sender)
{
 switch (op)
 {
   case 1:
      Edit2->Text=StrToInt(Edit2->Text)+StrToInt(Edit1->Text);
      break;
   case 2:
      Edit2->Text=StrToInt(Edit2->Text)-StrToInt(Edit1->Text);
      break;
   case 3:
      Edit2->Text=StrToInt(Edit2->Text)*StrToInt(Edit1->Text);
      break;
   case 4:
      Edit2->Text=StrToInt(Edit2->Text)/StrToInt(Edit1->Text);
      break;
 }    }
//---------------------------------------------------------------------------
//c清除
void __fastcall TForm1::Button6Click(TObject *Sender)
{
 Edit1->Text="";
 Edit2->Text="";
 compute=0;
 op=0;
}
//---------------------------------------------------------------------------
 //-號
void __fastcall TForm1::Button2Click(TObject *Sender)
{
  int temp=StrToInt(Edit1->Text);
  if (op==0)
   {
    compute=StrToInt(Edit1->Text);
   }
  else
  compute=compute-temp;      Edit1->Text="";
  Edit2->Text=compute;
  op=2;
}
//---------------------------------------------------------------------------
//*號
void __fastcall TForm1::Button4Click(TObject *Sender)
{
  int temp=StrToInt(Edit1->Text);
  if (op==0)
   {
    compute=StrToInt(Edit1->Text);
   }
  else
  compute=compute*temp;
  
  Edit1->Text="";
  Edit2->Text=compute;
  op=3;
}
//---------------------------------------------------------------------------
///號
void __fastcall TForm1::Button3Click(TObject *Sender)
{
  int temp=StrToInt(Edit1->Text);
  if (op==0)
   {
    compute=StrToInt(Edit1->Text);
   }
  else
  compute=compute/temp;
  Edit1->Text="";
  Edit2->Text=compute;
  op=4;
}
//---------------------------------------------------------------------------
 
順心 <>~我也是在學習的階段,所以請您多多見諒與指教~ 發表人 -
turboted
版主


發表:95
回覆:754
積分:452
註冊:2002-07-23

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-05-29 21:50:09 IP:218.166.xxx.xxx 未訂閱
taishyang兄為您寫了一個sample ..相信夠用了
Ece.Winson
一般會員


發表:13
回覆:19
積分:6
註冊:2003-05-27

發送簡訊給我
#6 引用回覆 回覆 發表時間:2003-05-30 12:55:00 IP:140.134.xxx.xxx 未訂閱
taishyang大大您好:               謝謝您所寫的sample和提供的指導,               小弟一定會將此一sample仔細了解後               認真學習的.謝謝                      Ece.Winson上
Ece.Winson
一般會員


發表:13
回覆:19
積分:6
註冊:2003-05-27

發送簡訊給我
#7 引用回覆 回覆 發表時間:2003-05-31 20:34:28 IP:203.203.xxx.xxx 未訂閱
taishyang大大你好 關於你寫給我的加減乘除的sample 我已經有去嘗試過 也把當除法遇到0的問題解決掉了 我想問的是 加法可以一直連加下去 但是其他的減乘除就無法連續 然後小弟我有在一直去嘗試 不過都還是沒有成功 可否麻煩大大解決一下我的疑惑
taishyang
站務副站長


發表:377
回覆:5490
積分:4563
註冊:2002-10-08

發送簡訊給我
#8 引用回覆 回覆 發表時間:2003-05-31 22:36:30 IP:61.231.xxx.xxx 未訂閱
Ece.Winson您好:   抱歉,我這禮拜回家了,家裡電腦沒灌BCB所以沒辦法幫您解決問題   不過我記得我測試時是可以連續運算的< > 等我禮拜一回學校時再幫您解決< > 不過您可以先用Debug的方式看看問題出在哪裡... 順心 <>~我也是在學習的階段,所以請您多多見諒與指教~
Ece.Winson
一般會員


發表:13
回覆:19
積分:6
註冊:2003-05-27

發送簡訊給我
#9 引用回覆 回覆 發表時間:2003-06-02 15:34:56 IP:61.221.xxx.xxx 未訂閱
taishyang大大您好:                  關於連續加減乘除的問題,                  小弟已將此問題改善.                  不過,再這裡又遇到另一個問題                  如下圖所示,2.6*3的結果應該是7.8                  但是在這裡出現的卻不是                  小弟經過嘗試還是寫不出來                  可否請大大提供您的意見加以指導                  謝謝.                                      Ece.Winson   上
brant
一般會員


發表:1
回覆:64
積分:23
註冊:2003-04-07

發送簡訊給我
#10 引用回覆 回覆 發表時間:2003-06-02 15:39:51 IP:61.219.xxx.xxx 未訂閱
引言: taishyang大大您好: 關於連續加減乘除的問題, 小弟已將此問題改善. 不過,再這裡又遇到另一個問題 如下圖所示,2.6*3的結果應該是7.8 但是在這裡出現的卻不是 小弟經過嘗試還是寫不出來 可否請大大提供您的意見加以指導 謝謝. Ece.Winson 上
使用浮點數的關係 直接拿算出來的結果丟出來通常都會這樣 請先計算好結果應有幾位小數 把結果四捨五入到應有的小數位放到一個字串內再秀出來
taishyang
站務副站長


發表:377
回覆:5490
積分:4563
註冊:2002-10-08

發送簡訊給我
#11 引用回覆 回覆 發表時間:2003-06-02 15:46:28 IP:140.135.xxx.xxx 未訂閱
Ece.Winson您好:   我來補充四捨五入的方式   http://delphi.ktop.com.tw/topic.php?TOPIC_ID=29978 順心 <>~我也是在學習的階段,所以請您多多見諒與指教~
Ece.Winson
一般會員


發表:13
回覆:19
積分:6
註冊:2003-05-27

發送簡訊給我
#12 引用回覆 回覆 發表時間:2003-06-02 16:48:09 IP:61.221.xxx.xxx 未訂閱
taishyang大大您好:                  感謝您所提供的建議及指導                  小弟已將這個問題解決                  非常謝謝您的指導                    >
taishyang
站務副站長


發表:377
回覆:5490
積分:4563
註冊:2002-10-08

發送簡訊給我
#13 引用回覆 回覆 發表時間:2003-06-02 17:13:29 IP:140.135.xxx.xxx 未訂閱
Ece.Winson您好:  
引言:感謝您所提供的建議及指導
是brant大哥,不是我 >
brant
一般會員


發表:1
回覆:64
積分:23
註冊:2003-04-07

發送簡訊給我
#14 引用回覆 回覆 發表時間:2003-06-02 17:20:59 IP:61.219.xxx.xxx 未訂閱
引言: Ece.Winson您好:
引言:感謝您所提供的建議及指導
是brant大哥,不是我 > < face="Verdana, Arial, Helvetica"> 啊~~都一樣啦...
Ece.Winson
一般會員


發表:13
回覆:19
積分:6
註冊:2003-05-27

發送簡訊給我
#15 引用回覆 回覆 發表時間:2003-06-02 17:38:27 IP:61.30.xxx.xxx 未訂閱
各位大大:         總之都很感謝您們的指導及協助                             >
系統時間:2024-05-18 6:17:37
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!