vb程序设计题求解!!!谢谢各位了!!

题目
1.一个球从100m高度自由落下,每次落地后反跳回原高度的一半,再落下。求它在第10次落地时,共经过多少m?最后一次反弹高度多少?

2.有一根长度为321m的钢材料,要将它截取成两种规格的短料,规格a,b的长度分别为17m和27m,问分隔成a,b多少段后,剩余材料r最少?

3.小猴在一天摘了若干个桃子,当天吃掉一半多一个;第二天接着吃了剩下的一半多一个,以后每天都吃剩下桃子中的一半零一个,到第七天在上要吃时只剩下一个,问小猴那天共摘下了多少个桃子?

PS:由于我是新学的VB很多东西不熟也不明白,还处于“物理”阶段,所以问的都很简单,各位大虾不要见笑哈.....希望答案能给详细一点,能写明理由的是更好的了,如果有哪位大虾愿意长期帮助我的话更是感激不尽.....
再次感谢各位的帮助,谢谢!!
鞠躬
小菜鸟留

Option Explicit

Private Sub Command1_Click()
Dim h0 As Integer, s As Single, a(1 To 20) As Single, i As Integer

a(1) = 100 '第一个扔下的高度

For i = 2 To 20 '每一个数组内数据表示小球行走的一个方向的路程,也就是奇数项是从最高点落下的路程,偶数项是从地面反弹到最高点的路程
a(i) = a(i - 1) / 2
Next i

For i = 1 To 19 '第10次落地的总路程
s = s + a(i)
Next

Print "第10次落地的总路程:" & s
Print "最后一次弹起的高度:" & a(20) '我这里是把第10次落地以后弹起的高度当做最后一次谈起的高度
End Sub

Private Sub Command2_Click()
Dim n_a() As Integer, n_b() As Integer, n_left() As Integer
Dim i As Integer, j As Integer, k As Integer, min As Integer
'简单的方法一时想不出来,我就一个个试出来。虽然效率不是很高,不过还好数字不是很大.
For i = 0 To 321 \ 17
For j = 0 To 321 \ 27
If i * 17 + j * 27 <= 321 Then
k = k + 1
ReDim Preserve n_left(k)
ReDim Preserve n_a(k)
ReDim Preserve n_b(k)
n_a(k) = i
n_b(k) = j
n_left(k) = 321 - i * 17 - j * 27
End If
Next
Next

min = n_left(1) '求剩下最小的距离
j = 1 '保存剩下最小距离的那组组合的序号
For i = 2 To k '我这里只求了一组解,也许有不同的组合而剩下距离相同的情况 我就没有再列出来的··
If min > n_left(i) Then
j = i
min = n_left(i)
End If
Next
Print "最小剩余组合:17m X" & n_a(j) & "根,27m X" & n_b(j) & "根,剩余最小长度为" & n_left(j); "m"

End Sub
第三题我回答过了··你看下面的网址的第一题···

参考资料:http://zhidao.baidu.com/question/138768061.html

温馨提示:内容为网友见解,仅供参考
第1个回答  2010-04-01
VB啊..
题目太麻烦。恕我很懒。。

根据我自己的学习经验,VB编程(或者是说所有的编程)有几个阶段
1,打字阶段。按照书本输入代码,不过依然很难完全输入正确。。
2,语法学习阶段。开始学习各种语句,if else , when ,for
3,理解代码阶段。慢慢能理解别人编写的简单函数。
4,代码编写阶段。开始编写些简单的代码,经常漏标点符号,觉得代码很难,语法很难。并且不会使用debug功能,不理解编译器提供的提示。
5,进阶阶段。简单代码很容易就搞定了,debug会了,编译器提供的信息也理解了。觉得写语法很简单,难点在算法。
7,窗口编写阶段。开始研究比较高级的窗口交互,信息输入的问题。

到最后的阶段,你就成为一个合格的入门程序员了。
我不知道你在哪个阶段了,慢慢来吧,一口吃不成个大胖子。
第2个回答  2010-04-01
第一题:

Private Sub Command2_Click()
n = 100
For i = 1 To 10
Sum = Sum + n
n = n / 2
Next i
Print "第十次落地共经过:" & Sum & "米"
Print "第十次反弹高度是:" & n & "米"
End Sub

第二题:我想到了在给你说

