time limit: 1000ms
memory limit: 65536kb
submit
statistic
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 33 510
example output
5+8i12+3i
12+3i
hint
author
方法一:只對+過載
#include using namespace std;
class complex
complex operator + (complex & c2)
complex operator + (int x)
friend complex operator + (int x, complex & c2)
void show()
};int main()
方法二:對+和《全部過載
#include using namespace std;
class complex
complex operator + (complex & c2)
complex operator + (int x)
friend complex operator + (int x, complex & c2)
friend ostream & operator << (ostream & output, complex c) //對輸出流《過載,也可以不用
};int main()
物件導向程式設計上機練習十(運算子過載)
time limit 1000ms memory limit 65536k 定義乙個複數類complex,過載運算子 使之能用於複數的加法運算。參加運算的兩個運算量可以都是類物件,也可以其中有乙個是整數,順序任意。例如 c1 c2 i c1 c1 i均合法。其中i是整數,c1 c2是複數 程式設計實...
物件導向程式設計上機練習十(運算子過載)
problem description 定義乙個複數類complex,過載運算子 使之能用於複數的加法運算。參加運算的兩個運算量可以都是類物件,也可以其中有乙個是整數,順序任意。例如 c1 c2 i c1 c1 i均合法。其中i是整數,c1 c2是複數 程式設計實現求2個複數之和 整數與複數之和。i...
物件導向程式設計上機練習十(運算子過載)
problem description 定義乙個複數類complex,過載運算子 使之能用於複數的加法運算。參加運算的兩個運算量可以都是類物件,也可以其中有乙個是整數,順序任意。例如 c1 c2 i c1 c1 i均合法。其中i是整數,c1 c2是複數 程式設計實現求2個複數之和 整數與複數之和。i...