在o里填上适当运算符号:6o6o6o6=5
展开全部
你这道题我看了半天,感觉没解,后来编了个小程序发现确实没解。估计是脑筋急转弯,要么就是忽悠人。别从加减乘除和次幂下手了。
附上我的matlab代码,你可以看一下,基本上能解的答案用我的代码就能解。
主程序
%% 计算6?6?6?6 = 5 其中?代表任意运算符
clear
clc
operator_flag = [1,1,1]; %1,2,3,4,5=>加,减,乘,除,次幂
while(1)
op1 = num2op(operator_flag(1)); %数字到运算符转换
op2 = num2op(operator_flag(2));
op3 = num2op(operator_flag(3));
calchar = ['6',op1,'6',op2,'6',op3,'6'];
out_number = eval(calchar); %计算结果
if out_number == 5 %是否得到正确结果
operator_flag
break;
else %更换运算符
operator_flag(1) = operator_flag(1) + 1;
if operator_flag(1) >= 6
operator_flag(1) = 1;
operator_flag(2) = operator_flag(2) + 1;
if operator_flag(2) >= 6
operator_flag(2) = 1;
operator_flag(3) = operator_flag(3) + 1;
if operator_flag(3) >= 6
operator_flag
disp('没有找到解')
break;
end
end
end
end
end
子程序
function op = num2op(num)
switch num
case 1
op = '+';
case 2
op = '-';
case 3
op = '*';
case 4
op = '/';
otherwise
op = '^';
end
end
将是否得到正确结果那一行改成你需要的结果就行了:
比如:
if out_number == 2 %是否得到正确结果
结果为:
operator_flag =
4 1 4
1,2,3,4,5对于加减乘除和次幂即6÷6+6÷6 = 2
再比如:
if out_number == 46656 %是否得到正确结果
结果为:
operator_flag =
5 2 1
即6^6-6+6 = 46656
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询