第二次做业: 四则运算的实现

Visual Basic 实现随机四则运算
html

 

 

前提:dom

 

    老实的讲在学校里并无教过Visual B,可是我用C-Free实在是没有办法独立写出来了,因此我把目标转向了Microsoft Visual Studio 2010,而且找到了《VB实例讲解》这本书里面找到了相似的例题就照着作了,处处修修改改以后还能用,感受还不错^.^函数

 PS:post

     VB用起来比C和C#都要简单,并且代码也要少不少!spa

 

 

实验要求:设计

使用随机函数与选择结构,实现动态的两位数的四则运算练习软件。3d

1、可以实现真正的动态出题(每次的出题内容不一样)。orm

2、可以针对正确答案与错误答案提供多种评定语句。xml

3、可以统计每次练习的内容。htm

5、可以肯定练习次数,并统计正确与错误的数量。

6、尽量将基础控件的基本属性使用出来。

 

 

 

设计界面:

 

程序运行结果

 

Visual Basic实验四 随机四则运算软件 详解 - rsb_long - rsb_long的博客
启动界面

Visual Basic实验四 随机四则运算软件 详解 - rsb_long - rsb_long的博客

运行界面

 

1、关于时间控件的使用代码说明:

      此控件的内容属于后续章节的内容,但因为其功能简单,彻底能够经过MSDN或基础控件的使用方式进行推理分析。该控件有两个重要属性须要设定:EnabledInterva

其中Enabled与基本控件的概念相同,都是用于对象是否能够执行(能够显示但不能使用),在程序启动时设置为True表示该控件可使用。第二个属性用于表示该控件执行的时间间隔是多长时间。一般设置为100,它表明100毫秒。所以Interval设计的数字越大表示执行的间隔越长。它的事件只有一个,相关的MSDN解释以下图。

 

Visual Basic实验四 随机四则运算软件 详解 - rsb_long - rsb_long的博客

 

 

       在本程序的设计中,要求程序启动的时候,屏幕中出现一个由大变小,而后又由小变大的提示内容。相关的代码以下。此代码稍加修改能够变成让字幕左右飘动的样式。

Private Sub Timer1_Timer()

If fx = True Then    ‘fx为自定义的变量,用来控件是变大,仍是变小,为逻辑变量

    If Label3.FontSize + 5 < 60 Then

        Label3.FontSize = Label3.FontSize + 5

    Else

        fx = False

    End If

Else

    If Label3.FontSize - 5 > 10 Then

        Label3.FontSize = Label3.FontSize - 5

    Else

        fx = True

    End If

End If

End Sub

2、系统初始化效果实现

       由设计要求的样式,能够发现大多数的控件在启动的时间并无出现。所以显然当时的属性设置为VisabledFasle。在程序加载的过程当中须要完成对基本控件的参数设定工做。

Private Sub Form_Load()

Randomize      ‘确认系统将真正随机组合数字

Form1.Caption = "Visual Basic实验4"

Label1.Caption = ""

Label2.Caption = "="

Label3.Caption = "随机四则运算练习"

Label4.Caption = "耿丹:韦艺林"

Text1.Text = ""

Text2.Text = ""

Text3.Text = ""

Text4.Text = ""

Text5.Visible = False      ‘题目要求中没有出现,它的功能是用来显示源代码

Command1.Caption = "出题"

Command2.Caption = "检查"

Command3.Caption = "代码"

Command4.Caption = "退出"

Text1.Visible = False

Text2.Visible = False

Text3.Visible = False

Text4.Visible = False

Command1.Visible = False

Command2.Visible = False

Command3.Visible = False

Command4.Visible = False

Label1.Visible = False

Label2.Visible = False

End Sub

3、题目的随机出现方式

       题目设计的核心内容是出现题目后等待用户的操做。出题后,须要保存题目的运算方式。利用内存变量,在程序执行到End Sub后会自动放弃其中的内容。所以在通用程序行须要声明相关的变量。这样程序在其它过程当中能够继续使用变量的内容。

(通用)部分的代码以下

Dim fx As Boolean, xz As Integer

出题部分的代码以下

Private Sub Command1_Click()

xz = Int(Rnd * 4 + 1)    xz表示产生的选择条件的类型

Text1.Text = Int(Rnd * 90 + 10)

Text2.Text = Int(Rnd * 90 + 10)

Text3.Text = ""

Select Case xz        ‘使用多分支结构,利用随机函数功能实现动态四则运算功能

Case 1

    Label1.Caption = ""

Case 2

    Label1.Caption = ""

Case 3

    Label1.Caption = "×"

Case Else               ‘注意case结构的最后一项应当是case else。避免出现考虑不完整

    Label1.Caption = "÷"

End Select

End Sub

4核心代码:

Private Sub Command2_Click()

If Text1.Text = "" Or Text2.Text = "" Then

    MsgBox "请先出题目而后再进行此动做", , "系统提示"

