首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

vb程序解决办法

2012-01-19 
vb程序编写一个SUB过程,该过程根据输入的工资数确定发给多少张一百元,五十元,十元,五元,一元,五角,一角,五

vb程序
编写一个SUB过程,该过程根据输入的工资数确定发给多少张一百元,五十元,十元,五元,一元,五角,一角,五分,一分的钞票。运行时,在窗体上用文本框输入工资额,按回车调用SUB过程计算各种面值的钞票各需多少,并将结果显示在窗体上(SUB过程只负责计算,不负责显示结果)

[解决办法]

VB code
Sub JiSuan(n, d())    Dim y    y = Array(10000, 5000, 1000, 500, 100, 50, 10, 5, 1)    '对应一百元,五十元,十元,五元,一元,五角,一角,五分,一分    n = n * 100     '将金额去掉小数点    For i = 0 To 8        d(i) = n \ y(i)        n = n - d(i) * y(i)    Next iEnd SubSub main()    Dim d(9)    'd(0 to 8)对应一百元,五十元,十元,五元,一元,五角,一角,五分,一分的张数    JiSuan CSng(Text1.Text), d    For i = 0 To UBound(d)        Print d(i)    Next iEnd Sub
[解决办法]
VB code
'n为输入的工资数,以元为单位;以flag(1 to 9)来返回各种面值钞票的张数Private Sub myfunction(n As Double, flag() As Integer)n = n * 100ReDim flag(1 To 9) As Integerflag(1) = Int(n / 10000)n = n Mod 10000flag(2) = Int(n / 5000)n = n Mod 5000flag(3) = Int(n / 1000)n = n Mod 1000flag(4) = Int(n / 500)n = n Mod 500flag(5) = Int(n / 100)n = n Mod 100flag(6) = Int(n / 50)n = n Mod 50flag(7) = Int(n / 10)n = n Mod 10flag(8) = Int(n / 5)n = n Mod 5flag(9) = nEnd SubPrivate Sub Text1_KeyPress(KeyAscii As Integer)Dim t(1 To 9) As StringDim myflag() As IntegerIf KeyAscii = 13 Then    Call myfunction(Val(Text1.Text), myflag())    Print "依次需要的各种面值的钞票张数为:"    For i = 1 To 9        Print myflag(i) & ",";    Next iEnd IfEnd Sub 

热点排行