判断阿姆斯特朗数_matlab函数

如果一个n位正整数等于其各个数字的n次方和,则称该数为阿姆斯特朗数(也称自恋性数)。比如407 =  4^3+0^3+7^3就是一个阿姆斯特朗数,是编写一个函数文件判断输入的数是否为阿姆斯特朗数。

【分析】根据题意首先应分离出给定n位正整数的个位数字,然后根据题述条件进行判断。


function flag = isArmstrong(N)    %flag为函数返回值,isAr为函数名,N为输入参数, 返回值 = 函数名(输入参数)
                           %m文件名要与函数名一致;
                           
x=int2str(N)-'0';          %分离正整数
                           %2为英文里的to,  int to str,把数值型转化为字符串并且小数部分,
                           %-‘0’,字符串的买个数字减字符‘0’,相当于右边为数值型,
                           %不减相当于字符串每一位的ASCALL码;
                           %str = int2str(A)将矩阵A中的元素x转换为整型,再把结果转换成一个字符串矩阵;
                           
n=length(x);               %计算向量或矩阵的长度
                           % y = length(x) 函数计算指定向量或矩阵的长度y。
                           %如果参数变量x是向量,则返回其长度;如果参数变量是非空矩阵,则length(x)与max(size(x))等价
                           
flag = N == sum(x.^n);    %x.^n 矩阵中的每个元素的n次幂,
                          % a=sum(x);%列求和
                          %a=sum(x,2);%行求和
                          %a=sum(x(:));%矩阵求和
                          %如果矩阵A为向量,则为所有元素之和;
end

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值