C++:类实现——【calculator】计算器程序设计

版权声明:转载本文请引用 https://blog.csdn.net/weixin_42346564/article/details/82152486

1.使用类的方式:                                                                               

1-Calculator.cpp主函数

#include "Math.h"
#include <iostream>

using namespace std;

Maths m;

int main()
{
	int chooses;
	double res = 0;
	double val1 = 0, val2 = 0;

	while (1)
	{
		cout << "enter two number[int type]: ";
		cin >> val1 >> val2;

		cout << "enter --> '0':+   '1':-  '2':*  '3':/  " << endl;
		cin >> chooses;

		switch (chooses)
		{
		case 0:cout << "答案为:" <<m.add(val1, val2)<<endl; break;
		case 1:cout << "答案为:" << m.sub(val1, val2)<<endl; break;
		case 2:cout << "答案为:" << m.mul(val1, val2)<<endl; break;
		case 3:cout << "答案为:" << m.div(val1, val2)<<endl; break;
		default:cout << "enter error! please enter again!!!"<<endl; break;
		}

		cout << "是否要结束(Y/N): ";
		char returns;
		cin >> returns;
		if (returns == 'Y' || returns == 'y')
			return 0;
	}

	system("pause");
	return 0;
}

1-Math.h       函数声明

#pragma once
class Maths
{
public:
	//Maths();
	double add(double a, double b);
	double sub(double a, double b);
	double mul(double a, double b);
	double div(double a, double b);
};

1-Math.cpp    函数定义

//#include <iostream>
#include "Math.h"

//Maths::Maths()
//{
//	//重载作用:初始化,
//}

double Maths::add(double a, double b)
{
	double res;
	res = a + b;
	return (res);
}

double Maths::sub(double a, double b)
{
	double res;
	res = a - b;
	return (res);
}

double Maths::mul(double a, double b)
{
	double res;
	res = a * b;
	return (res);
}

double Maths::div(double a, double b)
{
	double res;
	res = a / b;
	return (res);
}


2.不用类的方式:                                                                               

2-main.cpp主函数

#include <iostream>
#include "math.h"

using namespace std;
using namespace math;

// adddd    add
int my_strcpy(char src[], const char dest[])
{
	int result = 1;
	int i = 0;

	while ('\0' != src[i] && '\0' != dest[i])
	{
		if (src[i] != dest[i])
		{
			result = 0;
			break;
		}
		i++;
	}

	return result;
}

int main() 
{
	char in[20];
	double out;
	double val1, val2;


	while (1)
	{
		cout << "请输入下列功能对应的数字: "
			<< "add:+	sub:-	mul:*	div:/	";
		cin >> in;

		//"asd"
		if (my_strcpy(in, "add"))	{ cout << "请输入两个整数:"; cin >> val1 >> val2; out = math::add(val1, val2); cout << out << endl;}
		else if (my_strcpy(in, "sub"))	{ cout << "请输入两个整数:"; cin >> val1 >> val2; out = math::sub(val1, val2); cout << out << endl;}
		else if (my_strcpy(in, "mul"))	{ cout << "请输入两个整数:"; cin >> val1 >> val2; out = math::mul(val1, val2); cout << out << endl;}
		else if (my_strcpy(in, "div"))	{ cout << "请输入两个整数:"; cin >> val1 >> val2; out = math::div(val1, val2); cout << out << endl;}
		else { cout<<"enter the error type !"<<endl; }
	}
	system("pause");
	return 0;
}

2-math.h    这里我自己创建了新的命名空间math;

#pragma once
namespace math
{
	//double math::add(double val1, double val2);
	double add(double val1, double val2);
	double sub(double val1, double val2);
	double mul(double val1, double val2);
	double div(double val1, double val2);
}

2-math.cpp    定义函数功能;

#include "math.h"


////////////////////////////
double math::add(double val1, double val2)
{
	return(val1 + val2);
}

///////////////////////////
double math::sub(double val1, double val2)
{
	return(val1 - val2);
}

///////////////////////////
double math::mul(double val1, double val2)
{
	return(val1 * val2);
}

//////////////////////////
double math::div(double val1, double val2)
{
	return(val1 / val2);
}


 

猜你喜欢

转载自blog.csdn.net/weixin_42346564/article/details/82152486