ฉันกำลังสร้างเล็กน้อหุ้นของ broking เกมเป็นด้านข้างโครงการและวิ่งข้ามปัญหา

0

คำถาม

ตอนนี้เกม randomizes ใหม่ราคาหุ้นของค่าสำหรับในเกมวันทุกครั้งที่ form5 ปิดและ reopens. การเล็งของฉันมันต้องมี randomized ค่าที่วัน: 2, 8, 5, 3, 13, 24, 29, ตอนนี้เกมส์สร้างสถานการตั้งค่าสำหรับวันแรกแต่ตอนที่อยู่ในเกมวันสิ้นสุดแล้ววันสองคนเริ่มต้นทั้งสองวันหนึ่ง,และสองคาของพวกมันก็แพงลิบลิ่ randomized. ตอนนี้รูปแบบคือปิดและ reopened นราคาทุกอย่างสุ่มสำหรับพวกนี้ 2 วันอีกครั้ง

นี่คือ subroutine สำหรับ form2:แสดงแบบฟอร์มที่มีหุ้นของยี่ห้อในร้านของผู้ใช้สามารถ'ลงทุนในนี้จะแสดง subroutine สำหรับตอนที่ผู้ใช้ลิกบน tesla หุ้นของ:

Public Shared Sub tesla(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Teslal.Click


    stockbrand.tesla()
    Teslastock.Show()
End Sub

นี่คือ subroutine สำหรับ stockbrand.tesla:

Shared Sub tesla()
    stockrand(2, 8, 5, 3, 13, 24, 29)
End Sub

และจากนั้น stockrand ต้องรับผิดชอบต่อสิ่งที่กำลังสร้างที่สุ่มค่าที่กำหนดวัน:

 Public Shared Function stockrand(ByVal a As Integer, ByVal b As Integer, ByVal c As Integer, ByVal d As Integer, ByVal e As Integer, ByVal f As Integer, ByVal g As Integer)
    For i As Integer = 1 To Form2.DAYno.Text

        If i = a Then
            Teslastock.at1986(a.ToString & "/8/86 1986", CInt(Int((11 * Rnd()) + 1)) * 2000)

        ElseIf i = b Then
            Teslastock.at1986(i.ToString & "/8/86 1986", CInt(Int((11 * Rnd()) + 1)) * 2000)

        ElseIf i = c Then
            Teslastock.at1986(i.ToString & "/8/86 1986", CInt(Int((11 * Rnd()) + 1)) * 2000)

        ElseIf i = d Then
            Teslastock.at1986(i.ToString & "/8/86 1986", CInt(Int((11 * Rnd()) + 1)) * 2000)

        ElseIf i = e Then
            Teslastock.at1986(i.ToString & "/8/86 1986", CInt(Int((11 * Rnd()) + 1)) * 2000)

        ElseIf i = f Then
            Teslastock.at1986(i.ToString & "/8/86 1986", CInt(Int((11 * Rnd()) + 1)) * 2000)

        ElseIf i = g Then
            Teslastock.at1986(i.ToString & "/8/86 1986", CInt(Int((11 * Rnd()) + 1)) * 2000)
        Else
            Teslastock.at1986(i.ToString & "/8/86 1986", Math.Sin(i) * 2000)
        End If
    Next
End Function

ที่กราฟสร้างขึ้นโดยฟังก์ชันดูคล้ายกับเป็นบาปกับกราฟข้อยกเว้นตอนกำหนดวันและลบราคาค่าเป็น multiplied โดย -1 ต้องให้มีเหตุผลไพรซ์

Teslastock.แสดงแสดงรูปแบบที่กราฟคือวางไว้

vb.net
2021-11-23 21:56:57
1

คำตอบที่ดีที่สุด

0

บางปัญหาของคุณเกิดจากไม่มีตัวเลือกเข้มงวดเร็ว มันควรจะเป็น โครงการคุณสมบัติของ->Compile ตื่นเต้นหน่อย ยังสำหรับอนาคตโครงการของเครื่องมือ->ตัวเลือก->งยิ่งสนง.โครงการแล้ววิธีแก้ไข->VB ค่าปริยาย

ฟังก์ชันใน vb.net ต้องการ Type และเป็น Return การปราศรัยได้เลย คุณไม่คืนอะไรแล้วทำไมคุณต้องใช้ Function? ใช้ Sub.

ฉันไม่รู้ว่าอะไร DAYno บ Form2 เป็นแต่ตอนที่ฉันเห็น Text ทรัพย์สิมันหมายความว่าเป็น String ฉัน คุณไม่สามารถมี String ใน To เงื่อนไขว่าของ For วง,ดังนั้นค CInt()

ประกาศเป็นตัวอย่างของ Random ชั้นเรียนที่ Classระดับ. เราแค่ต้องการคนใหม่แบบสุ่มจำนวน(ไม่ใช่ตัวอย่างใหม่ของ Random ชั้นเรียน)ครั้งต่อทำซ้ำ. เท่าที่ฉันสามารถทำให้ออกมามันคงจะต้องเป็นจำนวนระหว่าง 1 เป็น 12. ฉันจำได้น้อยมาก Rnd(). คน Next วิธีการของ Random ชั้นเรียนให้เป็น Integer คิดถึงทุกฝ่าของคนแรกเถียงกันและน้อยกว่าอีกเป็นครั้งที่สอง

พวกนั้น If...ElseIfเอมีเกือบจะเหมือนเป็นรหัสมอส ฉันพยายามจะค่อยๆจัดการกับมันออกไปกับ Select Case. คนแรก 2 คดีส่ง Integer ต้อง at1986 แต่คนที่สามส่ง Double,ดังนั้นที่ 2 วิธีการของในห้อง Teslastock ชั้นเรียนกับต่างออกลายเซ็น

อาจจะปัญหาของคุณจะหายตัวไปกับพวกโอคลาโฮมา

Private Rand As New Random()

Public Sub stockrand(ByVal a As Integer, ByVal b As Integer, ByVal c As Integer, ByVal d As Integer, ByVal e As Integer, ByVal f As Integer, ByVal g As Integer)
    For i As Integer = 1 To CInt(Form2.DAYno.Text)
        Dim r = Rand.Next(1, 13)
        Select Case i
            Case a
                Teslastock.at1986($"{a}/8/86 1986", r * 2000)
            Case b, c, d, e, f, g
                Teslastock.at1986($"{i}/8/86 1986", r * 2000)
            Case Else
                Teslastock.at1986($"{i}/8/86 1986", Math.Sin(i) * 2000)
        End Select
    Next
End Sub

Public Class Teslastock
    Public Shared Sub at1986(strDate As String, aNumber As Integer)
        'Some code
    End Sub

    Public Shared Sub at1986(strDate As String, aNumber As Double)
        'Some code
    End Sub
End Class
2021-11-24 03:29:56

ในภาษาอื่นๆ

หน้านี้อยู่ในภาษาอื่นๆ

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................

ดังอยู่ในนี้หมวดหมู่

ดังคำถามอยู่ในนี้หมวดหมู่