枚举法——填写运算符

#include<stdio.h>
int main()
{
	int j,i[5];//用来表示4个运算符
	int sign;//累加运算时的符号
	int result;//保存运算式的结果
	int count=0;//计数器,统计符合条件的方案
	int num[6];//保存操作数
	float left,right;//上一步结果,下一步结果
	char oper[5]={' ','+','-','*','/'};//运算符
	printf("请输入5个数:");
	for(j=1;j<=5;j++)
		scanf("%d",&num[j]);
	printf("请输入结果:");
	scanf("%d",&result);
	for(i[1]=1;i[1]<=4;i[1]++)
		//循环四种运算,1表示+,2表示-,3表示*,4表示/
	{
		if((i[1]<4)||(num[2]!=0))//运算符若是/,则第二个运算数不能为0
		{
			for(i[2]=1;i[2]<=4;i[2]++)
			{
				if(i[2]<4||(num[3]!=0))
				{
					for(i[3]=1;i[3]<=4;i[3]++)
					{
						if((i[3]<4||num[4]!=0))
						{
							for(i[4]=1;i[4]<=4;i[4]++)
							{
								if((i[4]<4)||(num[5]!=0))
								{
									left=0;
									right=num[1];
									sign=1;
									for(j=1;j<=4;j++)
									{
										switch(oper[i[j]])
										{
										case '+':
											left=left+sign*right;
											sign=1;
											right=num[j+1];
											break;
										case '-':
											left=left+sign*right;
											sign=-1;
											right=num[j+1];
											break;
										case '*':
											right=right*num[j+1];
											break;
										case '/':
											right=right/num[j+1];
											break;
										}
									}
									if(left+sign*right==result)
									{
										count++;
										printf("%3d:",count);
										for(j=1;j<=4;j++)
											printf("%d%c",num[j],oper[i[j]]);
										printf("%d=%d\n",num[5],result);
									}
								}
							}
						}
					}
				}
			}
		}
	}
	if(count==0)
		printf("没有符合要求的方法!\n");
	return 0;
}

解决:在下面的算式中,添加“+”,“-”,“*“,”/”运算符,使等式成立。

5 5 5 5 5 =5


### 定义植物与颜色的枚举类型 为了创建一个表示植物及其对应颜色的枚举类型,可以采用 C++ 或者 Java 的 `enum` 结构来实现。下面展示如何通过组合两个属性——植物名称和其对应的典型颜色——构建这样的枚举。 #### 使用C++定义植物与颜色的枚举类型 在 C++ 中可以通过自定义构造函数以及重载运算符的方式使枚举成员携带额外的信息,比如字符串描述或整数值之外的内容,在此案例中即为颜色信息: ```cpp #include <string> using namespace std; // 枚举示例:PlantColorEnum 表示不同类型的植物连同它们的颜色 struct PlantColor { string plantName; string color; }; enum class PlantColors : int { Sunflower_Yellow, PeaShooter_Green, CherryBomb_Red, WallNut_Brown, PotatoMine_Orange }; const map<PlantColors, PlantColor> plantColorMap = { {PlantColors::Sunflower_Yellow, {"Sunflower", "Yellow"}}, {PlantColors::PeaShooter_Green, {"PeaShooter", "Green"}}, {PlantColors::CherryBomb_Red, {"Cherry Bomb", "Red"}}, {PlantColors::WallNut_Brown, {"Wall-nut", "Brown"}}, {PlantColors::PotatoMine_Orange, {"Potato Mine", "Orange"}} }; ``` 上述代码片段展示了如何关联特定植物与其代表性的颜色[^1]。 对于更复杂的场景,如果需要进一步扩展功能,则可能涉及到面向对象编程的概念,例如继承机制的应用;不过这超出了当前问题讨论范围内的需求[^2]。 当游戏引擎接收到玩家操作指令时,Game 类会依据这些输入触发相应的逻辑处理流程,而这里提到的枚举则可用于内部状态管理和UI显示等方面的工作[^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值