全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:768
推到 Plurk!
推到 Facebook!

class的基本問題

尚未結案
dragonliu01
一般會員


發表:19
回覆:16
積分:7
註冊:2004-12-21

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-05-17 21:53:51 IP:134.208.xxx.xxx 未訂閱
題目是要印出多項式,並算其値... 修改過原來的程式碼了...不過算出來總少了最後指數為0的項,請問我哪裡寫錯了??
#include
#include
using namespace std;        class Poltnomial
    {
    private :
      double cof[50],x;//cof為存係數之陣列
      int TermNum,i;//項數 
    public  : 
      Poltnomial(){for(i=0;i<50;i  )cof[i]=0;} //初始化cof 
      void setTerm(int TermNum); 
      void eval(double x); 
      void showPolynomial(); 
    };               void Poltnomial::setTerm(int Num) 
           {
              int elm1;
              TermNum=Num; 
            for(i=0 ;i>elm1;
                    cof[i]=elm1;
               }                
           }              void Poltnomial::eval(double inputnum)
          {
            double ans=0;
            x=inputnum; 
            for(i=TermNum;i>=0;i--)   
                ans=cof[TermNum-i]*pow(x,(double)i) ans;
             cout<<'='<=0;j--)//印出多項式 ,並降冪排列
               { if (cof[TermNum-j]>0)
                    cout<<' '<        發表人 - dragonliu01 於 2005/05/18  00:32:32
        
richtop
資深會員


發表:122
回覆:646
積分:468
註冊:2003-06-10

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-05-18 00:34:19 IP:211.76.xxx.xxx 未訂閱
dragonliu01 您好:    showPolynomial()建議修改如下,試試看!    
          void showPolynomial()
          {
            for(int j=TermNum;j>=0;j--)                
               { if ( cof[j]>0 )
                    cout<<"  "<    RichTop 敬上    =====*****
把數學當工具,可以解決問題;將數學變能力,能夠發現並解決問題!
=====#####
        
dragonliu01
一般會員


發表:19
回覆:16
積分:7
註冊:2004-12-21

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-05-18 01:09:55 IP:134.208.xxx.xxx 未訂閱
引言: dragonliu01 您好: showPolynomial()建議修改如下,試試看!
          void showPolynomial()
          {
            for(int j=TermNum;j>=0;j--)                
               { if ( cof[j]>0 )
                    cout<<"  "<    RichTop 敬上    =====*****
把數學當工具,可以解決問題;將數學變能力,能夠發現並解決問題!
=====#####
回richTop大大, 我的問題應該是在eval的funtion上,不過還是感謝您的回答... 發表人 - dragonliu01 於 2005/05/18 01:57:42
blk5743
高階會員


發表:34
回覆:371
積分:236
註冊:2003-11-17

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-05-18 09:15:54 IP:61.66.xxx.xxx 未訂閱
dragonliu01你好    以下的判斷有問題  
 
      void Poltnomial::showPolynomial()
          {
            for(int j=TermNum;j>=0;j--)//印出多項式 ,並降冪排列
               { if (cof[TermNum-j]>0)
                    cout<<' '<
你的範例為輸入五個數字
但是卻要輸出六項
而你的第6巷的值為0(被你初始化為0)
但你的的判斷是卻只有判斷大於0或小於零0
沒有考慮到等於0的狀況(我知道0就不用顯示了吧)
所以你的0次方的值為0,所以不顯示     
        
dragonliu01
一般會員


發表:19
回覆:16
積分:7
註冊:2004-12-21

發送簡訊給我
#5 引用回覆 回覆 發表時間:2005-05-18 12:09:22 IP:134.208.xxx.xxx 未訂閱
再做了一點修正....
#include
#include
using namespace std;        class Poltnomial
    {
    private :
      double cof[50],x;//cof為存係數之陣列
      int TermNum,i;//項數 
    public  : 
      Poltnomial(){for(i=0;i<50;i  )cof[i]=0;} //初始化cof 
      void setTerm(int TermNum); 
      void eval(double x); 
      void showPolynomial(); 
    };               void Poltnomial::setTerm(int Num) 
           {
              int elm1;
              TermNum=Num; 
            for(i=0 ;i>elm1;
                    cof[i]=elm1;
               }                
           }              void Poltnomial::eval(double inputnum)
          {
            double ans=0;
            x=inputnum; 
            for(i=TermNum-1;i>=0;i--)   
                ans=cof[TermNum-i-1]*pow(x,(double)i) ans;   //算出多項式的答案 
             cout<<'='<=0;j--)//印出多項式 
               { if (cof[TermNum-j]>0)
                    cout<<' '<    不過還是老問題,前面blk大大的回答我已經修正,變成是輸出5項,不過印出方面還是缺少0次方的項(0次方的係數是cof[4],應該會有値才對呀...)    請各位幫我這初學者看一下囉...謝謝!!        發表人 - dragonliu01 於 2005/05/18  12:13:04
        
blk5743
高階會員


發表:34
回覆:371
積分:236
註冊:2003-11-17

發送簡訊給我
#6 引用回覆 回覆 發表時間:2005-05-18 13:50:38 IP:61.66.xxx.xxx 未訂閱
dragonliu01你好    請改成  
 
      void Poltnomial::showPolynomial()
          {
            for(int j=0;j0)
                    cout<<' '<     
        
系統時間:2024-06-16 16:34:23
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!