Avatar billede mr-bob Nybegynder
24. februar 2004 - 08:48 Der er 2 kommentarer og
2 løsninger

VB til matematiske beregnere!

Jeg skal bruge nogle matematiske beregnere i Vb, altså sådan noget somme at gange to tal, dividere, addere, subtrahere og lign, skal bruges i VB script.
jeg skal ydermere bruge en lommeregner i Vb!

hvor kan jeg få fat i sådanne varer? :-)

på forhånd tak Mr bob
Avatar billede medions Nybegynder
24. februar 2004 - 09:05 #1
du gør blot sådan her:

<HTML>
<HEAD>
<TITLE>VBScript Calculator</TITLE>
</HEAD>
<BODY BGCOLOR=FFFFFF Background=stripe.jpg TEXT="#FFFFFF" TOPMARGIN=15 LEFTMARGIN=20>

<!--TOOLBAR_START-->
<!--TOOLBAR_EXEMPT-->
<!--TOOLBAR_END-->
<CENTER>
<HR>
<FONT FACE="Verdana, Arial, Helvetica" SIZE=2>
<FONT SIZE=5><B>VBScript Calculator</B></FONT>
<HR NOSHADE SIZE=1>
<FONT SIZE=3> <!-- global default -->
<SCRIPT LANGUAGE="VBScript">
<!--
' Module-level variables
Dim Accum        ' Previous number (operand) awaiting operation
Dim FlagNewNum        ' Flag to indicate a new number (operand) is being entered
Dim PendingOp        ' Pending operation waiting for completion of second operand

Sub NumPressed(Byval Num)
    If FlagNewNum Then
          Document.Keypad.Readout.Value  = Num
          FlagNewNum = False
    Else
        If Document.Keypad.Readout.Value = "0" Then
            Document.Keypad.Readout.Value = CStr(Num)
        Else
            Document.Keypad.ReadOut.Value= Document.Keypad.ReadOut.Value & CStr(Num)
        End If
    End If
End Sub

Sub Decimal_onClick()
Dim curReadout
    curReadOut = Document.Keypad.ReadOut.Value
    If FlagNewNum Then
        curReadOut = "0."
        FlagNewNum = False
    Else
        If InStr(curReadOut, ".") = 0 Then
            curReadOut = curReadOut & "."
        End If
    End If
    Document.Keypad.ReadOut.Value = curReadOut
End Sub

Sub Plus_onClick()
    Operation "+"   
End Sub

Sub Minus_onClick()
    Operation "-"
End Sub

Sub Multiply_onClick()
    Operation "*"
End Sub

Sub Divide_OnClick()
    Operation "/"
End Sub

Sub Operation(Byval Op)
Dim Readout
    ReadOut = Document.Keypad.ReadOut.Value
    If FlagNewNum and PendingOp <> "=" Then
        ' User is hitting op keys repeatedly, so don't do anything
    Else
        FlagNewNum = True
        Select Case PendingOp
        Case "+"
            Accum = CDbl(Accum) + CDbl(ReadOut)
        Case "-"
            Accum = CDbl(Accum) - CDbl(ReadOut)
        Case "/"
            Accum = CDbl(Accum) / CDbl(ReadOut)
        Case "*"
            Accum = CDbl(Accum) * CDbl(ReadOut)
        Case Else
            Accum = ReadOut
        End Select
        Document.Keypad.ReadOut.Value = Accum
        PendingOp = Op
    End If
End Sub

Sub ClearEntry_onClick()
' Remove current number and reset state
    Document.Keypad.ReadOut.Value = "0"
    FlagNewNum = True
End Sub

Sub Clear_onClick()
' Clear accumulator and pending operation, and clear display
    Accum = 0
    PendingOp = ""   
    ClearEntry_onClick
End Sub

Sub Neg_onClick()
    Document.Keypad.ReadOut.Value = CDbl(Document.Keypad.ReadOut.Value) * -1
End Sub

Sub Percent_onClick()
    Document.Keypad.ReadOut.Value = (CDbl(Document.Keypad.ReadOut.Value) / 100) * Accum
End Sub

Sub Equals_OnClick()
    Operation "="
End Sub
-->
</SCRIPT>
<form action="" Name="Keypad">
<TABLE>
<B>
<TABLE BORDER=2 WIDTH=50 HEIGHT=60 CELLPADDING=1 CELLSPACING=5>
<CAPTION ALIGN=top>
    <p>
   
</CAPTION>
<TR>
    <TD COLSPAN=3 ALIGN=MIDDLE><INPUT NAME="ReadOut" TYPE="Text" SIZE=24 VALUE="0" WIDTH=100%></TD>
    <TD></TD>
    <TD><INPUT NAME="Clear" TYPE="Button" VALUE="  C  " ></TD>
    <TD><INPUT NAME="ClearEntry" TYPE="Button" VALUE="  CE " ></TD>
</TR>
<TR>
    <TD><INPUT NAME="Seven" TYPE="Button" VALUE="  7  " OnClick="NumPressed(7)"></TD>
    <TD><INPUT NAME="Eight" TYPE="Button" VALUE="  8  " OnClick="NumPressed(8)"></TD>
    <TD><INPUT NAME="Nine" TYPE="Button" VALUE="  9  " OnClick="NumPressed(9)"></TD>
    <TD></TD>
    <TD><INPUT NAME="Neg" TYPE="Button" VALUE=" +/- " ></TD>
    <TD><INPUT NAME="Percent" TYPE="Button" VALUE="  % " ></TD>
</TR>

<TR>
    <TD><INPUT NAME="Four" TYPE="Button" VALUE="  4  " OnClick="NumPressed(4)"></TD>
    <TD><INPUT NAME="Five" TYPE="Button" VALUE="  5  " OnClick="NumPressed(5)"></TD>
    <TD><INPUT NAME="Six" TYPE="Button" VALUE="  6  " OnClick="NumPressed(6)"></TD>
    <TD></TD>
    <TD ALIGN=MIDDLE><INPUT NAME="Plus" TYPE="Button" VALUE="  +  " ></TD>
    <TD ALIGN=MIDDLE><INPUT NAME="Minus" TYPE="Button" VALUE="  -  " ></TD>
</TR>
<TR>
    <TD><INPUT NAME="One" TYPE="Button" VALUE="  1  " OnClick="NumPressed(1)"></TD>
    <TD><INPUT NAME="Two" TYPE="Button" VALUE="  2  " OnClick="NumPressed(2)"></TD>
    <TD><INPUT NAME="Three" TYPE="Button" VALUE="  3  " OnClick="NumPressed(3)"></TD>
    <TD></TD>
    <TD ALIGN=MIDDLE><INPUT NAME="Multiply" TYPE="Button" VALUE="  *  " ></TD>
    <TD ALIGN=MIDDLE><INPUT NAME="Divide" TYPE="Button" VALUE="  /  " ></TD>
</TR>
<TR>
    <TD><INPUT NAME="Zero" TYPE="Button" VALUE="  0  " OnClick="NumPressed(0)"></TD>
    <TD><INPUT NAME="Decimal" TYPE="Button" VALUE="  .  " ></TD>
    <TD COLSPAN=3></TD>
    <TD><INPUT NAME="Equals" TYPE="Button" VALUE="  =  "></TD>
</TABLE>
</CENTER>
<P>
<CENTER>
<FORM>
<INPUT TYPE="button" VALUE="BackI" onClick="history.back()">
</FORM>
</CENTER NOSHADE SIZE=1>
<HR>
</BODY>
</HTML>

//>Rune
Avatar billede powell Nybegynder
24. februar 2004 - 09:35 #2
Her er en simpel regnemaskine
<html>
<title>Regnemaskine</title>
<head>
<script language="vbscript">
Dim lngSub, lngAdd, lngMul, lngDiv

On Error Resume Next

Function cmd1_OnClick()
Dim lngDisplay
lngDisplay = Trim(Document.cal.txtDisplay.Value)

Document.cal.txtDisplay.value = lngDisplay & "1"
End Function

Function cmd2_OnClick()
Dim lngDisplay
lngDisplay = Trim(Document.cal.txtDisplay.Value)

Document.cal.txtDisplay.value = lngDisplay & "2"
End Function

Function cmd3_OnClick()
Dim lngDisplay
lngDisplay = Trim(Document.cal.txtDisplay.Value)

Document.cal.txtDisplay.value = lngDisplay & "3"
End Function

Function cmd4_OnClick()
Dim lngDisplay
lngDisplay = Trim(Document.cal.txtDisplay.Value)

Document.cal.txtDisplay.value = lngDisplay & "4"
End Function

Function cmd5_OnClick()
Dim lngDisplay
lngDisplay = Trim(Document.cal.txtDisplay.Value)

Document.cal.txtDisplay.value = lngDisplay & "5"
End Function

Function cmd6_OnClick()
Dim lngDisplay
lngDisplay = Trim(Document.cal.txtDisplay.Value)

Document.cal.txtDisplay.value = lngDisplay & "6"
End Function

Function cmd7_OnClick()
Dim lngDisplay
lngDisplay = Trim(Document.cal.txtDisplay.Value)

Document.cal.txtDisplay.value = lngDisplay & "7"
End Function

Function cmd8_OnClick()
Dim lngDisplay
lngDisplay = Trim(Document.cal.txtDisplay.Value)

Document.cal.txtDisplay.value = lngDisplay & "8"
End Function

Function cmd9_OnClick()
Dim lngDisplay
lngDisplay = Trim(Document.cal.txtDisplay.Value)

Document.cal.txtDisplay.value = lngDisplay & "9"
End Function

Function cmd0_OnClick()
Dim lngDisplay
lngDisplay = Trim(Document.cal.txtDisplay.Value)

Document.cal.txtDisplay.value = lngDisplay & "0"
End Function

Function cmdSub_OnClick()

lngAdd = ""
lngDiv = ""
lngMul = ""
lngSub = Trim(Document.cal.txtDisplay.Value)
Document.cal.txtDisplay.value = ""

End Function

Function cmdAdd_OnClick()

lngSub = ""
lngDiv = ""
lngMul = ""
lngAdd = Trim(Document.cal.txtDisplay.Value)
Document.cal.txtDisplay.value = ""

End Function

Function cmdDiv_OnClick()

lngSub = ""
lngAdd = ""
lngMul = ""
lngDiv = Trim(Document.cal.txtDisplay.Value)
Document.cal.txtDisplay.value = ""

End Function

Function cmdMul_OnClick()

lngAdd = ""
lngDiv = ""
lngSub = ""
lngMul = Trim(Document.cal.txtDisplay.Value)
Document.cal.txtDisplay.value = ""

End Function

Function cmdE_OnClick()
Dim lngE
Dim lngC

If len(lngAdd) > 0 Then
    Err = 0
    lngAdd = Clng(lngAdd)
    lngC = Clng(Trim(Document.cal.txtDisplay.Value))
    If err <> 0 Then
        Document.cal.txtDisplay.Value = "ERROR"
    Else
        Document.cal.txtDisplay.Value = lngAdd + lngC
    End If   
End If

If len(lngDiv) > 0 Then
    Err = 0
    lngDiv = Clng(lngDiv)
    lngC = Clng(Trim(Document.cal.txtDisplay.Value))
    If err <> 0 Then
        Document.cal.txtDisplay.Value = "ERROR"
    Else
        Document.cal.txtDisplay.Value = lngDiv / lngC
    End If   
End If

If len(lngMul) > 0 Then
    Err = 0
    lngMul = Clng(lngMul)
    lngC = Clng(Trim(Document.cal.txtDisplay.Value))
    If err <> 0 Then
        Document.cal.txtDisplay.Value = "ERROR"
    Else
        Document.cal.txtDisplay.Value = lngMul * lngC
    End If   
End If

If len(lngSub) > 0 Then
    Err = 0
    lngSub = Clng(lngSub)
    lngC = Clng(Trim(Document.cal.txtDisplay.Value))
    If err <> 0 Then
        Document.cal.txtDisplay.Value = "ERROR"
    Else
        Document.cal.txtDisplay.Value = lngSub - lngC
    End If   
End If

End Function
</script>
</head>
<body>

<form name="cal">
<table>
<tr><td colspan="4"><input type="text" name="txtDisplay"></td></tr>
<tr><td><input type="button" name="cmd7" value=" 7 "></td><td><input type="button" name="cmd8" value=" 8 "></td><td><input type="button" name="cmd9" value=" 9 "></td><td><input type="button" name="cmdSub" value=" - "></td></tr>
<tr><td><input type="button" name="cmd4" value=" 4 "></td><td><input type="button" name="cmd5" value=" 5 "></td><td><input type="button" name="cmd6" value=" 6 "></td><td><input type="button" name="cmdAdd" value="+ "></td></tr>
<tr><td><input type="button" name="cmd1" value=" 1 "></td><td><input type="button" name="cmd2" value=" 2 "></td><td><input type="button" name="cmd3" value=" 3 "></td><td><input type="button" name="cmdMul" value=" * "></td></tr>
<tr><td></td><td><input type="button" name="cmd0" value=" 0 "></td><td></td><td><input type="button" name="cmdDiv" value=" / "></td></tr>
<tr><td colspan="4"><input type="button" name="cmdE" value="      =      "></td></tr>
</table>
</form>
</body>
</html>
Avatar billede mr-bob Nybegynder
25. februar 2004 - 12:39 #3
takker begge to, powell læg lige et svar! :-)
Avatar billede powell Nybegynder
25. februar 2004 - 12:56 #4
Svar
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester