水仙花数C语言与python版

水仙花数 Ⅰ(C++ Java JavaScript Python C语言) 例如153是水仙花数,153是一个3位数,并且153 = 1^3 + 5^3 + 3^3。第一行输入一个整数n,表示一个n位的正整数。n在3到7之间,包含3和7。,是指一个n位的正整数,其各位数字的n次方和等于该数本身。若m大于水仙花数的个数,返回最后一个水仙花数和m的乘积。第二行输入一个正整数m,表示需要返回第m个水仙花数。返回长度是n的第m个水仙花数。若输入不合法,返回-1。153是第一个水仙花数。 阅读详情

水仙花数

  • 就是 100-1000 以内的三位数,例如:153 = 111 + 555 + 333 这样的数叫做水仙花数。

C语言实现

  • 过程很简单,穷举,一个一个数字的循环试
// 水仙花数
#include <stdio.h>
#include <math.h>
int main()
{
	int b, s, g;
	for(int num = 100; num < 1000; num++)
	{
		b = num/100;
		s = num/10%10;
		g = num%10;
		// 使用计算幂的函数
		if (num == (pow(b, 3) + pow(s, 3) + pow(g, 3)))
		{
			printf("%5d\n", num);
		}
	}
	return 0;
}

python实现

  • 注意点是 python的数值需要加上 int() 进行类型转换, 因为python 除法得到的可能是浮点类型。
# 水仙花数
for num in range(100, 1000):
    b = int(num/100)
    s = int(num/10)%10
    g = num%10
    if num == b**3 + s**3 + g**3:
        print("水仙花数: ", num)

生成器实现

  • 如前面的文章实现斐波那契数列,这里实现水仙花数
  • 另外,生成器实现真的是特别的方便! 我们就不在写 迭代器版本的了,生成器自动创建了 iter,next方法,实在是简单,简化。
def hua():
    for num in range(100, 1000):
        b = int(num/100)
        s = int(num/10)%10
        g = num%10
        if num == b**3 + s**3 + g**3:
            yield num


for i in hua():
    print(i)

结果:
153
370
371
407
华为OD机试2024年E卷-水仙花数[100分]( Java | Python3 | C++ | C语言 | JsNode | Go )实现100%通过率 所谓的水仙花数是指一个n位的正整数其各位数字的n次方的和等于该数本身,例如153是一个三位数并且153 = 1^3 + 5^3 + 3^3。 阅读详情

相关推荐

华为OD机试:字符串分割为水仙花数问题的完整解析与C++、Java、JavaScript和Python多语言实现

解决这个问题的关键在于理解水仙花数的定义,并通过递归算法来实现字符串的分割。将字符串转换为ASCII码值的数组:每个字符的ASCII码值都可以通过ord()函数(Python)或类似的方法获得。递归分割:我们从字符串的起始位置开始,依次计算每个可能的子串的ASCII和,并判断该和是否是一个水仙花数。如果是水仙花数,则继续递归地分割剩余的字符串。结果判断:根据递归分割的结果判断分割是否成功,并输出相应的结果。

m0_57781768的博客 412

C语言:水仙花数简单实现

问题:水仙花数是一个三位数,三位数各位的立方之和等于三位数本身. 下面的代码仅供参考,你也可以自由发挥的. 计算的水仙花数有四个:153 370 371 407 代码1: #include <stdio.h> int main() { int i , a , b , c; for(i=100;i<1000;i++){ a = i/100; b = (i -a*100)/10; c = i%10; if(i==a*a*a+b*b*b+c*c*c) printf("%d

零小唬的博客 2万+

ROS阿克曼小车避坑指南:TEB Local Planner参数调优实战(附完整配置文件)

本文针对ROS阿克曼底盘机器人,提供了TEB Local Planner参数调优的实战指南。文章深入剖析了阿克曼模型与TEB的协同工作原理,重点讲解了`min_turning_radius`、`cmd_angle_instead_rotvel`等关键参数的设置与调试方法,并分享了性能优化、避障行为调整的实用技巧,旨在帮助开发者避开常见陷阱,实现小车在复杂环境中的稳定、高效导航。

ik6789012的博客 499

C/C++/Python实现水仙花数(daffodil)

C/C++实现水仙花数(daffodil) 题目:输出100~999中所有的水仙花数。若3位数ABC满足ABC=A3+B3+C3ABC=A^3+B^3+C^3ABC=A3+B3+C3,则称其为水仙花数。例如 153=13+53+33153=1^3+5^3+3^3153=13+53+33,所以153是水仙花数。 C++代码 #include<stdio.h> #include<math.h> int main() { int x,a,b,c; for(x=100;x<=9

fjlaym的博客 1209

RT-Thread与ROS2通信:micro-ROS在STM32上的移植实践

本文详细介绍了在STM32平台上使用RT-Thread实时操作系统移植micro-ROS实现与ROS2通信的实践方案。通过对比rosserial方案,重点阐述了micro-ROS基于XRCE-DDS协议栈在数据可靠性(丢包率低于1%)、双模式通信(UDP/串口)以及C/C++混合编程方面的优势,为嵌入式设备与ROS2的高效通信提供了完整解决方案。

