program BCDDIV;

{$mode objfpc}{$H+}

uses
  {$IFDEF UNIX}{$IFDEF UseCThreads}
  cthreads,
  {$ENDIF}{$ENDIF}
  Classes
  { you can add units after this },FmtBCD;

{$R *.res}

var bcd1,bcd2,bcd3:TBCD;
begin
  bcd1:=1000;
  bcd2:=1000;
  BCDDivide(bcd1,bcd2,bcd3);
  writeln(bcdtostr(bcd1), '/', bcdtostr(bcd2), '=', bcdtostr(bcd3));

  bcd1:=1000;
  bcd2:=100;
  BCDDivide(bcd1,bcd2,bcd3);
  writeln(bcdtostr(bcd1), '/', bcdtostr(bcd2), '=', bcdtostr(bcd3));

  bcd2:=10;
  BCDDivide(bcd1,bcd2,bcd3);
  writeln(bcdtostr(bcd1), '/', bcdtostr(bcd2), '=', bcdtostr(bcd3));

  bcd2:=1;
  BCDDivide(bcd1,bcd2,bcd3);
  writeln(bcdtostr(bcd1), '/', bcdtostr(bcd2), '=', bcdtostr(bcd3));

  bcd1:=100;
  bcd2:=2;
  BCDDivide(bcd1,bcd2,bcd3);
  writeln(bcdtostr(bcd1), '/', bcdtostr(bcd2), '=', bcdtostr(bcd3));

  bcd1:=1007;
  bcd2:=5;
  BCDDivide(bcd1,bcd2,bcd3);
  writeln(bcdtostr(bcd1), '/', bcdtostr(bcd2), '=', bcdtostr(bcd3));

  bcd1:=11000;
  bcd2:=11;
  BCDDivide(bcd1,bcd2,bcd3);
  writeln(bcdtostr(bcd1), '/', bcdtostr(bcd2), '=', bcdtostr(bcd3));

  bcd1:=11;
  bcd2:=11000;
  BCDDivide(bcd1,bcd2,bcd3);
  writeln(bcdtostr(bcd1), '/', bcdtostr(bcd2), '=', bcdtostr(bcd3));

  bcd1:=11;
  bcd2:=11;
  BCDDivide(bcd1,bcd2,bcd3);
  writeln(bcdtostr(bcd1), '/', bcdtostr(bcd2), '=', bcdtostr(bcd3));

  readln;
end.

