Trang 1 trên tổng số 2 12 Cuối cùngCuối cùng
Từ 1 tới 10 trên tổng số 15 kết quả

Đề tài: Hỏi về chương trình dịch trong C++

  1. #1
    Ngày gia nhập
    11 2007
    Nơi ở
    Hà Nội
    Bài viết
    520

    Thumbs up Hỏi về chương trình dịch trong C++

    Em chỉ mới biết C ,và bây giờ đang học C++
    theo mọi người nên dùng chương trình dịch nào
    Hiện giờ em đang dùng DEV C++4.9.9.2 nhưng dịch không được vì toàn báo lỗi
    cụ thể chỉ 1 đoạn chương trình nhỏ sau mà không dịch được
    C++ Code:
    1. #include <conio.h>
    2. #include <iostream>
    3. #include <math.h>
    4. using namespace std;
    5.  
    6. class DT
    7. {private:
    8.     int n;      //bac da thuc
    9.     double *a;  //Tro toi vung nho cac he so
    10.  
    11. public  :
    12.     DT()
    13.     {
    14.         this->n=0;
    15.         this->a=NULL;
    16.     }
    17.     DT(int n1)
    18.     {   this->n=n1;
    19.         this->a=new double[n1+1];
    20.     }
    21.     DT(const DT &d);
    22.     ostream& operator<< (ostream& os,const DT &d);
    23.     istream& operator>> (istream& is,DT &d);
    24. }
    25. DT::DT(const DT &d)
    26. {
    27.     this->n=d.n;
    28.     this->a=new double[d.n+1];
    29.     for(int i=0;i<=d.n;++i)
    30.     *(this->a+i)=*(d.a+i);
    31. }
    32. ostream& DT::operator<< (ostream& os,const DT &d)
    33. {
    34.     os<<"Cac he so tu a0 :";
    35.     for(int i=0;i<=d.n;++i)
    36.         os<<*(d.a+i)<<" ";
    37.     return os;
    38. }
    39.  
    40. istream& DT::operator>> (istream& is,DT &d)
    41. {
    42.     if(d.a!=NULL) delete d.a;
    43.     cout<<"Bac cua da thuc :";
    44.     is>>d.n;
    45.     for(int i=0;i<=d.n;++i)
    46.     {
    47.         cout<<"He so bac"<<i<<" :";
    48.         is>>*(d.a+i);
    49.     }
    50.     return is;
    51. }
    52. void main()
    53. {
    54.     DT d;
    55.     clrscr();
    56.     cout<<"Nhap da thuc d :";
    57.     cin>>d;
    58.     DT u(d);
    59.     cout<<"Da thuc d:"<<d;
    60.     cout<<"Da thuc u:"<<u;
    61.     cout<<"Nhap da thuc d :";
    62.     cin>>d;
    63.     cout<<"Da thuc d:"<<d;
    64.     cout<<"Da thuc u:"<<u;
    65.     cout<<"Nhap da thuc u :";
    66.     cin>>u;
    67.         cout<<"Da thuc u:"<<u;
    68.     getch();
    69.     }
    theo mọi người đoạn code trên có thể dịch trên Visual C++2005 không
    cách thức thục hiện ra sao, mong mọi người chỉ rõ ,
    Em cám ơn trước

  2. #2
    Ngày gia nhập
    01 2008
    Nơi ở
    Rất nhiều sóng gió
    Bài viết
    445

    Trích dẫn Nguyên bản được gửi bởi quangnh89 Xem bài viết
    Em chỉ mới biết C ,và bây giờ đang học C++
    theo mọi người nên dùng chương trình dịch nào
    Hiện giờ em đang dùng DEV C++4.9.9.2 nhưng dịch không được vì toàn báo lỗi
    Nó báo lỗi tức là code sai hoặc một tính năng không được hỗ trợ ở trình biên dịch. Nếu bạn biết rõ tính năng không được hỗ trợ thì hãy nói đến chuyện tìm trình biên dịch khác. Nếu bạn không biết rõ có phải do tính năng không được hỗ trợ hay không thì nên nghĩ là code sai và đi mà tìm cách fix code, đừng cãi trình biên dịch.

  3. #3
    Ngày gia nhập
    12 2006
    Nơi ở
    US
    Bài viết
    1,917

    - DevC++ không có void main() !
    - Không có #include <conio.h>

  4. #4
    Ngày gia nhập
    02 2008
    Nơi ở
    Việt Nam
    Bài viết
    577

    #include <conio.h> cái này có chứ anh
    Nhưng code báo rất nhiều lỗi em không biết do sai code hay không hỗ chợ, chay thử Cfree, Code::Block tình trạng tương tự.

  5. #5
    Ngày gia nhập
    12 2006
    Nơi ở
    US
    Bài viết
    1,917

    Hình như anh nhầm. Không có clrscr() thì phải !

  6. #6
    Ngày gia nhập
    01 2008
    Nơi ở
    Rất nhiều sóng gió
    Bài viết
    445

    Mặc định Hỏi về chương trình dịch trong C++

    Code của bạn, đã chữa:
    Code:
    #include <cstdio>
    #include <iostream>
    using namespace std;
    
    #include <conio.h>
    #include <math.h>
    
    class DT
    {private:
        int n;      //bac da thuc
        double *a;  //Tro toi vung nho cac he so
    
    public  :
        DT()
        {
            this->n=0;
            this->a=NULL;
        }
        DT(int n1)
        {   this->n=n1;
            this->a=new double[n1+1];
        }
        DT(const DT &d);
        friend ostream& operator<< (ostream& os,const DT &d);
        friend istream& operator>> (istream& is,DT &d);
    };
    
    DT::DT(const DT &d)
    {
        this->n=d.n;
        this->a=new double[d.n+1];
        for(int i=0;i<=d.n;++i)
        *(this->a+i)=*(d.a+i);
    }
    
    ostream& operator<< (ostream& os,const DT &d)
    {
        os<<"Cac he so tu a0 :";
        for(int i=0;i<=d.n;++i)
            os<<*(d.a+i)<<" ";
        return os;
    }
    
    istream& operator>> (istream& is,DT &d)
    {
        if(d.a!=NULL) delete d.a;
        cout<<"Bac cua da thuc :";
        is>>d.n;
        for(int i=0;i<=d.n;++i)
        {
            cout<<"He so bac"<<i<<" :";
            is>>*(d.a+i);
        }
        return is;
    }
    
    int main()
    {
        DT d;
        //clrscr();
        cout<<"Nhap da thuc d :";
        cin>>d;
        DT u(d);
        cout<<"Da thuc d:"<<d;
        cout<<"Da thuc u:"<<u;
        cout<<"Nhap da thuc d :";
        cin>>d;
        cout<<"Da thuc d:"<<d;
        cout<<"Da thuc u:"<<u;
        cout<<"Nhap da thuc u :";
        cin>>u;
            cout<<"Da thuc u:"<<u;
        getch();
    }

  7. #7
    Ngày gia nhập
    01 2008
    Nơi ở
    UIT
    Bài viết
    129

    @QuangHoang: bạn nói bạn đã thử code::blocks rồi nhưng bạn đã sửa chỗ void main() và #include <conio.h> chưa ?

  8. #8
    Ngày gia nhập
    02 2008
    Nơi ở
    Việt Nam
    Bài viết
    577

    @QuangHoang: bạn nói bạn đã thử code::blocks rồi nhưng bạn đã sửa chỗ void main() và #include <conio.h> chưa ?
    Mình sửa rồi và nó báo khoảng 16 lỗi
    Code Ada sửa lại thì chạy, nhưng chương trình mình chạy bị trôi kiểu như:
    Code:
    Nhap da thuc d:Bac cua da thuc:
    Không cho nhập đa thức.

  9. #9
    Ngày gia nhập
    01 2008
    Nơi ở
    Rất nhiều sóng gió
    Bài viết
    445

    Trích dẫn Nguyên bản được gửi bởi QuangHoang Xem bài viết
    Mình sửa rồi và nó báo khoảng 16 lỗi
    Code Ada sửa lại thì chạy, nhưng chương trình mình chạy bị trôi kiểu như:
    Code:
    Nhap da thuc d:Bac cua da thuc:
    Không cho nhập đa thức.
    Ừ, mình chỉ chữa lỗi cú pháp thôi. Còn lỗi khác thì mình không biết.

  10. #10
    Ngày gia nhập
    09 2007
    Bài viết
    724

    đã chạy được rồi mình sửa lại một số cái trong bài của: ada

    PHP Code:
    #include "stdafx.h"
    #include <cstdio>
    #include <iostream>
    using namespace std;

    #include <conio.h>
    #include <math.h>

    class DT
    {private:
        
    int n;      //bac da thuc
        
    double *a;  //Tro toi vung nho cac he so

    public  :
        
    DT()
        {
            
    this->n=0;
            
    this->a=NULL;
        }
        
    DT(int n1)
        {   
    this->n=n1;
            
    this->a=new double[n1+1];
        }
        
    DT(const DT &d);
        
    friend ostreamoperator<< (ostreamos,const DT d);
        
    friend istreamoperator>> (istreamis,DT &d);
    };

    DT::DT(const DT &d)
    {
        
    this->n=d.n;
        
    this->a=new double[d.n+1];
        for(
    int i=0;i<=d.n;++i)
            *(
    this->a+i)=*(d.a+i);
    }

    ostreamoperator<< (ostreamos,const DT d)
    {
        
    os<<"Cac he so tu a0 :";
        for(
    int i=0;i<=d.n;++i)
            
    os<<*(d.a+i)<<" ";
        return 
    os;
    }

    istreamoperator>> (istreamis,DT &d)
    {
        
    //if(d.a!=NULL) delete d.a; bỏ cái này đi vì nó sẽ gây ra lỗi truy cập bộ nhớ.
    //thiệt là vô lý khi xin bộ nhớ rồi delete nó sau đó mới xài.(?) 
        
    cout<<"Bac cua da thuc :";
        
    is>>d.n;
        for(
    int i=0;i<=d.n;++i)
        {
            
    cout<<"He so bac"<<i<<" :";
            
    is>>*(d.a+i);
        }
        return 
    is;
    }

    int main()
    {
        
    //DT d; cái này thì là gì khi bạn  chưa khởi tạo cho nó mà ở dưới đòi nhập nó -> "truy cập bộ nhớ bất hợp pháp"
        //clrscr();
        
    cout<<"Nhap da thuc d :";
        
    int d1;
        
    cin>>d1;
        
    DT u(d1);
        
    cin>>u;
        
    cout<<"Da thuc d:"<<d1;
        
    cout<<"Da thuc u:"<<u;
        
    cout<<"Nhap da thuc d :";
        
    cin>>d1;
        
    cout<<"Da thuc d:"<<d1;
        
    cout<<"Da thuc u:"<<u;
        
    cout<<"Nhap da thuc u :";
        
    cin>>u;
            
    cout<<"Da thuc u:"<<u;
        
    getch();

    ok mình đã test và nó run trên vs2k5 rồi.
    bạn test lai thử xem sao.

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn