30/09/2018, 18:18
mọi người cho minh hỏi code này bị lỗi gì mà không xuất s ra được vậy
' ' '
#include<conio.h>
#include<iostream>
#include<math.h>
using namespace std;
typedef struct PS
{
int a,b;
}PS;
ostream&operator<<(ostream &os,PS p);
istream&operator>>(istream& is,PS&p);
int ucln(int x,int y);
PS rutgon(PS p);
PS operator+(PS p1,PS p2);
PS operator-(PS p1,PS p2);
PS operator*(PS p1,PS p2);
PS operator/(PS p1,PS p2);
ostream&operator<<(ostream &os,PS p)//TOAN TU XUAT
{
os<<p.a<<"/"<<p.b;
return os;
}
istream&operator>>(istream& is,PS&p)//TOAN TU NHAP
{
cout<<"nhap tu va mau= ";
is>>p.a>>p.b;
return is;
}
int ucln(int x,int y)
{
int xc,xd;
xc=x; xd=y;
while (xc!=xd)
if(xc>xd)
xc-=xd;
else
xd=-xc;
return xc;
}
PS rutgon(PS p)
{
PS q;
int tam= ucln(p.a,p.b);
q.a=p.a/tam;
q.b=p.b/tam;
return q;
}
PS operator+(PS p1,PS p2)
{
PS q;
q.a=p1.a*p2.b+p2.b*p1.a;
q.b=p1.b*p2.a;
return (rutgon(q));
}
PS operator-(PS p1 ,PS p2)
{
PS q;
q.a=p1.a*p2.b-p2.a*p1.b;
q.b=p1.b*p2.a;
return(rutgon(q));
}
PS operator*(PS p1,PS p2)
{
PS q;
q.a=p1.a*p2.b;
q.b=p1.b*p2.a;
return(rutgon(q));
}
PS operator/(PS p1,PS p2)
{
PS q;
q.a=p1.a*p2.b;
q.b=p1.b*p2.a;
return(rutgon(q));
}
void main()
{
PS p,q,z,u,v;
PS s;
cout<<"
nhap cac PS p,q,z,u,v:
";
cin>>p>>q>>z>>u>>v;
s=(p-q*z)/(u+v);
cout<<"("<<p<<"- "<<q<<"*"<<z<< "*"<<z<<")/("<<u<<"+"<<v<<") la"<< s ;
system("PAUSE");
}
' ' '
Bài liên quan
đã làm như này rồi sao không đưa vào một class PhanSo
minh chua học class ak
bạn có cách nào giải quyết hộ mình với
Mình debug thì thấy lỗi ở ngay chỗ này
debug ra một đống
coming soon…
sao lạ thế máy mk đưa vào không báo lổi vậy
Full code
Quy đồng phân số sai hết rồi =)), nhìn sơ qua từ + - * / đều sai hết…
Phân số nên ghi rõ cái nào là tử cái nào là mẫu, đừng có đặt a b như thế nhìn vào rất dễ nhức đầu…
Mình đã fix mấy lỗi ở trên…bạn thử so sánh 2 code của bạn với của mình khác chỗ nào, chỗ nào không hiểu có thể hỏi bất cứ lúc nào
P/s : Học class…viết nó sẽ dễ hơn đó
bạn có biết câu lệnh này của tui tại sao sai không
nó khác gì so với câu lệnh của bạn vậy
Thực chất của bạn sai chính là ở tìm
ucln
của mình thực ra là đệ quy thôi.
p/s : mình lười đọc code thấy sao sao ấy…cái viết lại thôi…
mk chinh dươc rùi
nếu giả sử đề bài yêu cầu xuất cộng ra thì xuấ sao bạn
là sao không hiểu ý ???
có phải như này …!!
giống kết quả trước rùi
cụ thể là xuất cộng ,trừ nhân chia phân số ra đó