//特别补充打出√的方法:按住alt的同时按41420
#include<bits/stdc++.h>
#include <windows.h>//Sleep要用
#pragma GCC optimize(2)//手动开启O2优化
using namespace std;
int main() {
cout<<"本计算器有+ - * / % ^ √! 八种运算"<<"\n";
cout<<"(因某些原因 √ 用 ~ 代替)"<<"\n";//ASCII不支持√
cout<<"数据不超过 long long (暂时不支持高精度)"<<"\n";//高精度懒得写了,见谅
cout<<"除法和根号保留十六位小数"<<"\n";
while(1) {//while循环反复计算
char s;
cout<<"请输入您选择的运算(符号+ - * / % ^ ~ !):";
cin>>s;
if(s=='+') {
long long a,b;
cout<<"请输入第一个加数:";
cin>>a;
cout<<"请输入第二个加数:";
cin>>b;
cout<<"和是:"<<a+b<<"\n";
} else if(s=='*') {
long long a,b;
cout<<"请输入第一个乘数:";
cin>>a;
cout<<"请输入第二个乘数:";
cin>>b;
cout<<"积是:"<<a*b<<"\n";
} else if(s=='-') {
long long a,b;
cout<<"请输入被减数:";
cin>>a;
cout<<"请输入减数:";
cin>>b;
cout<<"差是:"<<a-b<<"\n";
} else if(s=='/') {
double a,b;
cout<<"请输入被除数:";
cin>>a;
cout<<"请输入除数:";
cin>>b;
cout<<"商是:";
printf("%.16lf\n",a/b);
} else if(s=='%') {
long long a,b;
cout<<"请输入被除数:";
cin>>a;
cout<<"请输入除数:";
cin>>b;
cout<<"余数是:"<<a%b<<"\n";
} else if(s=='^') {
long long a,b;
cout<<"请输入底数:";
cin>>a;
cout<<"请输入指数:";
cin>>b;
cout<<"结果是:"<<pow(a,b)<<"\n";
} else if(s=='~') {
double a;
cout<<"请输入n:";
cin>>a;
a=sqrt(a);
cout<<"结果是:";
printf("%.16lf\n",a);
} else if(s=='!') {
long long n,ans=1,i;
cout<<"请输入n:";
cin>>n;
for(i=1; i<=n; i++)
ans*=i;
cout<<ans<<"\n";
} else {
cout<<"无效输入"<<"\n";
}
cout<<"是否结束(yes/no)"<<"\n";
while(1) {
string ss;
cin>>ss;
if(ss[0]=='y'&&ss[1]=='e'&&ss[2]=='s') {
cout<<"使用结束,即将结束进程"<<"\n"<<"wait......"<<"\n";
for(int i=3; i>=1; i--) {
cout<<i<<"\n";
Sleep(500);//暂停程序几秒
}
return 0;
} else if(ss[0]=='n'&&ss[1]=='o')
break;
else
cout<<"无效输入"<<"\n";
}
}
return 0;
}
c++计算器
于 2022-08-12 16:21:45 首次发布