c++ OJ上的多行输入(360例子水仙花数)
来源:互联网 发布:淘宝卖家和买家都被骗 编辑:程序博客网 时间:2024/06/07 15:53
水仙花数
(编程题须知) (参考答案)
内存限制:C/C++语言 32768KB;其他语言 557056KB
题目描述:
春天是鲜花的季节,水仙花就是其中最迷人的代表,数学上有个水仙花数,他是这样定义的:
“水仙花数”是指一个三位数,它的各位数字的立方和等于其本身,比如:153=1^3+5^3+3^3。
现在要求输出所有在m和n范围内的水仙花数。
输入
输入数据有多组,每组占一行,包括两个整数m和n(100<=m<=n<=999)。
输出
对于每个测试实例,要求输出所有在给定范围内的水仙花数,就是说,输出的水仙花数必须大于等于m,并且小于等于n,如果有多个,则要求从小到大排列在一行内输出,之间用一个空格隔开;
如果给定的范围内不存在水仙花数,则输出no;
每个测试实例的输出占一行。
样例输入
100 120
300 380
样例输出
no
370 371
#include <iostream>
#include <cmath>
using namespace std;
void shuixianhuanum(int m,int n)
{
bool success = 0;
for(int i=m;i<=n;i++)
{
int g=i%10;
int b=i/100;
int s=i/10-b*10;
if(i == pow(b,3) + pow(s,3)+ pow(g,3))
{
success = 1;
cout<<i<<" ";
}
}
if(!success)
cout<<"no";
cout<<endl;
}
int main()
{
int m,n,countn=0;
int data[100];
while(cin>>m>>n && countn<50)
{
if(m<100 || n>999 || m>n)
{
cout<<"输入不合法,请输入100<=m<=n<=999"<<endl;
return 0;
}
data[countn*2] = m;
data[countn*2+1] = n;
countn++;
}
for(int i=0;i<countn;i++)
shuixianhuanum(data[2*i],data[2*i+1]);
return 0;
}
while(cin>>m>>n)
输入多组两个数为一组的数
#include <cmath>
pow(x,y); //x的y次方
0 0
- c++ OJ上的多行输入(360例子水仙花数)
- OJ题——水仙花数(各位数的立方等于原数的数)
- c,水仙花数的实现
- 南阳OJ~~水仙花数
- 水仙花数 (sdut oj)
- 让用户输入一个三位数(若不是三位数则提示错误),判断该数是否是水仙花数。(水仙花数:每一位上的数字的立方和,等于该数本身)
- 所有水仙花数(C#)
- C语言基础 编写一个函数,判断输入的数字是不是水仙花数
- java__for水仙花数,求数的位数上的数
- OJ 30之水仙花数
- 求给定范围内的水仙花数c
- OJ刷题之打印出所有的水仙花数
- 2015年第十三周oj:打印所有的水仙花数
- zzuli OJ 1096: 水仙花数(函数专题)
- 21位水仙花数(C语言)
- c输出水仙花数
- c语言:水仙花数
- c 水仙花数
- 1028
- C++(<string>):string str="xxxx"+"6";
- java自学日记 day 11
- Java的面向对象理解
- TCP协议如何保证传输的可靠性
- c++ OJ上的多行输入(360例子水仙花数)
- L2-012. 关于堆的判断(小顶堆)
- Codeforces Round #404 (Div. 2)(A+B)
- javax.servlet.jsp.JspException cannot be resolved to a type
- [LeetCode]482. License Key Formatting
- 找一个数字中的单数
- C++ 浮点数(double、float)如何定义NaN、正无穷、负无穷,以及如何判断是否是NaN
- 疯狂刷面试题目
- Add Two Numbers --leetcode