割り算

                       n,m=$*
                      w=m.size
                      i=n.size
                      f=proc{|



*a|a.map{|s|s.to_s.rjust w+i+1}};a=f[n.to_i/d=m.to_i,
s="-"*i,m+")"+n];t=i=0;n.chars{|c|s<<45;w+=1;s,a="-"*
t.to_s.size,a+f[s,t,t-t%=d]if(t=t*10+c.to_i)/d>0};;a[




                      #Y.Endoh
                      3,2]=[];
                      puts a +
                       f[s,t]
$ ruby19 div.rb 123454321 99
     1247013
   ---------
99)123454321
    99
   ----
    244
    198
    ----
     465
     396
     ----
      694
      693
      -----
        132
         99
        ----
         331
         297
         ---
          34

なんとなく筆算。AA のセンスが無いのは仕様です。