作业帮 > 综合 > 作业

设计一个算法,求出最小的数,该数满足:除以5余2,除以7余3,除以9余4.

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/04/29 03:17:59
设计一个算法,求出最小的数,该数满足:除以5余2,除以7余3,除以9余4.
A:可以采用从最小数1开始的循环算法,循环体中将循环数除5判断是否余2,除7判断是否余3,除9判断是否余4,如果判断结果都是“yes”,就结束循环,并输出(和保存)这个数儿.
用c语言的for语句写的话是:
for(i=1;;i++)
{
if (i%5==2 & i%7==3 & i%9==4)
{pritf(%d,i);
break;}
}
嗯,我好久没用这个c语言啦,估计语法可能有错误,你自己稍微试试就会了.
B:可以采用对比法.将除以5余2,除以7余3,除以9余4的数分别保存为数组a1,a2,a3.可以先各保存100个,然后用循环从3个数组中找到都包含的数,最先找到的数就是了.
用matlab写的话是这样:
a1=zeros(100,1);a2=a1;a3=a1;
for i=1:100
a1(i)=i*5+2;a2(i)=i*7+3;a3(i)=i*9+4;
end
for i=1:100
for j=1:100
for k=1:100
if a1(i)==a2(j) && a2(j)==a3(k) disp(a1(i));
end
end
end
就写这两种算法了,他们都可以化简,你自己思考看看.