emacs5lisp的博客 326

loadStop的原因导致的SSUSP

Total内存值是可用来调度的可用内存,当前可用内存为 0M。 loadSched和loadStop的阈值是根据 Total 内存和节点内存来做限制的。 loadStop 50G,现在有大量作业SSUSP,说明之前某个时间点该节点内存可能有低于50G的时候,导致作业SSUSP,具体是否是这个原因引起的需要用 bjobs -l JobID 看下作业的详细信息。 如果是loadStop的原因导致的 SSUSP,根据loadStop设置的阈值,Total 值高于loadStop值后,将逐步恢复挂起的作业

Blueberry521的博客 664

C、Python实现水仙花数输出

水仙花数: 水仙花数(Narcissistic number)也被称为超完全数字不变数(pluperfect digital invariant, PPDI)、自恋数、自幂数、阿姆斯壮数或阿姆斯特朗数(Armstrong number),水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身(例如:1^3 + 5^3+ 3^3 = 153)。 #include <stdio....

weixin_44659084的博客 584

USB的24脚和12脚TYPEC引脚定义

USB 是一种接口,用于将设备连接到计算机上。通过该连接,计算机可以向设备发送数据或检索来自设备的数据。USB 为开发者提供了一个标准接口,适用于多种不同类型的应用。借助于系统的设计过程,USB 设备易于连接和使用。本应用笔记会使该过程变得更加简单。以下是本应用笔记中会使用的概念:USB 历史USB 架构USB 物理接口USB 速度USB 电源USB 端点USB 通信协议USB 描述符USB 类设备USB 枚举与配置过程。

易板 1万+

C语言求“水仙花”数(详细)

C语言求“水仙花”数(详细)

m0_54158068的博客 6万+

IEEE Access 上岸指南,附含泪整理的 cover letter 、沟通邮件、终版文档等资料包

终于上岸了! 我是一个小硕,本科期间发表过两篇水文,奈何学校有更高的毕业要求,只能硬着头皮尝试一下 SCI。 想投 IEEE Access 的朋友都应该知道 小木虫论坛 对这个期刊的讨论,褒贬不一,有的人说是大水刊,有的人说有难度。 比如: @wow_: 不可否认,灌水期刊。只要之前中过一篇,再投基本没有不录用的!我们实验室其他老师说过一区除外的收费期刊都应该禁止灌水。 @pssp: 审稿人还...

kurryluo的博客 1万+

HDMI协议介绍(二)--DataIsland Packets

前文简单介绍了HDMI传输的三个周期:控制周期、DataIsland周期和Video周期。DataIsland传输音频和辅助数据,这些数据以Packet的形式传输。本文简单介绍DataIsland Packet。

SlamDunk的博客 5671

C语言中的数字——水仙花数

1、水仙花数 水仙花数(Narcissistic number)也被称为超完全数字不变数(pluperfect digital invariant, PPDI)、自恋数、自幂数、阿姆斯壮数或阿姆斯特朗数(Armstrong number),水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身(例如:1^3 + 5^3+ 3^3 = 153) (1)编写一个程序,能输出所有的水仙花数。 #include<stdio.h> int main(){ int x;

m0_62555808的博客 5万+

神经网络学习笔记-波尔兹曼(Boltzmann)机

Boltzmann机是一种反馈随机神经网络 两种输出状态,单极性0或1。输出状态的取值根据概率统计法则决定,这种概率统计法则类似Boltzmann分布,部分反馈 它在神经元状态变化中引入了统计概率,网络的平衡状态服从Boltzmann分布,网络运行机制基于模拟退火算法。 离散Hopfield神经网络+模拟退火+隐单元=Boltzman机 DHNN全反馈,转移函数:符号函数 BM机网络拓扑...

求易学堂的博客 2612

[Python/C语言]不同语言在打印水仙花数的不同的对比

输出“水仙花”数,因此要先理解什么是“水仙花”数:所谓“水仙花数”是指 一个3位数,它的各位数字的立方和等于该数本身 即:a3+b3+c3等于a*100+b*10+c 例如,153=13+53+33。 Python for p2 in range(1,1000): #------->水仙花数 bai=p2//100 shi=p2//10%10 ge=p2%10 if bai**3+shi**3+ge**3 == p2: print

weixin_61800684的博客 628

Docker:快速部署 Temporal 工作流引擎的技术指南

Temporal是一个开源的分布式工作流引擎,适用于复杂业务流程(如订单处理、支付流程等),提供状态持久化、自动重试、多语言SDK支持等特性。部署简单,支持Docker Compose,包含核心服务、Web UI及数据库。以TypeScript为例,开发者可快速编写工作流(如订单处理)和Worker,通过CLI或SDK启动和管理。Temporal简化了分布式系统的可靠性设计,适合电商、自动化任务等场景。

木头 640

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

水仙花数-C语言和python实现

【代码】水仙花数-C语言和python实现。

