第1个回答 2008-07-08
这是最**的做法
a=0;
for i=0:9
for j=0:9
for k=0:9
for l=0:9
if i==1|j==1|k==1|l==1
a=a+1000*i+100*j+10*k+l;
end
end
end
end
end
这是另一种做法
a=1:9999;
a=a(~((mod(a,10)-1)&(mod(floor(a/10),10)-1)&(mod(floor(a/100),10)-1)&(mod(floor(a/1000),10)-1)));
a=sum(a)
这是函数
function s=question(n)
a=1:n;i=1;b=ones(1,n);
while floor(n/i)
b=b&(mod(floor(a/i),10)-1);
i=i*10;
end
s=sum(a(~b));