首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >vb.net中的石头、布、剪刀

vb.net中的石头、布、剪刀
EN

Stack Overflow用户
提问于 2013-02-20 05:33:35
回答 3查看 2.1K关注 0票数 2

我在完成RPS游戏的代码时遇到了一些困难。操作步骤如下: c.主键点击代码。i.您需要像我们之前所做的那样,使用输入框提示用户输入三个字母中的一个。二、从您的自定义方法中获取随机字母。三、将用户的字母和随机的计算机字母都传递给您的其他方法。四.如果返回true,则告诉用户他们在您添加到表单的标签中中奖,否则告诉他们在该标签中中奖。

我想我做对了1和2,但我在3和4上遇到了问题。有人能帮帮忙吗!!

到目前为止,这是我的代码

代码语言:javascript
复制
Public Class Form1

    Dim randomObject As New Random()

    Private Property user As String

    Private Property computer As Random

    Function GetRandomRPSLetter() As String
        randomObject.Next(1, 4)
        Dim computer As Integer = randomObject.Next(1, 4)
        If computer = 1 Then
            Return "r"
        ElseIf computer = 2 Then
            Return "p"
        Else
            Return "s"
        End If

    End Function
    Function GetRPSRoundWinner(ByVal user As String, ByVal computer As String) As String
        If user = "r" Then
            If computer = "r" Then
                Return False
            ElseIf computer = "p" Then
                Return False
            Else
                Return True
            End If
        ElseIf user = "p" Then
            If computer = "r" Then
                Return True
            ElseIf computer = "p" Then
                Return False
            Else
                Return False
            End If
        Else
            If computer = "r" Then
                Return False
            ElseIf computer = "p" Then
                Return True
            Else
                Return False
            End If
        End If
    End Function

    Private Sub Button1_click(ByVal sender As System.Object,
                                    ByVal e As System.EventArgs) Handles Button1.Click

        user = InputBox("Please input r, p, or s to play")

        GetRandomRPSLetter()



    End Sub
    Sub GetRPSRoundWinner()
        If GetRPSRoundWinner(True) Then Return
        Label1.Text = "You win"

    End Sub

    Private Function GetRPSRoundWinner(p1 As Boolean) As Boolean
        Throw New NotImplementedException
    End Function

End Class

现在我调用了GetRPSRoundWinner

代码语言:javascript
复制
Private Sub Button1_click(ByVal sender As System.Object,
                                ByVal e As System.EventArgs) Handles Button1.Click

    user = InputBox("Please input r, p, or s to play")

    GetRandomRPSLetter()

    GetRPSRoundWinner()



End Sub

有谁能帮我比较一下吗?

非常感谢大家!

EN

Stack Overflow用户

发布于 2013-02-20 05:42:23

  • 你的GetRPSRoundWinner方法应该返回一个Boolean而不是一个String。从anywhere.
  • You调用Option Strict On可以减少这类错误。
  • 您在按钮单击事件处理程序中调用了GetRandomRPSLetter方法,但是您从未从中获取返回值,并将其用于将用户的输入与随机生成的计算机移动进行比较。
  • 您从不从anywhere.
  • You调用GetRPSRoundWinner您的GetRPSRoundWinner方法有三个重载,但实际上只有一个是有用的。
票数 1
EN
查看全部 3 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14967850

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档