1

大家好,我不明白 for each 循环在这种特殊情况下是如何工作的。我有一个 500 加仑的水箱将在 24 小时后用于炸鱼。该水箱每小时泄漏率为10%的剩余水。如果水箱下降到 100 加仑以下,鱼就会全部死亡(立即)。这就是问题所在,每小时添加额外的加仑水以保持最终价值高于 100 加仑。然后在列表框中显示每小时后剩余的加仑数。

这是程序的图片,可以查看我正在使用哪些控件:

在此处输入图像描述

我需要帮助来降低逻辑。

500 * .10 = 50
500 - 50 = 450

依此类推……但是我需要将所有数学计算打印到 listBox 中,如下所示:

在此处输入图像描述

任何帮助表示赞赏,我正在学习,所以不要太苛刻。这是我的代码:

      Private Sub btnCalculate_Click(sender As Object, e As EventArgs) Handles btnCalculate.Click
    Dim Gallons As Double = 500
    Dim LeakRate As Double = 0.1
    Dim Remainder As Integer
    Dim Time As Integer = tkbSlider.Value
    lstRemainingGallons.Items.Clear()
    For n As Integer = 1 To 24
        Remainder = CInt(Gallons * LeakRate) - Time
        Gallons = CInt(Gallons - Remainder)
        If Gallons <= 99 Then

            MessageBox.Show("Fish died at " & n & " hours when the remaining gallons were " & Gallons, "Dead and Stinking Fish", MessageBoxButtons.OK
                )
            Exit Sub
        End If
        **If Gallons <= 100 Then
            MessageBox.Show("Hello You Have Passed", "Fish Frying Time!")
        End If**
        lstRemainingGallons.Items.Add("Hour # " & n & " -  " & Gallons & "gallons")

    Next

End Sub
End Class
4

1 回答 1

1

如果我可以回到我开始编程的时候,只教自己一件事,那就是使用调试器的基础知识。

它将真正帮助您学习 Visual Studio 的调试功能。为了更好地解决调试问题,这可能是您可以做的最重要的事情。我建议学习以下内容开始:

  1. Step In/Step Out/Step Over - 学习如何慢慢地逐行执行代码
  2. 断点 - 学习如何在特定点停止程序,以便查看程序是否到达某一行,以及该行的变量值是什么。
  3. 观察变量 - 在调试时查看变量的值。

看到这个: http: //www.codeproject.com/Articles/79508/Mastering-Debugging-in-Visual-Studio-2010-A-Beginn

哦,不要不知所措,觉得你需要通读那篇文章中的所有内容。

如果您能算出上面的 1,2 和 3,您将有一个良好的开端。您想在方法中放置一个断点并单步执行代码。您可以看到变量的值是什么,以及您在 print 语句中打印的变量的值是什么。

那个是用于 c# - 你也可以看看这个:(或者只是在 vb .net 中进行谷歌调试)

http://www.dreamincode.net/forums/topic/94249-debugging/

于 2013-10-27T10:56:47.350 回答