设计程序,求S=1+(1+2)+(1+2+3)+...+(1+2+3+...+n)的值

问题描述:

设计程序,求S=1+(1+2)+(1+2+3)+...+(1+2+3+...+n)的值
用DELPHI 做
求S=1+(1+2)+(1+2+3)+...+(1+2+3+...+n)的值
1个回答 分类:综合 2014-09-19

问题解答:

我来补答
datarea segment
n dw 3
result dw
datarea ends
stack_seg segment
dw 128 dup(0)
tos label word
stack_seg ends
prognam segment
main proc far
assume cs:prognam,ds:datarea,ss:stack_seg
start:
mov ax,stack_seg
mov ss,ax
mov sp,offset tos
push ds
sub ax,ax
push ax
mov ax,datarea
mov ds,ax
mov bx,n
push bx
call fact
pop result
mov dx,result ;result 已经放到DX中了
mov ah,2
int 21h
ret
main endp
fact proc near
push ax
push bp
mov bp,sp
mov ax,[bp+6]
cmp ax,0
jne fact1
inc ax
jmp exit
fact1:
dec ax
push ax
call fact
pop ax
mul word ptr[bp+6]
exit:
mov [bp+6],ax
pop bp
pop ax
ret
fact endp
prognam ends
end start
汇编的
#define N 80
void main(){
int a[N]; /* 保存结果 */
int index; /* 计数器变量 初始值为1 */
int i,j,k,d; /* 循环变量 */
int m=50; /* 求m!; */
a[1]=1;
index=1;
for(i=1;i9){
a[index+1]=a[index+1]+a[index]/10;
a[index]=a[index]%10;
index++;
}
}
for(d=index;d>0;--d)
printf(“%d\n“,a[d]);
}
c的
 
 
展开全文阅读
剩余:2000
下一页:例6求步骤