第4次實驗
阿新 • • 發佈:2018-04-23
cin sin ID 用兩個 src otto png -i 比較
第一題
我的算法是用兩個變量i和j控制空格和符號的輸入,先填充空格,再填充符號,再用空格覆蓋符號
我的代碼如下
int i,j; for(i=0;i<size;i++) { for(j=1;j<=2*size-1;j++) { if(j>=size-i&&j<=size+i) { cout<<symbol; } else cout<<" "; } cout<<endl; }
開發環境Dev-C++ 5.11
第2題
函數的聲明:
#pragma once #ifndef Fraction_h #define Fraction_h class Fraction { public: Fraction(int i,int j); Fraction(int i); Fraction(); ~Fraction(); void add(Fraction &a); void subtract(Fraction &a); void multiply(Fraction &a);void divide(Fraction &a); void compare(Fraction &a); void input(); void output(); private: int top; int bottom; }; #endif
函數的實現:
#include "Fraction.h" #include <iostream> using namespace std; Fraction::Fraction(int i,int j):top(i),bottom(j) {} Fraction::Fraction(inti):top(i) { bottom=1; } Fraction::Fraction() { top=0; bottom=1; } Fraction::~Fraction() {} void Fraction::add(Fraction &a) { cout<<top*a.bottom+a.top*bottom<<"/"<<bottom*a.bottom<<endl; } void Fraction::subtract(Fraction &a) { cout<<top*a.bottom-a.top*bottom<<"/"<<bottom*a.bottom<<endl; } void Fraction::multiply(Fraction &a) { cout<<top*a.top<<"/"<< bottom * a.bottom << endl; } void Fraction::divide(Fraction &a) { cout<<top*a.bottom<<"/"<< bottom * a.top << endl; } void Fraction::compare(Fraction &a) { if(top*a.bottom>bottom*a.top) cout<<top<<"/"<<bottom<<endl; else if(top*a.bottom<bottom*a.top) cout<<a.top<<"/"<<a.bottom<<endl; else if(top*a.bottom==bottom*a.top) cout<<"一樣大"<<endl; } void Fraction::input() { cin>>top>>bottom; } void Fraction::output() { cout<<top<<"/"<<bottom<<endl; }
main函數:
#include <iostream> #include "Fraction.h" using namespace std; int main() { Fraction a; Fraction b(3,4); Fraction c(5); cout <<"a:"; a.output(); cout <<"b:"; b.output(); cout <<"c:"; c.output(); cout <<"a+b="; a.add(b); cout <<"a-b="; a.subtract(b); cout <<"a*b="; a.multiply(b); cout <<"a/b="; a.divide(b); cout <<"比較a和b的大小:"; a.compare(b); cout <<"請輸入分子分母:"; a.input(); cout << "a的大小為:"; a.output(); return 0; }
運行結果:
總結:
我經過這次的實驗發現我還是有很多地方是有欠缺的,而這就導致我做題的速度會比較慢,很多東西不熟練,特別是關於類的知識。我會認真總結,在類這方面花更多功夫
第4次實驗