早教吧作业答案频道 -->其他-->
matlab如何实现数组中任意个数元素的求和!有一个一维数组A,共28个元素,现要找出这些元素中求和为x的元素,该如何实现?求和元素的个数不定.有哪位大虾知道的麻烦告诉一下,万分感谢了!
题目详情
matlab如何实现数组中任意个数元素的求和!
有一个一维数组A,共28个元素,现要找出这些元素中求和为x的元素,该如何实现?求和元素的个数不定.有哪位大虾知道的麻烦告诉一下,万分感谢了!
有一个一维数组A,共28个元素,现要找出这些元素中求和为x的元素,该如何实现?求和元素的个数不定.有哪位大虾知道的麻烦告诉一下,万分感谢了!
▼优质解答
答案和解析
给你提供一个暴力算法,思路是:循环开始,把28个数随机打乱,分别取第一个数,前2个、前3个、前4个.数求和,当找到求和满足的为止,循环结束,数组a和那个和自己输入,代码:
clc;
clear;
%一维数组
a=[];
%要满足的目标和
target=50;
sig=1;
while sig
xuhao=randperm(28);
xuhao_a=a(xuhao);
for i=1:28
si=sum(xuhao_a(1:i));
if si==target
index=xuhao(1:i);
index_a=a(index);
sig=0;
break;
end
end
end
index=sort(index);
disp('达到目标求和的数在数组中序号');
disp(index);
disp('满足要求的数');
disp(index_a);
虽然思路是暴力算法,但幸亏你的数据不大,结果出的还是很快的
clc;
clear;
%一维数组
a=[];
%要满足的目标和
target=50;
sig=1;
while sig
xuhao=randperm(28);
xuhao_a=a(xuhao);
for i=1:28
si=sum(xuhao_a(1:i));
if si==target
index=xuhao(1:i);
index_a=a(index);
sig=0;
break;
end
end
end
index=sort(index);
disp('达到目标求和的数在数组中序号');
disp(index);
disp('满足要求的数');
disp(index_a);
虽然思路是暴力算法,但幸亏你的数据不大,结果出的还是很快的
看了 matlab如何实现数组中任...的网友还看了以下:
先写出母是8的所有最简真分数,再求出这些真分数的和把8换成9,按照上面的步骤试一试.在把8换成12 2020-04-12 …
甲乙两种卡车,甲车载重量为6吨,乙车载重为8吨,现有144吨煤,要求一次运完而且每车都要装满煤,有 2020-05-17 …
有甲乙两种卡车,甲车每次可装煤6吨,乙车每次可装煤8吨,现有130吨,要求一次运完,而且每辆卡车都 2020-05-22 …
一种奶茶是由奶和茶按5:1配制而成的,现有奶48千克,茶8千克,最多可配制这种奶茶()千克.一项工 2020-06-05 …
有甲、乙两种卡车,甲车每次可装煤6吨,乙车每次可装煤8吨,现有130吨,要一次运完,则要甲、乙两车 2020-06-11 …
一城市现有42万人口,预计一年后城镇人口增加0.8%,农村人口增加1.1%,这样全市人口将增加1% 2020-06-17 …
有人认为8是个吉祥数字,他们得到的东西的数字都要含有数字8.现有200块糖分给一些人,如何进行分糖 2020-06-17 …
大家都认为“8”是个吉祥的数字,他们得到的东西的数量都要含有数字8.现有200块糖要分给5个人,大 2020-06-17 …
一城市现有42万人口,预计一年后城镇人口增加0.8%,农村人口增加1.1%,这样全市人口将增加1% 2020-07-05 …
小李小王原有画片数比是4比3.李买来15张,王丢8张,现有画片数比是5比2.问原来俩人各有多少张? 2020-12-09 …