根据小组讨论,我们 更新了以下内容:
1.高级计算多了2种功能,为曼哈顿距离,三角形输出。
不说那摩多,直接上源代码:
#include <iostream>
using namespace std;
int M_dis( int x1, int y1, int x2, int y2)
{
if( x1 >= x2)
{
if( y1 >= y2)
{
return x1 - x2 + y1 - y2;
}
else
{
return x1 - x2 + y2 - y1;
}
}
else
{
if( y1>=y2 )
{
return x2 - x1 + y1 - y2;
}
else
{
return x2 - x1 + y2 - y1;
}
}
}
int main()
{
//gjjsfh是高级计算指令符
//num是计算的个数,sum是和,js是加数,cs是乘数,csq是积,cfb是被除数,cf是除数,cfa是除法的商
long long op,zs,a1,a2,a3,fh,num,sum = 0,js,cs = 1,csq = 1,cfb,cf,cfa = 0,gjisfh;
cout << "欢迎来到由xxx开发的高级计算机!请问你要干什么?" << endl;
cout << "1.开始计算 2.说明书 3.投诉与建议指南(输入其他数字自动判为2,3!)" << endl;
cin >> op;
if (op == 1)
{
cout << "请输入要执行的计算" << endl;
cout << "1.加法 2.减法 3.乘法 4.除法(求商)5.除法(求余数)6.高级计算" << endl;
cin >> fh;
if (fh == 1)
{
//cout << "请输入第一个加数" << endl;
//cin >> a1;
//cout << "请输入第二个加数" << endl;
//cin >> a2;
//zs = a1 + a2;
//cout << zs;
cout << "请输入加数个数:";
cin >> num;
cout << "请输入所有加数,用空格隔开:";
for (long long i = 1 ;i <= num;i++)
{
cin >> js;
sum = sum + js;
}
cout << "计算结果为:" << sum;
}
else if(fh == 2)
{
cout << "请输入被减数" << endl;
cin >> a1;
cout << "请输入减数" << endl;
cin >> a2;
zs = a1 - a2;
cout << zs;
}
else if (fh == 3)
{
//cout << "请输入第一个乘数" << endl;
//cin >> a1;
//cout << "请输入第二个乘数" << endl;
//cin >> a2;
//zs = a1 * a2;
//cout << zs << endl;
cout << "接下来请输入乘数的个数:";
cin >> num ;
cout << "现在请输入所有乘数,用空格隔开:";
for (long long i = 1;i <= num;i ++)
{
cin >> cs;
csq = csq * cs;
}
cout << "计算结果为:" << csq;
}
else if (fh == 4)
{
//cout << "请输入被除数" << endl;
//cin >> a1;
//cout << "请输入除数" << endl;
//cin >> a2;
//zs = a1 / a2;
//cout << zs << endl;
cout << "鉴于除法有些难做,所以操作有些不方便,请谅解。" << endl;
cout << "请输入第一个被除数:" << endl;
cin >> cfb;
cout << "请输入剩下的除数个数:" << endl;
cin >> num;
cout << "接下来请输入所有除数,以空格隔开:" << endl;
for(long long i = 1;i <= num ;i ++)
{
cin >> cf;
cfa = cfb / cf;
}
cout << "计算结果为" << cfa;
}
else if (fh == 5)
{
//cout << "请输入被除数" << endl;
//cin >> a1;
//cout << "请输入除数" << endl;
//cin >> a2;
//zs = a1 % a2;
//cout << zs << endl;
cout << "鉴于除法有些难做,所以操作有些不方便,请谅解。" << endl;
cout << "请输入第一个被除数:" << endl;
cin >> cfb;
cout << "请输入剩下的除数个数:" << endl;
cin >> num;
cout << "接下来请输入所有除数,以空格隔开:" << endl;
for(long long i = 1;i <= num ;i ++)
{
cin >> cf;
cfa = cfb % cf;
}
cout << "计算结果为" << cfa;
}
else if (fh == 6)
{
cout << "维护已完成" << endl;
cout << "请问你要执行什么高级运算?" << endl;
cout << "1.是否可以构成直角三角形" << endl;
cout << "2.计算曼哈顿距离。" << endl;
cout << "3.输出直角三角形(贴边)" << endl;
cin >> gjisfh;
if (gjisfh == 1)
{
cout << "请输入三角形的边长,一行。用空格隔开。例如:12 34 56"<< endl;
cin >> a1,a2,a3;
if (a1 * a1 + a2 * a2 == a3 * a3 || a1 * a1 + a3 * a3 == a2 * a2 || a2 * a2 + a3 * a3 == a1 * a1)
{
cout << "可以构成直角三角形"<< endl;
}
else
{
cout << "不可以构成直角三角形"<< endl;
}
}
else if (gjisfh == 2)
{
int x1, y1, x2, y2;
cout << "请输入点a(x1,y1)和点b(x2,y2)的坐标,以空格隔开。如:1 1 3 3";
cin >> x1 >> y1 >> x2 >> y2;
cout << "点a 和 点b 的曼哈顿距离为:" << M_dis(x1, y1, x2, y2) << endl;
}
else if (gjisfh == 3)
{
int n;
cout << "接下来要输入一个整数,代表着直角三角形的高和底";
cout << "请输入一个整数:";
cin >> n;
for (int i = 1;i <= n; i++)
{
for (int j = 1;j <= i; j ++)
{
cout << "*";
}
cout << endl;
}
}
}
else
{
cout << "输入有误!"<< endl;
}
}
else
{
cout << " 说明书" << endl;
cout << "首先先根据弹出来的内容输入,计算出结果。若无法计算可能是你的数字结果" << endl;
cout << "大于21亿,导致数据错误!所以这个问题以后会解决!关于投诉建议,请在评论区写出来!感谢你的支持" << endl;
}
return 0;
}
制作不易,不喜勿喷