problem description
定義乙個複數類complex,過載運算子「+」,使之能用於複數的加法運算。參加運算的兩個運算量可以都是類物件,也可以其中有乙個是整數,順序任意。例如:c1+c2、i+c1、c1+i均合法。(其中i是整數,c1、c2是複數),程式設計實現求2個複數之和、整數與複數之和。
input
輸入有三行:第1行是第1個複數c1的實部和虛部,以空格分開。第2行是第2個複數c2的實部和虛部,以空格分開。第3行是1個整數i的值。
output
輸出有三行:
第1行是2個複數c1和c2的和,顯示方式:實部+虛部i
第2行是第1個複數c1加i的值,顯示方式:實部+虛部i
第3行是i加第1個複數c1的值,顯示方式:實部+虛部i
example input
2 3
3 5
10 example output
5+8i
12+3i
12+3i
#include
using
namespace
std;
class complex
complex()//必須有!!!不然定義物件沒有預設值時會報錯
friend ostream &operator
<<(ostream &output, complex a)//將《運算子過載函式定義為友元函式
void get()
complex operator +(complex &a)//物件+物件
complex operator +(int b)//物件+整數
friend complex operator +(int b, complex &a)//整數+物件
//定義為友元函式,需訪問私有資料成員
};int main()
物件導向程式設計上機練習十(運算子過載)
time limit 1000ms memory limit 65536k 定義乙個複數類complex,過載運算子 使之能用於複數的加法運算。參加運算的兩個運算量可以都是類物件,也可以其中有乙個是整數,順序任意。例如 c1 c2 i c1 c1 i均合法。其中i是整數,c1 c2是複數 程式設計實...
物件導向程式設計上機練習十(運算子過載)
time limit 1000ms memory limit 65536kb submit statistic problem description 定義乙個複數類complex,過載運算子 使之能用於複數的加法運算。參加運算的兩個運算量可以都是類物件,也可以其中有乙個是整數,順序任意。例如 c1...
物件導向程式設計上機練習十(運算子過載)
problem description 定義乙個複數類complex,過載運算子 使之能用於複數的加法運算。參加運算的兩個運算量可以都是類物件,也可以其中有乙個是整數,順序任意。例如 c1 c2 i c1 c1 i均合法。其中i是整數,c1 c2是複數 程式設計實現求2個複數之和 整數與複數之和。i...