蓝桥杯 基础练习 BASIC-7 特殊的数字 循环 判断 数位

基础练习 特殊的数字
时间限制:1.0s 内存限制:512.0MB
问题描述
  153是一个非常特殊的数,它等于它的每位数字的立方和,即153=111+555+333。编程求所有满足这种条件的三位十进制数。
输出格式
  按从小到大的顺序输出满足条件的三位十进制数,每个数占一行。

分析:本题特殊的数字,其实就是我们熟悉的水仙花数。
我们平时主要的操作就是提取每一位的值,循环判断是否满足条件。
但做这道题的时候,我采用的是以i,j,k来代表三位数的百位、十位和个位,然后进行循环判断。emmm…主要是懒得提取每一位了,
还可以少定义几个变量,节省内存空间٩(๛ ˘ ³˘)۶/傲娇/

#include <iostream>
using namespace std;
int main()
{
	int i, j, k;
	for(i = 1; i <= 9; i++)
	{
		for(j = 0; j <= 9; j++)
		{
			for(k = 0; k <= 9; k++)
			{
				if(i*i*i + j*j*j + k*k*k == i*100 + j*10 + k)
				{
					cout << i*100 + j*10 + k << endl;
				}
			}
		}
	}
	return 0;
}

猜你喜欢

转载自blog.csdn.net/weixin_43302818/article/details/85035471