C++ 水仙花数

案例描述:水仙花数是指一个3位数,它的每个位上的数字的3次幂之和等于它本身例如:

1A3+5A3+3A3=153

请利用do....while语句,求出所有3位数中的水仙花数

分析思路:

1、将所有的三位数进行输出(100~999)

2、在所有三位数中找到水仙花数

水仙花数153

获取个位:153%10 = 3

获取十位:153 / 10 = 15 ,15 % 10 = 5

获取百位:153 / 100 = 1

判断:个位^3+十位^3+百位^3 = 本身

cpp 复制代码
#include <iostream>  
#include <string>
using namespace std;
  
int main() {  
 

int num = 100;
do{
	int a= 0;
	int b= 0;
	int c= 0;
	int d= 0;
	
	a = num % 10; //个数
	b = num / 10 % 10; //十位
	c = num /100; //百位 
	
	d = a*a*a + b*b*b + c*c*c; 

	if(d==num){
	cout<<num<<endl;
	} 
	
	num++; //do-while循环 
}
while(num<1000);	
	
return 0; 
 
}
相关推荐
码匠许师傅11 小时前
【C++ 面试真题】C++ 的 const 和 constexpr 有什么区别?
c++·面试
坚持编程的菜鸟13 小时前
模拟实现memmove
c语言·算法·模拟实现memmove
wabs66614 小时前
关于图论【最短路径之Dijkstra算法(堆优化版)|卡码网47.参加科学大会的思考】
数据结构·算法·图论·优先级队列·邻接表·小顶堆·卡码网
果果燕14 小时前
实习笔记(一):NFS、Samba、VNC、Git、CMake、systemd、内核、交叉编译
linux·arm开发·c++·笔记·git
坚持编程的菜鸟14 小时前
编写判断大小端程序
c语言·算法·判断大小端
papaofdoudou14 小时前
判断排列逆序奇偶性的乘积判别法(范德蒙德符号法)
人工智能·算法
牛艺翔15 小时前
C++基础
开发语言·c++
键盘会跳舞15 小时前
C++ :容器适配器stack源码级拆解
开发语言·c++··stack·先进后出
linux-hzh15 小时前
百日算法修炼 · Day 03
java·算法
问商十三载15 小时前
RAG 检索效果差怎么排查?2026 五层诊断法完整指南
开发语言·人工智能·windows·python·算法