假设任意的五位正整数k,并且k等于其各位数字的五次方的和。比如k由五个数字a,b,c,d,e组成,k=a^5+b^5+c^5+d^5+e^5,怎样用matlab列出所有满足这个性质的五位整数k?
有用请采纳!谢谢
clear all
for i=10000:99999
str = num2str(i);
a = str2double(str(1));
b = str2double(str(2));
c = str2double(str(3));
d = str2double(str(4));
e = str2double(str(5));
if (a^5+b^5+c^5+d^5+e^5)==i
i
end
end
简单暴力
for(k=9999;k<99999;k++){
a=k/10000
b=(k%10000)/1000
c=(k%1000)/100
d=(k%100)/10
e=k%10
if(k==a^5+b^5+c^5+d^5+e^5)
输出语句
}
大概就是这个意思,你改到MATLAB上,不行就联系我给你代码,这个就是手机上写的,%是取余
加油
题主根据下方来做即可,输入自己想要的五位数
c=input('输入任意一个5位数的整数:');
for i=1:10
for j=1:10
for k=1:10
for l=1:10
for m=1:10
if c==(i-1)^5+(j-1)^5+(k-1)^5+(l-1)^5+(m-1)^5
result=[i-1,j-1,k-1,l-1,m-1];
break
end
end
end
end
end
end
disp(['满足条件的五个数如下:',num2str(result)])
输入任意一个5位数的整数:12500
满足条件的五个数如下:5 5 5 5 0