24点是把4个整数通过加减乘除以及括号运算,使结果为24的数学游戏。24点可以考验人的智力和数学敏感性,提高心算能力。有时候百思不得结果,因此编写以下程序解惑。
如,对于[1 5 5 5], 通过程序可以得到24点的计算方式:(5-1/5)*5
% Matlab小程序,用4个数字加减乘除进行计算,得到24。
% 4 numbers, using + - * / to calc. 24
clear
num=[1 5 5 5];
% Sign
marker='+-*/';
INDEX=0;
for i=1:4
for j=1:4
for k=1:4
INDEX=INDEX+1;
S(INDEX,:)=[marker(i) marker(j) marker(k)];
[Sa_S Sb_S]=size(S);
end
end
end
%number order
INDEX=0;
for i=1:4
for j=1:4
if j==i
continue;
end
for k=1:4
if ((k==j) | (k==i))
continue;
end
for l=1:4
if (((l==k) | (l==j)) | (l==i))
continue;
end
INDEX=INDEX+1;
temp=[num(i) num(j) num(k) num(l)];
N(INDEX,:)=temp;
[Sa_N Sb_N]=size(N);
end
end
end
end

这是一个使用Matlab编写的程序,用于解决24点游戏。通过组合四个数字进行加减乘除运算,找出所有可能的结果等于24的表达式。例如,对于输入[1 5 5 5],程序将输出有效的计算方法如(5-1/5)*5。
最低0.47元/天 解锁文章
2584

被折叠的 条评论
为什么被折叠?



