1.【题目描述】
问题描述:在下面的算式中,添加“+”、“-”,“*”,“/”,4个运算符,使得这个式子成立。
5 5 5 5 5=5
2.【代码】
#include <bits/stdc++.h>
using namespace std;
int main()
{
int a[4];//保存每一个符号的位置
char b[5]={'+','-','*','/',' '};//保存符号
int sum[5]={5,5,5,5,5};//保存我们的数据
int left;//做+-的结果都保存在这里面
int right;//做*/的结果都保存在这里面
int c=1;//保存+和-的运算符
for(a[0]=0;a[0]<4;a[0]++)//第一个运算符有4种选择
{
if(a[0]==3&&sum[1]==0)//判断/法的时候除数不等于0
break;
for(a[1]=0;a[1]<4;a[1]++)
{
if(a[1]==3&&sum[2]==0)
break;
for(a[2]=0;a[2]<4;a[2]++)
{
if(a[2]==3&&sum[3]==0)
break;
for(a[3]=0;a[3]<4;a[3]++)
{
if(a[3]==3&&sum[4]==0)
break;
left=0;
right=sum[0];
c=1;//控制符号
for(int i=0;i<4;i++)
{
switch(b[a[i]])
{
case '+':
left=left+c*right;
c=1;
right=sum[i+1];
break;
case '-':
left=left+c*right;
c=-1;
right=sum[i+1];
break;
case '*':
right=right*sum[i+1];
break;
case '/':
right=right/sum[i+1];
break;
}
}
if(left+c*right==5)
{
for(int i=0;i<4;i++)
{
cout<<5;
cout<<b[a[i]];
}
cout<<5<<"=5";
cout<<endl;
}
}
}
}
}
return 0;
}
仅供参考!