#3418. [数值问题]求1-n的和

[数值问题]求1-n的和

说明

求n的累加和(nsumm.pas/c/cpp) 

【问题描述】 

输入一个长整型范围内的数n,求1+2+3+......+n的和

要求使用高精度方法求。
【输入样例1】 
32767

【输出样例1】

536854528

提示


//友情提示!使用复制粘贴,你将永远不能进步,此代码仅供参考!

//警告,复制粘贴行为将被删号!


var

  i,w,n : longint;
  a : array[1..100] of longint;

procedure jia(k : longint);
var
  j,x : longint;
begin
  x := a[1]+k;  //先把k加到a[1],然后不断处理进位,w表示位数
  w := 0;
  while x>0 do
  begin
    w := w+1;
    a[w] := x mod 10;    //处理该位的值
    x := a[w+1]+x div 10;  //计算下一位的值
   end;
end;

begin
  //assign(input,'nsum.in');  reset(input);
  //assign(output,'nsum.out');  rewrite(output);
  readln(n);
  w := 1;
  for i := 1 to n do jia(i);
  for i := w downto 1 do write(a[i]);
  writeln;
  //close(input);  close(output);
end.

来源

入门必做-基础问题