您的位置:首页 > 其它

zju1095

2013-11-26 23:42 148 查看
#include <iostream>
using namespace std;
int FindMin(int a, int b, int c, int d);
bool isNum(int n);

int main()
{
int a[5850];
int n = 1;
int p2 = 1, p3 = 1, p5 = 1, p7 = 1;
a[1] = 1;
while (a
< 2000000000)
{
a[++n] = FindMin(2 * a[p2], 3 * a[p3], 5 * a[p5], 7 * a[p7]);
if (a
== 2 * a[p2]) ++p2;
if (a
== 3 * a[p3]) ++p3;
if (a
== 5 * a[p5]) ++p5;
if (a
== 7 * a[p7]) ++p7;
}
while (cin >> n && n)
{
if (n < 0 || n > 5842) break;
cout << "The " << n;
if (n % 10 == 1 && !isNum(n))
cout << "st ";
else if (n % 10 == 2 && !isNum(n))
cout << "nd ";
else if (n % 10 == 3 && !isNum(n))
cout << "rd ";
else
cout << "th ";
cout << "humble number is " << a
<< endl;
}
return 0;
}
int FindMin(int a, int b, int c, int d)
{
int min = a;
if (b < min) min = b;
if (c < min) min = c;
if (d < min) min = d;
return min;
}
bool isNum(int n)
{
if (n == 11 || n == 12 || n == 13)
return true;
return false;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: