home *** CD-ROM | disk | FTP | other *** search
/ Visual Basic 5 Developer's Kit / vb5 dev kit.iso / dev / t2win-32 / _bignum.frm (.txt) < prev    next >
Encoding:
Visual Basic Form  |  1996-08-24  |  9.7 KB  |  244 lines

  1. VERSION 4.00
  2. Begin VB.Form frmBigNumber 
  3.    BorderStyle     =   4  'Fixed ToolWindow
  4.    Caption         =   "Big Number"
  5.    ClientHeight    =   4170
  6.    ClientLeft      =   1890
  7.    ClientTop       =   3270
  8.    ClientWidth     =   7485
  9.    Height          =   4575
  10.    Left            =   1830
  11.    MaxButton       =   0   'False
  12.    MDIChild        =   -1  'True
  13.    ScaleHeight     =   4170
  14.    ScaleWidth      =   7485
  15.    ShowInTaskbar   =   0   'False
  16.    Top             =   2925
  17.    Width           =   7605
  18.    Begin Threed.SSPanel SSPanel1 
  19.       Align           =   1  'Align Top
  20.       Height          =   465
  21.       Left            =   0
  22.       TabIndex        =   0
  23.       Top             =   0
  24.       Width           =   7485
  25.       _Version        =   65536
  26.       _ExtentX        =   13203
  27.       _ExtentY        =   820
  28.       _StockProps     =   15
  29.       ForeColor       =   -2147483640
  30.       BackColor       =   12632256
  31.       Begin VB.ComboBox cmb_Function 
  32.          Height          =   315
  33.          Left            =   1440
  34.          TabIndex        =   1
  35.          Top             =   90
  36.          Width           =   5415
  37.       End
  38.       Begin Threed.SSCommand SSCommand1 
  39.          Default         =   -1  'True
  40.          Height          =   285
  41.          Left            =   6930
  42.          TabIndex        =   4
  43.          Top             =   90
  44.          Width           =   465
  45.          _Version        =   65536
  46.          _ExtentX        =   820
  47.          _ExtentY        =   503
  48.          _StockProps     =   78
  49.          Caption         =   "&Go"
  50.          BevelWidth      =   1
  51.          Outline         =   0   'False
  52.       End
  53.       Begin VB.Label Label1 
  54.          Caption         =   "&Select a function"
  55.          Height          =   255
  56.          Left            =   90
  57.          TabIndex        =   2
  58.          Top             =   120
  59.          Width           =   1275
  60.       End
  61.    End
  62.    Begin VB.Label lbl_Result 
  63.       Appearance      =   0  'Flat
  64.       BackColor       =   &H80000005&
  65.       BackStyle       =   0  'Transparent
  66.       ForeColor       =   &H80000008&
  67.       Height          =   3435
  68.       Left            =   90
  69.       TabIndex        =   3
  70.       Top             =   630
  71.       Width           =   7305
  72.    End
  73. Attribute VB_Name = "frmBigNumber"
  74. Attribute VB_Creatable = False
  75. Attribute VB_Exposed = False
  76. Option Explicit
  77. Option Base 1
  78. Private Const Iteration = 250
  79. Dim TimerStartOk     As Integer
  80. Dim TimerCloseOk     As Integer
  81. Dim TimerHandle      As Integer
  82. Dim TimerValue       As Long
  83. Private Sub cmb_Function_Click()
  84.    lbl_Result = ""
  85.    DoEvents
  86.    Select Case cmb_Function.ListIndex
  87.       Case 0
  88.          Call TestBigAdd
  89.       Case 1
  90.          Call TestBigDiv
  91.       Case 2
  92.          Call TestBigMul
  93.       Case 3
  94.          Call TestBigSub
  95.    End Select
  96. End Sub
  97. Private Sub Form_Activate()
  98.    mdiT2W.Label2.Caption = cInsertBlocks(mdiT2W.Label2.Tag, "" & Iteration)
  99. End Sub
  100. Private Sub Form_Load()
  101.    Call sub_Load_Combo(cmb_Function, "c:\tmp\_bignum.t2w")
  102. End Sub
  103. Private Sub SSCommand1_Click()
  104.    Call cmb_Function_Click
  105. End Sub
  106. Private Sub TestBigAdd()
  107.    Dim strResult        As String
  108.    Dim strDisplay       As String
  109.    Dim i                As Integer
  110.    Dim m1               As Double
  111.    Dim m2               As Double
  112.    Dim strM1            As String
  113.    Dim strM2            As String
  114.    strResult = ""
  115.    strDisplay = ""
  116.    Randomize Timer
  117.    m1 = 123456789012345#
  118.    m2 = 987654321098765#
  119.    strM1 = LTrim$(Str$(m1))
  120.    strM2 = LTrim$(Str$(m2))
  121.    strDisplay = strDisplay & "Double     : Add '" & m1 & "' and '" & m2 & "' is '" & (m1 + m2) & "'" & vbCr
  122.    strDisplay = strDisplay & "Big Double : Add '" & m1 & "' and '" & m2 & "' is '" & cBigFmt(cBigAdd(cMKN(strM1), cMKN(strM2)), 0) & "'" & vbCr
  123.    strDisplay = strDisplay & "Big Num    : Add '" & m1 & "' and '" & m2 & "' is '" & cBigNum(strM1, BIG_ADD, strM2) & "'" & vbCr & vbCr
  124.    m1 = 543210987654321#
  125.    m2 = 567890123456789#
  126.    strM1 = LTrim$(Str$(m1))
  127.    strM2 = LTrim$(Str$(m2))
  128.    strDisplay = strDisplay & "Double     : Add '" & m1 & "' and '" & m2 & "' is '" & (m1 + m2) & "'" & vbCr
  129.    strDisplay = strDisplay & "Big Double : Add '" & m1 & "' and '" & m2 & "' is '" & cBigFmt(cBigAdd(cMKN(strM1), cMKN(strM2)), 0) & "'" & vbCr
  130.    strDisplay = strDisplay & "Big Num    : Add '" & m1 & "' and '" & m2 & "' is '" & cBigNum(strM1, BIG_ADD, strM2) & "'" & vbCr & vbCr
  131.    lbl_Result = strDisplay
  132.    'time the function
  133.    TimerHandle = cTimerOpen()
  134.    TimerStartOk = cTimerStart(TimerHandle)
  135.    For i = 1 To Iteration
  136.       strResult = cBigAdd(cMKN(strM1), cMKN(strM2))
  137.    Next i
  138.    mdiT2W.pnl_Timer = cTimerRead(TimerHandle)
  139.    TimerCloseOk = cTimerClose(TimerHandle)
  140. End Sub
  141. Private Sub TestBigSub()
  142.    Dim strResult        As String
  143.    Dim strDisplay       As String
  144.    Dim i                As Integer
  145.    Dim m1               As Double
  146.    Dim m2               As Double
  147.    Dim strM1            As String
  148.    Dim strM2            As String
  149.    strResult = ""
  150.    strDisplay = ""
  151.    Randomize Timer
  152.    m1 = 123456789012345#
  153.    m2 = 987654321098765#
  154.    strM1 = LTrim$(Str$(m1))
  155.    strM2 = LTrim$(Str$(m2))
  156.    strDisplay = strDisplay & "Double     : Sub '" & m1 & "' and '" & m2 & "' is '" & (m1 - m2) & "'" & vbCr
  157.    strDisplay = strDisplay & "Big Double : Sub '" & m1 & "' and '" & m2 & "' is '" & cBigFmt(cBigSub(cMKN(strM1), cMKN(strM2)), 0) & "'" & vbCr
  158.    strDisplay = strDisplay & "Big Num    : Sub '" & m1 & "' and '" & m2 & "' is '" & cBigNum(strM1, BIG_SUB, strM2) & "'" & vbCr & vbCr
  159.    m1 = 543210987654321#
  160.    m2 = 567890123456789#
  161.    strM1 = LTrim$(Str$(m1))
  162.    strM2 = LTrim$(Str$(m2))
  163.    strDisplay = strDisplay & "Double     : Sub '" & m1 & "' and '" & m2 & "' is '" & (m1 - m2) & "'" & vbCr
  164.    strDisplay = strDisplay & "Big Double : Sub '" & m1 & "' and '" & m2 & "' is '" & cBigFmt(cBigSub(cMKN(strM1), cMKN(strM2)), 0) & "'" & vbCr
  165.    strDisplay = strDisplay & "Big Num    : Sub '" & m1 & "' and '" & m2 & "' is '" & cBigNum(strM1, BIG_SUB, strM2) & "'" & vbCr & vbCr
  166.    lbl_Result = strDisplay
  167.    'time the function
  168.    TimerHandle = cTimerOpen()
  169.    TimerStartOk = cTimerStart(TimerHandle)
  170.    For i = 1 To Iteration
  171.       strResult = cBigSub(cMKN(strM1), cMKN(strM2))
  172.    Next i
  173.    mdiT2W.pnl_Timer = cTimerRead(TimerHandle)
  174.    TimerCloseOk = cTimerClose(TimerHandle)
  175. End Sub
  176. Private Sub TestBigDiv()
  177.    Dim strResult        As String
  178.    Dim strDisplay       As String
  179.    Dim i                As Integer
  180.    Dim m1               As Double
  181.    Dim m2               As Double
  182.    Dim strM1            As String
  183.    Dim strM2            As String
  184.    strResult = ""
  185.    strDisplay = ""
  186.    Randomize Timer
  187.    m1 = 123456789012345#
  188.    m2 = 987654321098765#
  189.    strM1 = LTrim$(Str$(m1))
  190.    strM2 = LTrim$(Str$(m2))
  191.    strDisplay = strDisplay & "Double     : Div '" & m1 & "' and '" & m2 & "' is '" & (m1 / m2) & "'" & vbCr
  192.    strDisplay = strDisplay & "Big Double : Div '" & m1 & "' and '" & m2 & "' is '" & cBigFmt(cBigDiv(cMKN(strM1), cMKN(strM2)), 0) & "'" & vbCr & vbCr
  193.    m1 = 543210987654321#
  194.    m2 = 567890123456789#
  195.    strM1 = LTrim$(Str$(m1))
  196.    strM2 = LTrim$(Str$(m2))
  197.    strDisplay = strDisplay & "Double     : Div '" & m1 & "' and '" & m2 & "' is '" & (m1 / m2) & "'" & vbCr
  198.    strDisplay = strDisplay & "Big Double : Div '" & m1 & "' and '" & m2 & "' is '" & cBigFmt(cBigDiv(cMKN(strM1), cMKN(strM2)), 0) & "'" & vbCr & vbCr
  199.    lbl_Result = strDisplay
  200.    'time the function
  201.    TimerHandle = cTimerOpen()
  202.    TimerStartOk = cTimerStart(TimerHandle)
  203.    For i = 1 To Iteration
  204.       strResult = cBigDiv(cMKN(strM1), cMKN(strM2))
  205.    Next i
  206.    mdiT2W.pnl_Timer = cTimerRead(TimerHandle)
  207.    TimerCloseOk = cTimerClose(TimerHandle)
  208. End Sub
  209. Private Sub TestBigMul()
  210.    Dim strResult        As String
  211.    Dim strDisplay       As String
  212.    Dim i                As Integer
  213.    Dim m1               As Double
  214.    Dim m2               As Double
  215.    Dim strM1            As String
  216.    Dim strM2            As String
  217.    strResult = ""
  218.    strDisplay = ""
  219.    Randomize Timer
  220.    m1 = 123456789012345#
  221.    m2 = 987654321098765#
  222.    strM1 = LTrim$(Str$(m1))
  223.    strM2 = LTrim$(Str$(m2))
  224.    strDisplay = strDisplay & "Double     : Mul '" & m1 & "' and '" & m2 & "' is '" & (m1 * m2) & "'" & vbCr
  225.    strDisplay = strDisplay & "Big Double : Mul '" & m1 & "' and '" & m2 & "' is '" & cBigFmt(cBigMul(cMKN(strM1), cMKN(strM2)), 0) & "'" & vbCr
  226.    strDisplay = strDisplay & "Big Num    : Mul '" & m1 & "' and '" & m2 & "' is '" & cBigNum(strM1, BIG_MUL, strM2) & "'" & vbCr & vbCr
  227.    m1 = 543210987654321#
  228.    m2 = 567890123456789#
  229.    strM1 = LTrim$(Str$(m1))
  230.    strM2 = LTrim$(Str$(m2))
  231.    strDisplay = strDisplay & "Double     : Mul '" & m1 & "' and '" & m2 & "' is '" & (m1 * m2) & "'" & vbCr
  232.    strDisplay = strDisplay & "Big Double : Mul '" & m1 & "' and '" & m2 & "' is '" & cBigFmt(cBigMul(cMKN(strM1), cMKN(strM2)), 0) & "'" & vbCr
  233.    strDisplay = strDisplay & "Big Num    : Mul '" & m1 & "' and '" & m2 & "' is '" & cBigNum(strM1, BIG_MUL, strM2) & "'" & vbCr & vbCr
  234.    lbl_Result = strDisplay
  235.    'time the function
  236.    TimerHandle = cTimerOpen()
  237.    TimerStartOk = cTimerStart(TimerHandle)
  238.    For i = 1 To Iteration
  239.       strResult = cBigMul(cMKN(strM1), cMKN(strM2))
  240.    Next i
  241.    mdiT2W.pnl_Timer = cTimerRead(TimerHandle)
  242.    TimerCloseOk = cTimerClose(TimerHandle)
  243. End Sub
  244.