从数据库值中计算文本框中的溢价

时间:2014-03-06 16:46:37

标签: vb.net

市场价值。

我需要计算出溢价计算如下:

首先是10万美元的5%,然后是每个R10 000的10美元或之后的10万欧元的部分。

所以不知道该怎么做。

我的想法:

从我的数据集中获取值。

Dim Value1 as bool
Dim Value2 as bool
Dim premium as bool

Dim price As String = Convert.ToString(dsVehicleFill.Tables[0].Rows[0]["VEH_MarketPrice"])< - 不起作用。

计算:

Value1  = price/0.05
value2 = Value1 - price

我无法看到如何做到这一点。我是编码的新手,所以我就在这里。

1 个答案:

答案 0 :(得分:1)

关于计算溢价的问题更多的是数学问题,而不是编程问题,但这里有几件事情:

Dim Value1 as bool
Dim Value2 as bool
Dim premium as bool

bool数据类型用于表示布尔值,即它们的值应该是1或0.在此处使用它们是没有意义的:您希望变量的类型为{相反,{1}}适用于涉及货币的分数计算。

至于从DataTable中提取值的问题,您需要更具体地说明哪些不起作用。

现在,至于高级公式,让我们分解它(你在$和R之间切换(我认为这意味着南非兰德),我将在这个例子中使用美元):

  1. 首100美元可获得5%的溢价
  2. 剩余金额每10000美元可获得10美元的溢价,包括最后一部分,如果它是< $ 10000
  3. 所以你可以用这样的算法来计算:

    1. 将值与$ 100000比较
    2. 如果值为< = $ 100000
      • premium = Double
    3. 如果值>> $ 100000
      • 计算减去100000后的余数
      • 将剩余部分除以10000以查找要应用的10美元保费的数量(注意:在许多其他语言中,表达value * 0.05将导致整数除法,删除任何小数部分。可以通过编写你的常量来强制执行Double division:x / 10000。幸运的是,VB.NET默认为Double division,正如Plutonix在评论中指出的那样。)
      • 取这个数字的上限(即将其四舍五入到最接近的整数)
      • premium = x / 10000.0
    4. 在Visual Basic中实现它是留给读者的练习。 :)