我的团:derytsa
通用计算器:
#include<bits/stdc++.h>
typedef long long ll;
using namespace std;
char op;
ll a,b;
template<class T>T read(){
T r=0,f=1;char c=getchar();
while((c<'0'||c>'9')&&c!='-'){
c=getchar();
}
if(c=='-')f=-1,c=getchar();
while(c>='0'&&c<='9')r=r*10+c-'0',c=getchar();
return f*r;
}
ll sum(int a,int b){
int s=0;
for(int i=a;i<=b;++i){
s+=i;
}
return s;
}
int main(){
cout<<"温馨提示:"<<endl;
cout<<"+加-减*乘/除%模^幂~累加"<<endl;
cout<<"记得加空格“ ”"<<endl;
while(1){
a=read<int>(),op=getchar(),b=read<int>();
switch(op){
case '+':
cout<<a+b<<endl;break;
case '-':
cout<<abs(a-b)<<endl;break;
case '*':
cout<<a*b<<endl;break;
case '/':
if(b==0){
cout<<"no"<<endl;break;
}
else{
cout<<ceil(a/b)<<endl;break;
}
case '%':
cout<<a%b<<endl;break;
case '^':
cout<<pow(a,b)<<endl;break;
case '~':
cout<<sum(a,b)<<endl;break;
default:
cout<<"no"<<endl;break;
}
}
return 0;
}