第三题:

Private Sub Command3_Click()
n = 1
For i = 7 To 1 Step -1
Sum = Sum + n
n = (n + 1) * 2
Next i
Print "小猴那天共摘下" & Sum & "个桃子"
End Sub

vb程序设计题求解!!!谢谢各位了!!
Option Explicit Private Sub Command1_Click()Dim h0 As Integer, s As Single, a(1 To 20) As Single, i As Integer a(1) = 100 '第一个扔下的高度 For i = 2 To 20 '每一个数组内数据表示小球行走的一个方向的路程,也就是奇数项是从最高点落下的路程,偶数项是从地面反弹到最...

VB编程这题有人会吗帮忙下谢谢!!好的就直接采纳了
分析题目: 需要用到的程序结构是循环: 打印字母,每行6个,一共6行, 那么就是打印36次, 所以循环应该是0到35次 或者1到36次;需要用的主要运算是 Mod取模; \\整除运算 Private Sub Form_Load()Form1.Show '窗口显示出来Print '换行.离上边框远点PrintDim i As Integer '定义一个整数iFor i ...

3道简单的VB编程题目,谢谢各位帮忙解答~
1、求和 Private Sub Form_Click()Dim rSum As Single Dim i As Integer For i = 1 To 100 If i Mod 2 = 0 Then '偶数 rSum = rSum - 1 \/ i Else '奇数 rSum = rSum + 1 \/ i End If Next Print rSum End Sub 2、素数函数 Private Function IsPrime(iNum As Integer) As Boole...

请VB 语言高手来帮我几个题目谢谢了..
第14题,错误,文本框的MaxLength属性默认为0。第15题,错误,数值类型包括长整型和浮点型等。第16题,正确,函数调用有三种形式,分别为b=f(x),f x和call f(x),而Sub过程只有后两种。第17题,错误,If语句如果只有一行,End If语句可以省略。第18题,正确,属性窗口和程序代码都可以修改对象的...

求助:一道VB题,请大家帮忙,谢谢
准确的说fun返回的是a除以n所得值的整数部分,就是 fun=int(a\/n)原因是当a>=n时。进行循环(while a>=n)第一次,a值减掉一个N,M为1(M初始为0),你可以这样理解:当a\/n时,为了使=号成立,可以写成这样,a\/n=m 余(a-n) 照这样看来第一次就是这样:a\/n=1 余a-n,同理,...

一道VB题目如图,求解
答案是最大那个数87 这个题目就是如果输入的数字比y大,那么y就被重新赋值 祝好运,望采纳。

求VB大神帮帮忙,解一下两个编程题!在线等,急!拜托了,谢谢(ฅ>ω<*...
第一题:Dim A As String, B As String, C As Integer, D As StringPrivate Sub Command1_Click()A = ""B = ""C = 0D = ""For i = 1 To 10 Step 1 B = Int((100 - 10 + 1) * Rnd + 10) A = A & "," & B If B Mod 3 = 0 Then C = C + 1...

...谢谢帮助~ 表达式LenB("123 程序设计 ABC")的值是多少。 为什么...
VB内部采用Unicode编码格式,即任何字符(含半角字母、数字、符号以及全角汉字、符号等)都由两个字节组成的(半角字符的高位字节为0,低位字节为其ASCII码)。因此,“123 程序设计 ABC”这个字符串包含12个字符(有两个空格),即24个字节,因此LenB("123 程序设计 ABC")的值为24 ...

如何解答谢列VB问题 考试急用 谢谢
解答VB问题的技巧在于熟悉和掌握VB的属性、事件和函数。51题答案为A,Interval属性控制定时器控件的定时时间。52题答案为D,SelText属性可获取文本框中选定的文本。53题答案为C,Load事件发生在窗体加载时,单击鼠标会触发MouseDown、MouseUp和Click事件。54题答案为D,执行后x-y和y-x均为-25。55题答案...

vb程序设计求前N项代数和例题,急!求写出详细代码,谢谢啦!
你只要在窗口中放一个frame,再在frame中放两个label1和label2。再在frame外面放一个label3,一个command1,一个text1。其他由程序完成,程序如下,已经运行过:Private Sub Command1_Click() Dim Sum As String Dim N As Integer Dim I As Integer, J As Integer, K As Integer D...

相似回答