count.pas

来自「PASCAL光盘资料PASCAL光盘资料PASCAL光盘资料」· PAS 代码 · 共 27 行

PAS
27
字号
program E2_2;{count page's number}
var n,m:longint;
    a,b:array[0..9] of longint;
    c:array[1..9] of 0..9;
    len,i,j:integer;

begin
 assign(input,'count.in');
 assign(output,'count.out');
 reset(input); rewrite(output);
 readln(n);
 m:=n; len:=0;
 while m>0 do begin len:=len+1;c[len]:=m mod 10;m:=m div 10;end;
 b[0]:=0;b[1]:=1;
 for i:=2 to 9 do b[i]:=b[i-1]*10;
 m:=n;
 for i:=len downto 1 do
  begin
   for j:=0 to 9 do a[j]:=a[j]+b[i-1]*(i-1)*c[i];
   for j:=0 to c[i]-1 do a[j]:=a[j]+b[i];
   a[c[i]]:=a[c[i]]+m mod b[i]+1;
  end;
  for i:=1 to len do a[0]:=a[0]-b[i];
  for i:=0 to 9 do writeln(a[i]);
  close(output)
end.

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?