C++和python实现阿姆斯特朗数字查找实例代码


Posted in Python onDecember 07, 2020

1.题目解释

如果一个n位正整数等于其各位数字的n次方之和,则称该数为阿姆斯特朗数。 例如1^3 + 5^3 + 3^3 = 153

1000以内的阿姆斯特朗数: 1, 2, 3, 4, 5, 6, 7, 8, 9, 153, 370, 371, 407

2.判断一个数是否为阿姆斯特朗数

1.先来一个简单的代码,判断一个数是否为阿姆斯特朗数

来看看C++写的

#include <iostream>
using namespace std;
int main()
{
	int n, r, sum=0, temp; 
	cout<<"Enter the Number= "; 
	cin>>n; 
	temp=n; 
	while(n>0) 
	{ 
		r=n%10; 
		sum=sum+(r*r*r); 
		n=n/10; 
	} 
	if(temp==sum) 
		cout<<"Armstrong Number."<<endl; 
	else 
		cout<<"Not Armstrong Number."<<endl; 
	return 0;
}

运行结果:

C++和python实现阿姆斯特朗数字查找实例代码

接下来看看Python

num = int(input("请输入一个数字:"))
sum= 0
n = len(str(num))
temp = num
while temp >0:
 digit = temp %10 # 获取个位数字
 sum += digit**n # 对计算结果进行累加
 temp //= 10
if num == sum :
 print("太棒了!",num,"是阿姆斯特朗数")
else:
 print("很遗憾!",num,"不是阿姆斯特朗数")

运行结果:

C++和python实现阿姆斯特朗数字查找实例代码

2.写一个查找固定范围内的阿姆斯特朗数

python实现:

lower = int(input("最小值:"))
upper = int(input("最大值:"))
print("下面是你想要从{}到{}之间的阿姆斯特朗数\n".format(lower,upper))
for num in range(lower,upper+1):
 sum = 0
 n = len(str(num))
 temp = num
 while temp >0:
  digit = temp %10 # 获取个位数字
  sum+= digit**n # 对计算结果进行累加

  temp //= 10
 if num == sum:
  print(num)

运行结果:

C++和python实现阿姆斯特朗数字查找实例代码

C++实现:

#include <iostream>
using namespace std;

int test(int a,int b,int c,int d)
{
	if(a)return a*a*a*a+b*b*b*b*b+c*c*c*c+d*d*d*d*d;
	if(b)return b*b*b+c*c*c+d*d*d;
	if(c)return c*c+d*d;
	if(d)return d;
}
void func(int min, int max)
{
	if(min<=0||min>=max||max<0||max>9999)
	{
		cout << "error!" << endl;
	}
	int a,b,c,d;
	for(int i=min;i<=max;i++)
	{
		a = i/1000;
		b = (i%1000)/100;
		c = (i%100)/10;
		d = i%10;
		if(i==test(a,b,c,d))
			cout << i << endl;
	}
}

int main()
{
	int min,max;
	cin >> min;
	cin >> max;

	func(min,max);

	system("pause");
	return 0;
}

运行结果展示:

C++和python实现阿姆斯特朗数字查找实例代码

C++太复杂了,就不能向python学学,多友好的语言,学C++心态炸裂的第二天,如果有帮助到你点个关注呗!

到此这篇关于C++和python实现阿姆斯特朗数字查找的文章就介绍到这了,更多相关C++和python阿姆斯特朗数字查找内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
github配置使用指南
Nov 18 Python
python复制与引用用法分析
Apr 08 Python
详解在Python程序中使用Cookie的教程
Apr 30 Python
python3.6使用pickle序列化class的方法
Oct 22 Python
老生常谈python中的重载
Nov 11 Python
Python进阶:生成器 懒人版本的迭代器详解
Jun 29 Python
pyftplib中文乱码问题解决方案
Jan 11 Python
用pytorch的nn.Module构造简单全链接层实例
Jan 14 Python
Python中私有属性的定义方式
Mar 05 Python
parser.add_argument中的action使用
Apr 20 Python
Python sqlalchemy时间戳及密码管理实现代码详解
Aug 01 Python
Django如何使用asyncio协程和ThreadPoolExecutor多线程
Oct 12 Python
selenium判断元素是否存在的两种方法小结
Dec 07 #Python
pycharm实现猜数游戏
Dec 07 #Python
Python Selenium XPath根据文本内容查找元素的方法
Dec 07 #Python
Selenium关闭INFO:CONSOLE提示的解决
Dec 07 #Python
pyqt5实现井字棋的示例代码
Dec 07 #Python
Selenium环境变量配置(火狐浏览器)及验证实现
Dec 07 #Python
详解BeautifulSoup获取特定标签下内容的方法
Dec 07 #Python
You might like
PHP把数字转成人民币大写的函数分享
2014/06/30 PHP
PHP date()函数警告: It is not safe to rely on the system解决方法
2014/08/20 PHP
php结合正则获取字符串中数字
2015/06/19 PHP
反射调用private方法实践(php、java)
2015/12/21 PHP
WordPress开发中短代码的实现及相关函数使用技巧
2016/01/05 PHP
Yii2中关联查询简单用法示例
2016/08/10 PHP
PHP新特性详解之命名空间、性状与生成器
2017/07/18 PHP
js文件包含的几种方式介绍
2014/09/28 Javascript
jquery实现搜索框常见效果的方法
2015/01/22 Javascript
javascript实现客户端兼容各浏览器创建csv并下载的方法
2015/03/23 Javascript
javascript实现仿腾讯游戏选择
2015/05/14 Javascript
基于jQuery实现的双11天猫拆红包抽奖效果
2015/12/01 Javascript
Javascript中的几种继承方式对比分析
2016/03/22 Javascript
jqGrid 学习笔记整理——进阶篇(一 )
2016/04/17 Javascript
vue用addRoutes实现动态路由的示例
2017/09/15 Javascript
layer插件select选中默认值的方法
2018/08/14 Javascript
vue click.stop阻止点击事件继续传播的方法
2018/09/04 Javascript
[01:49]一目了然!DOTA2DotA快捷操作对比第二弹
2014/05/16 DOTA
python根据距离和时长计算配速示例
2014/02/16 Python
详解Python使用tensorflow入门指南
2018/02/09 Python
django 发送手机验证码的示例代码
2018/04/25 Python
Python实现TCP通信的示例代码
2019/09/09 Python
感知器基础原理及python实现过程详解
2019/09/30 Python
如何将你的应用迁移到Python3的三个步骤
2019/12/22 Python
Numpy中ndim、shape、dtype、astype的用法详解
2020/06/14 Python
使用CSS3实现SVG路径描边动画效果入门教程
2019/10/21 HTML / CSS
html5新增的属性和废除的属性简要概述
2013/02/20 HTML / CSS
基于html5绘制圆形多角图案
2016/04/21 HTML / CSS
基督教卡片、励志礼品、家居装饰等:DaySpring
2018/10/12 全球购物
高中生操行评语大全
2014/04/25 职场文书
三八节标语
2014/06/27 职场文书
企业领导班子四风对照检查材料
2014/09/27 职场文书
小学教研工作总结2015
2015/05/13 职场文书
2016大学生求职自荐信范文
2016/01/28 职场文书
《攀登者》:“海拔8000米以上,你不能指望任何人”
2019/11/25 职场文书
Flutter集成高德地图并添加自定义Maker的实践
2022/04/07 Java/Android