-->
当前位置:首页 > 题库 > 正文内容

编程题:h0109. 阶乘!

Luz3年前 (2022-02-19)题库728
阿里夫从Bongobazar买了一台超级计算机。Bongobazar是达卡的一个地方,手工制品随处可见。所以他买的超级计算机是二手的有一些bug。其中一个bug是这台计算机的C/C++无符号长整数的范围编译器已经改变了。现在它的新的下限是10000,上限是6227020800。Arif写道
C/C++中确定一个整数的阶乘的程序。定义一个整数的阶乘
递归为:

factorial(0) = 1

factorial(n) = n ∗ f actorial(n − 1).

当然,我们可以操纵这些表达式。例如,它可以写成

factorial(n) = n ∗ (n − 1) ∗ f actorial(n − 2)
这个定义也可以转换为迭代的定义。
但阿里夫知道,他的程序在超级计算机中不会正常运行。请你要写一程序,将模拟改变的行为在正常的计算机。
### 输入格式:

输入文件包含几行输入。每一行包含一个整数n。整数不能超过6位。输入在文件结束时终止。

### 输出格式:

对于每一行输入,您应该输出一行。这一行将包含一个整数n!如果n的值!符合Arif计算机的无符号长整数。否则,该行将包含以下两个单词之一

Overflow! (When n! > 6227020800)

Underflow! (When n! < 10000)

### 输入样例:
in
2
10
100


### 输出样例:

out
Underflow!
3628800
Overflow!







答案:若无答案欢迎评论

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。