Vb.net 百分比方程中两个变量的计算值
我试图通过编程方式在方程146+x+y除以7=28.13%x和y包含19到43之间的任何值时,求出x和y的值。 这是代码,x和y都是25,我做错了什么Vb.net 百分比方程中两个变量的计算值,vb.net,Vb.net,我试图通过编程方式在方程146+x+y除以7=28.13%x和y包含19到43之间的任何值时,求出x和y的值。 这是代码,x和y都是25,我做错了什么 Public Class Form1 Dim percentage, x, y, f As Integer Public Function GetRandom(ByVal Min As Integer, ByVal Max As Integer) As Integer Dim Generator As System
Public Class Form1
Dim percentage, x, y, f As Integer
Public Function GetRandom(ByVal Min As Integer, ByVal Max As Integer) As Integer
Dim Generator As System.Random = New System.Random()
Return Generator.Next(Min, Max)
End Function
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
percentage = 28.13
Do Until f = 4
If (146 + x + y) / 7 = percentage Then
MessageBox.Show(x)
MessageBox.Show(y)
f = 4
End If
x = GetRandom(19, 43)
y = GetRandom(19, 43)
Loop
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
x = 19
y = 19
End Sub
End Class
1) 您将百分比声明为整数,但试图将其设置为28.13,这不是整数
2) 不要继续重新创建新的随机对象:
Public Class Form1
Private Generator As New Random()
Public Function GetRandom(ByVal Min As Integer, ByVal Max As Integer) As Integer
Return Generator.Next(Min, Max)
End Function
3) 如果你必须等于28.13,那么如果不将百分比声明为十进制,然后在等式上使用Math.Round(…),那么这可能是行不通的,但即使如此,我认为没有任何x和y整数可以满足精确相等的等式。1)您将百分比声明为整数,但试图将其设置为28.13,这不是整数
2) 不要继续重新创建新的随机对象:
Public Class Form1
Private Generator As New Random()
Public Function GetRandom(ByVal Min As Integer, ByVal Max As Integer) As Integer
Return Generator.Next(Min, Max)
End Function
3) 如果你必须等于28.13,那么如果不将百分比声明为十进制,然后使用数学。对你的方程进行四舍五入(…),那么这可能是行不通的,但即使如此,我认为你也不会有任何x和y整数满足精确相等的方程。你在寻找(x+y)=50.91,其中x在[19,43]中,y在[19,43]中[19,43]
因此,选择一个x,然后y=50.91-x
你所展示的方程没有单一的解
或者你真的在要求其他东西吗?你在寻找(x+y)=50.91,其中x在[19,43]中,y在[19,43]中
因此,选择一个x,然后y=50.91-x
你所展示的方程没有单一的解
或者你真的在要求别的东西吗?=28.13%
-你知道“%”符号的意思吗?它的意思是“*1/100”。这意味着50%==0.5!你是在找0.2813还是28.13%。=28.13%
-你知道“%”符号的意思吗?它的意思是“*1/100”。这意味着50%==0.5!你是在寻找0.2813还是28.13?2)你的意思是我应该在循环和函数之外创建它?3)将百分比声明为double可以解决我的问题吗?@OmairIqbal for#2,是的,只需在循环之外创建一次。对于#3,你的问题不能用整数解决。如果你用你的x an将你的公式插入电子表格中d y值在列和行中,最接近的是(19,32)(20,31)(21,30)…(26,25),其中的结果数字是28.142857。即使进行舍入,也不会达到28.13。x或y或两者都必须是十进制,但之后可以从(19.00-43.00)中选择更多的数字范围.2)你的意思是我应该在循环和函数之外创建它?3)将百分比声明为double可以解决我的问题吗?@OmairIqbal For#2,是的,只在循环之外创建一次。对于#3,你的问题不能用整数解决。如果你将公式插入到电子表格中,列和行中的x和y值最接近(19,32)(20,31)(21,30)…(26,25)其中得出的数字是28.142857。即使进行四舍五入,也不会达到28.13。x或y或两者都必须是十进制,但你可以从(19.00-43.00)中选择更多的数字你是说这个方程不能用数学来解吗?或者这个问题有很多解决方案,我解决这个问题的方法不对吗?(对不起,我不是这里的数学冠军)这个问题可以用数学方法来解决,但结果是一条曲线,而不是一个x的单一值和一个y的单一值。你是说这个方程不能用数学方法来解决吗?或者这个问题有很多解决方案,我解决这个问题的方法不是正确的吗?(对不起,这里不是数学冠军)这个问题可以用数学的方法解决,但结果是一条线在一张图上,而不是一个单一的x值和一个单一的y值。