C++补交作业

xiaoxiao2021-02-28  75

(一)问题及代码、

#include<iostream>   #include<Cmath>   using namespace std;  int gcd(int m, int n);  class CFraction  {    private:      int nume;        int deno;       public:      CFraction(int nu=0,int de=1);          void set(int nu=0,int de=1);           void input();                      void simplify();                   void amplify(int n);               void output(int style=0);     };  CFraction::CFraction(int nu,int de)  {    if (de!=0)      {          nume=nu;          deno=de;      }      else      {          cerr<<"初始化中发生错误,程序退出\n";           exit(0);      }  }  void CFraction::set(int nu,int de)      {      if (de!=0)       {          nume=nu;          deno=de;      }  }  void CFraction::input()   {      int nu,de;      char c;          cin>>nu>>c>>de;   {    if(c!='/')      cout<<"输入格式错误!\n ";     else if (de==0)      cout<<"分母不能为零!\n ";    } }     void CFraction::simplify()  {      int n=gcd(deno, nume);      deno/=n;          nume/=n;  }   int gcd(int m, int n)   {      int r;      if (m<n){r=m;m=n;n=r;}      while(r=m%n)       {          m=n;          n=r;      }      return n;  }  void CFraction::amplify(int n)     {      nume*=n;  }     void CFraction::output(int style)  {      int n;      switch(style)      {      case 0:          cout<<"原样:" <<nume<<'/'<<deno<<endl;           break;      case 1:          n=gcd(deno, nume);          cout<<"化简形式: "<<nume/n<<'/'<<deno/n<<endl;            break;      case 2:          cout<<"带分数形式:" <<nume/deno<<'('<<nume

转载请注明原文地址: https://www.6miu.com/read-84661.html

最新回复(0)