m0_46363470的博客 442

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

水仙花数的求解多方法,多语言(C,python)

题目 水仙花数(Narcissistic number)也被称为超完全数字不变数(pluperfect digital invariant, PPDI)、自恋数、自幂数、阿姆斯壮数或阿姆斯特朗数(Armstrong number),水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身 (例如:1^3 + 5^3+ 3^3 = 153)。 题目分析 假设一个数是水仙花数,那么我们...

Kobe1916的博客 985

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

python判断水仙花数、四叶玫瑰的编程_c语言判断水仙花数

展开全部C语言输32313133353236313431303231363533e78988e69d8331333366303839出水仙花数的具体分析和实现流程如下:1、水仙花数的含义“水仙花数”是一个三位数其各位数字的立方和等于该数本身。例如:3^3 + 7^3+ 0^3 = 3702、算法分析把给出的某个三位数的个位、十位、百位分别拆分,并求其立方和(设为sum),若sum与给出的三位数相等...

weixin_40002611的博客 2131

python判断水仙花数、四叶玫瑰的编程_水仙花数的c语言编程。

展开全部“水32313133353236313431303231363533e58685e5aeb931333366306463仙花数”是指一个三位数,它的各位数字的立方和等于其本身,比如:153=13+53+3^3。 现在要求输出所有在m和n范围内的水仙花数。输入数据有多组,每组占一行,包括两个整数m和n(100 ≤ m ≤ n ≤ 999)。对于每个测试实例,要求输出所有在给定范围内的水仙花数...

weixin_39552304的博客 1619

特殊的整数-水仙花数

水仙花数是指一个n位数(n≥3),其各位数字的n次幂之和等于其本身。常见的三位数水仙花数有153、370、371、407等。判断方法是将数字分解为各位数字后计算其n次幂和。该概念可扩展至更高位数,如四位数(1634等)称为四叶玫瑰数。编程实现时,核心思路是遍历指定位数的所有数字,分解各位后计算幂和并进行比较。Python示例展示了查找三位数和通用n位数水仙花数的方法,C语言实现则需注意整数溢出问题。水仙花数是自幂数在n=3时的特例,具有数学趣味性和编程练习价值。

Dd000110的博客 2208

python求100到999的水仙花数_C语言经典算法例题求100-999之间的“水仙花数

C语言经典算法例题求100-999之间的“水仙花数题目:打印出所有的 "水仙花数 ",所谓 "水仙花数 "是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个 "水仙花数 ",因为153=1的三次方+5的三次方+3的三次方。实现代码如下#include #include using namespace std;/*求100-999之间的水仙花数*/int main(){int numb...

weixin_39715290的博客 2378

python输出1到1000内的水仙花数

如何实现水仙花 首先什么是水仙花? 所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。 2.代码实现: (1)java版 public static void main(String[] args) { int x,y,z;//定义个位,十位,百位 for (int i = ...

与优秀的你同在 3819

计算机程序水仙花数,水仙花数

水仙花数(Narcissistic number)也被称为超完全数字不变数(pluperfect digital invariant, PPDI)、自恋数、自幂数、阿姆斯壮数或阿姆斯特朗数(Armstrong number),水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身(例如:1^3 + 5^3+ 3^3 = 153)。中文名水仙花数外文名Narcissistic num...

weixin_30039311的博客 6306

用python输出所有的玫瑰花数_c语言输出所有得水仙花数,玫瑰花数和五角星数

展开全部水仙花数即2113三位的自幂数。所谓自幂数,就是指5261一个 n 位数 ( n≥41023 ),其每位上的数字的1653 n 次幂之和等于本身。所以水仙花数,首先是三位数,形式为abc,同时a,b,c的立方和值与原本数相同。类似的还有四位自幂数:四叶玫瑰数五位自幂数:五角星数六位自幂数:六合数等等。对于水仙花数的判断,需要按照以下步骤:1 提取该数的个位,十位,百位值。2 计算三个数的立...

weixin_39624700的博客 911

Python123:兔子繁衍问题、水仙花数(C语言)

一对兔子,从出生后第3个月起每个月都生一对兔子。小兔子长到第3个月后每个月又生一对兔子。假如兔子都不死,请问第1个月出生的一对兔子,至少需要繁衍到第几个月时兔子总数才可以达到N对?:水仙花数是指一个N位正整数(N≥3),它的每个位上的数字的N次幂之和等于它本身。例如:153=1​3​​+5​3​​+3​3​​。输入在一行中给出一个不超过10000的正整数N。按递增顺序输出所有N位水仙花数,每个数字占一行。输入在一行中给出一个正整数N(3≤N≤7)。在一行中输出兔子总数达到N最少需要的月数。

chat8052的博客 1621

水仙花数

【代码】水仙花数。

hdnbnsnbns的博客 826
上一篇: 翻译密码(简单的 大小写英文字母后移四位,其他字符不变)C语言与Python版本
下一篇: 输出菱形图案C语言与Python实现
我是py呀
博客等级 码龄8年 205粉丝 130原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值