Else

    Select Case xz

    Case 1

        If Text3.Text = Val(Text1.Text) + Val(Text2.Text) Then

            jl = Int(Rnd * 5 + 1)   '选择5表示有五种可能的表扬方式

            Select Case jl

            Case 1

                MsgBox "今天发挥的不错"

            Case 2

                MsgBox "聪明的人,请继续努力"

            Case 3

                MsgBox "是你聪明仍是运气不错"

            Case 4

                MsgBox "比较神奇的能力"

            Case Else

                MsgBox "判断至关的给力,继续努力"

            End Select

            Text4.Text = Text4.Text + Text1.Text + "+" + Text3.Text + "=" + Text3.Text + "正确" + vbCrLf

        Else

            jl = Int(Rnd * 5 + 1)

            Select Case jl

            Case 1

                MsgBox "没有看清题目的要求?"

            Case 2

                MsgBox "须要提升注意力了!!!!"

            Case Else

                MsgBox "你是否是须要休息一下了?成绩太差了"

            End Select

            Text4.Text = Text4.Text + Text1.Text + "+" + Text3.Text + "=" + Text3.Text + "错误" + vbCrLf

        End If

    Case 2

        If Text3.Text = Val(Text1.Text) - Val(Text2.Text) Then

            jl = Int(Rnd * 5 + 1)   '选择5表示有五种可能的表扬方式

            Select Case jl

            Case 1

                MsgBox "今天发挥的不错"

            Case 2

                MsgBox "聪明的人,请继续努力"

            Case Else

                MsgBox "判断至关的给力,继续努力"

            End Select

            Text4.Text = Text4.Text + Text1.Text + "+" + Text3.Text + "=" + Text3.Text + "正确" + vbCrLf

        Else

            jl = Int(Rnd * 5 + 1)

            Select Case jl

            Case 1

                MsgBox "没有看清题目的要求?"

            Case 2

                MsgBox "须要提升注意力了!!!!"

            Case 3

                MsgBox "如此简单还要出错????"

            Case 4

                MsgBox "能不能仔细一些!!!!!!!"

            Case Else

                MsgBox "你是否是须要休息一下了?成绩太差了"

            End Select

            Text4.Text = Text4.Text + Text1.Text + "+" + Text3.Text + "=" + Text3.Text + "错误" + vbCrLf

        End If

    Case 3

        If Text3.Text = Val(Text1.Text) * Val(Text2.Text) Then

            jl = Int(Rnd * 5 + 1)   '选择5表示有五种可能的表扬方式

            Select Case jl

            Case 1

                MsgBox "今天发挥的不错"

            Case 2

                MsgBox "聪明的人,请继续努力"

            Case 3

                MsgBox "是你聪明仍是运气不错"

            Case 4

                MsgBox "比较神奇的能力"

            Case Else

                MsgBox "判断至关的给力,继续努力"

            End Select

            Text4.Text = Text4.Text + Text1.Text + "+" + Text3.Text + "=" + Text3.Text + "正确" + vbCrLf

        Else

            jl = Int(Rnd * 5 + 1)

            Select Case jl

            Case 1

                MsgBox "没有看清题目的要求?"

            Case 2

                MsgBox "须要提升注意力了!!!!"

            Case 3

                MsgBox "如此简单还要出错????"

            Case 4

                MsgBox "能不能仔细一些!!!!!!!"

            Case Else

                MsgBox "你是否是须要休息一下了?成绩太差了"

            End Select

            Text4.Text = Text4.Text + Text1.Text + "+" + Text3.Text + "=" + Text3.Text + "错误" + vbCrLf

        End If

    Case Else

        If Text3.Text = Val(Text1.Text) / Val(Text2.Text) Then

            jl = Int(Rnd * 5 + 1)   '选择5表示有五种可能的表扬方式

            Select Case jl

            Case 1

                MsgBox "今天发挥的不错"

            Case 2

                MsgBox "聪明的人,请继续努力"

            Case 3

                MsgBox "是你聪明仍是运气不错"

            Case 4

                MsgBox "比较神奇的能力"

            Case Else

                MsgBox "判断至关的给力,继续努力"

            End Select

            Text4.Text = Text4.Text + Text1.Text + "+" + Text3.Text + "=" + Text3.Text + "正确" + vbCrLf

        Else

            jl = Int(Rnd * 5 + 1)

            Select Case jl

            Case 1

                MsgBox "没有看清题目的要求?"

            Case 2

                MsgBox "须要提升注意力了!!!!"

            Case 3

                MsgBox "如此简单还要出错????"

            Case 4

                MsgBox "能不能仔细一些!!!!!!!"

            Case Else

                MsgBox "你是否是须要休息一下了?成绩太差了"

            End Select

            Text4.Text = Text4.Text + Text1.Text + "+" + Text3.Text + "=" + Text3.Text + "错误" + vbCrLf

        End If

    End Select

End If

End Sub

 

Private Sub Command3_Click()

If Command3.Caption = "代码" Then

    Command3.Caption = "关闭"

    Text5.Visible = True

Else

    Command3.Caption = "代码"

    Text5.Visible = False

End If

End Sub

 

 

转载于:https://www.cnblogs.com/yilinwei/p/5284061.html