Matlab练习1
操作系统:win10 Matlab版本:Matlab R2017a 1.分别求一个三位正整数的个位、十位、百位。 x=input('x=?:'); a=fix(x/100) %百位 b=rem(fix(x/10),10) %十位 c=rem(x,10) %个位 批注:默认数据类型为8位double,更改输出显示为format,默认显示小数点后四位。 2.求【1,100】区间的所有素数。 x=1:100; y=isprime(x);%找到素数,返回1 y1=find(y);%素数的位置 x(y1)%输出 3.求全部水仙花数。 水仙花数是指:一个三位数,其各位数字立方和等于该数本身。例如:370=3 3 +7 3 +0 0 .这就说明370是一个水仙花数。 自己写的版本: clc,clear for i=100:1:999 a=fix(i/100); b=rem(fix(i/10),10); c=rem(i,10); if (a^3+b^3+c^3==i) disp(i) end end 例子程序: i=100:999; m1=fix(i/100); m2=rem(fix(i/10),10); m3=rem(i,10); k=find(i==m1.*m1.*m1+m2.*m2.*m2+m3.*m3.*m3) s=i(k) 批注:同学建议最好先求个位,虽然是个人习惯