Từ 1 tới 6 trên tổng số 6 kết quả

Đề tài: Cài đặt lớp số phức 2 kế thừa lớp số phức 1.Help!!!!!

  1. #1
    Ngày gia nhập
    05 2009
    Nơi ở
    Hà Nội
    Bài viết
    2

    Mặc định Cài đặt lớp số phức 2 kế thừa lớp số phức 1.Help!!!!!

    -Cài đặt lớp số phức 1 gồm phần thực,phần ảo,phương thức nhập,in.Chương trình chính nhập và in ra 2 số phức.
    -Cài đặt lớp số phức 2 kế thừa lớp só phức 1 và bổ sung:phương thức nạp chồng toán tử >>,<<,phép -.*.+,/,phép so sánh ==,!=,>,<.>=,<=,++,--.Chương trình chính nhập 2 số phức thông báo kết quả so sánh,các phép tính cộng,trừ,nhân ,chia 2 số phức.
    Em gửi bài các anh sửa giùm em nhé.Cảm ơn các anh rất nhìu.

    #include<iostream.h>
    #include<conio.h>
    #include<math.h>
    class SP1
    {
    private:
    float pt,pa;
    public:
    friend istream & operator>>(istream & is,SP1 &p);
    friend ostream & operator<<(ostream & os,SP1 &p);
    float getpt()
    {
    return pt;
    }
    float getpa()
    {
    return pa;
    }
    };
    //ham nhap
    istream & operator>>(istream & is,SP1 &p)
    {
    cout<<"\nNhap phan thuc:";is>>p.pt;
    cout<<"\nNhap phan ao:";is>>p.pa;
    return is;
    }
    //ham in
    ostream & operator<<(ostream & os,SP1 p)
    {
    os<<p.getpt()<<"+"<<p.getpa()<<"i";
    return os;
    }
    //================================================
    class SP2:public SP1
    {
    public:
    SP2 operator+ (SP2 p);
    SP2 operator- (SP2 p);
    SP2 operator* (SP2 p);
    SP2 operator/ (SP2 p);
    };
    //==============nhan 2 so phuc====================
    SP2 SP2::operator*(SP2 p)
    {
    SP2 kq;
    kq.getpt()=getpt()*p.getpt()-getpa()*p.getpa();
    kq.getpa()=getpa()*p.getpt()+getpt()*p.getpa();
    return kq;
    }
    //==============ham chia 2 so phuc================
    SP2 SP2::operator/(SP2 p)
    {
    SP2 kq;
    while(p.getpa()!=0&&p.getpt()!=0)
    {
    if(p.getpa()==0)
    {
    kq.getpt()=getpt()*p.getpt();
    kq.getpa()=getpa()*p.getpt();
    return kq;
    }
    else
    {
    kq.getpt()=(getpt()*p.getpt()
    +getpa()*p.getpa())*(p.getpt()*p.getpt()
    +p.getpa()*p.getpa());
    kq.getpa()=(getpa()*p.getpt()-getpt()*p.getpa())
    *(p.getpt()*p.getpt()+p.getpa()*p.getpa());
    return kq;
    }
    }
    return kq;
    }
    //================ham tinh tong 2 so phuc============
    SP2 SP2::operator+(SP2 p)
    {
    SP2 kq;
    kq.getpt()=getpt()+p.getpt();
    kq.getpa()=getpa()+p.getpa();
    return kq;
    }
    //===========ham tinh hieu 2 so phuc==================
    SP2 SP2::operator-(SP2 p)
    {
    SP2 kq;
    kq.getpt()=getpt()-p.getpt();
    kq.getpa()=getpa()-p.getpa();
    return kq;
    }
    //====================ham chinh=======================
    void main()
    {
    SP1 a,b;
    SP2 c,d;
    clrscr();
    cout<<"\nNhap 2 so phuc cua lop SP1:";
    cin>>a;
    cin>>b;
    cout<<"\n2 so phuc do la:";
    cout>>a;
    cout>>b;
    cout<<"\nNhap 2 so phuc cua lop SP2:";
    cin>>c;
    cin>>d;
    cout<<"\nTong cua 2 so phuc la:";
    cout<<c+d;
    cout<<"\nHieu cua 2 so phuc la:";
    cout<<c-d;
    cout<<"\nTich cua 2 so phuc la:";
    cout<<c*d;
    cout<<"\nThuong cua 2 so phuc la:";
    cout<<c/d;
    getch();
    }


    Sửa giúp em nha em đang rất cần.

  2. #2
    Ngày gia nhập
    12 2008
    Bài viết
    235

    Sửa cái gì mới được chứ?

  3. #3
    Ngày gia nhập
    12 2008
    Bài viết
    235

    Bạn tham khảo thư viện có sẵn COMPLEX.H ý.Trong đó có đủ hết các hàm cơ bản xử lí số phức

  4. #4
    Ngày gia nhập
    05 2009
    Nơi ở
    Hà Nội
    Bài viết
    2

    em chạy chương trình máy báo lỗi ở hàm getpt() nhưng em không biết sửa thế nào.

  5. #5
    Ngày gia nhập
    12 2008
    Bài viết
    235

    Hàm thì làm sao bạn có thể gán giá trị cho nó được chứ
    Đã được chỉnh sửa lần cuối bởi ducthiem90 : 12-05-2009 lúc 10:32 PM.

  6. #6
    Ngày gia nhập
    11 2012
    Bài viết
    2

    Mặc định Cài đặt lớp số phức 2 kế thừa lớp số phức 1.Help!!!!!

    mình cũng có thắc mắc về cái này đấy. SP2 kq;
    mà sao kq.Getpt() nó lại báo lỗi vậy m.n?

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