Ⅰ c语言编程 :输入整数n,求n的阶乘 并输出。
1、首先打开CodeBlocks,新建一个空白页面:
Ⅱ 求整数n(n>=0)阶乘的算法如下,其时间复杂度:
#include<stdio.h>
int main(void)
{
int i,s=1;
printf("Please input a intdata:");
scanf("%d",&i);
for(;i>1;i--)
s*=i;
printf("%d ",s);
return 0;
}
这是一个递归程,可以看出每递归一次n的规模小一,所是结果是线性的。
Ⅲ 自然数阶乘 流程图
第一步:让s=1,i=1
第二步输入要算的阶乘的对应的正整数n
第三步让s=s*i,i=i+1
第四步判断i是否大于n, 若大于打印出S
否则返回第三步
s=1 i=1 input n while i
用函数的递归调用的方法求n的阶乘问题和把一个整数...
用for语句描述算法如下:
输入n; T:=1; for i:=1 to n do
begin T:=T*i; end. 输出T
(3)算法设计整数n阶乘的流程图扩展阅读:
现在通用的阶乘符号是法国数学家克拉姆(Kramp, C.)于1808年最先提出来的,后经德国数学家、物理学家格奥尔格·欧姆(Ohm, M.)等人的倡议而流行起来,直用到现在。
例如所要求的数是n,则阶乘式是1×2×3×……×n,设得到的积是x,x就是n的阶乘。
参考资料来源:网络-阶乘
Ⅳ 用c++语言求n的阶乘
1、打开vs6.0软件,准备一个后缀为cpp的文件,在c++文件中首先写入头文件,定义一个处理阶乘的函数,接着写一个空的main函数:
Ⅳ 从键盘输入一个正整数n,求出该数的双阶乘。流程图描述
*双阶乘m!!表示:
*当m是自然数时,表示不超过m且与m有相同奇偶性的所有正整数的乘积。
*如:3!!=1*3=3,6!!=2*4*6=48(另0!!=1)
*当m是负奇数时,表示绝对值小于它的绝对值的所有负奇数的绝对值积的倒数。
*如:(-7)!!=1/(|-5| * |-3| * |-1|)=1/15
*当m是负偶数时,m!!不存在
CLEAR
INPUT '请输入一个整数(小数位无效):' TO n
n=INT(n)
sjc=1
DO CASE
CASE n=0
sjc=1
CASE n>0 and MOD(n,2)=1
FOR i=1 TO n STEP 2
sjc=sjc*i
ENDFOR
CASE n>0 and MOD(n,2)=0
FOR i=2 TO n STEP 2
sjc=sjc*i
ENDFOR
CASE n>0 and MOD(n,2)=1
FOR i=1 TO n STEP 2
sjc=sjc*i
ENDFOR
CASE n<0 and MOD(n,2)=1
FOR i=-1 TO n+2 STEP -2
sjc=sjc*ABS(i)
ENDFOR
CASE n<0 and MOD(n,2)=0
sjc=-1
ENDCASE
IF sjc=-1
?LTRIM(STR(n))+'的双阶乘不存在!'
ELSE
IF n>=0
?LTRIM(STR(n))+'的双阶乘是:'+LTRIM(STR(sjc))
ELSE
?LTRIM(STR(n))+'的双阶乘是:1/'+LTRIM(STR(sjc))
ENDIF
ENDIF
Ⅵ 求n的阶乘的算法框图
1、首先新建一个261.php,如图所示。