pascal 函数 2的m次方 急

来源:百度知道 编辑:UC知道 时间:2024/07/02 03:53:53
输入m和n,,0<=m<n<=20,m>=0,求2的m次方+2的m+1次方+2的m+2次方……+2的n次方之和(设计过程和函数的程序)(pascal)
用高精度做

定义了两个函数,应该能满足你的要求把,经调试正确
program ex_nsqr;   
var m,n,i:longint;
function fang(a,f:longint):longint;
   var s:longint;
   begin
     fang:=1;{乘方结果初始化,很重要}
     for s:=1 to f do{通过循环来求平方,相比exp可读性更高}
       fang:=fang*a
   end;
function sqrh(m,n:longint):longint;
   var j:longint;
   begin
     sqrh:=0;{不要以为初值是0就没必要初始化,也需要,不然会得到很大的一个数}
     for j:=m to n do
       inc(sqrh,fang(2,j)){调用上面的那个函数,求出结果,也就是和}
   end;
begin
   readln(m,n);
   i:=sqrh(m,n);{调用函数}
   writeln(i);
end.

program cifang;
var sum,m,n,i:longint;
function twon(n:longint):longint;
var i:longint;
begin
twon:=1;
for i:=1 to n do twon:=twon*2;
end;
proce