批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程
[批处理文件精品]批处理版照片整理器[批处理文件精品]纯批处理备份&还原驱动在线第三方下载
返回列表 发帖

[原创] vbs学习习题 - 百元买百鸡问题

本帖最后由 shelluserwlb 于 2014-11-23 17:03 编辑
  1. '100元钱买100只鸡,小鸡1元3只,公鸡3元1只,母鸡5元1只。有多少种买法?(每种鸡至少买1只)
  2. Option Explicit
  3. Dim i,j,k
  4. Dim intSum,strResult
  5. intSum = 1
  6. For i = 1 To 276
  7. For j = 1 To 31
  8. For k = 1 To 19
  9. If k=100-(i+j) And ((1/3)*i)+(3*j)+(5*k)=100 Then
  10. strResult = strResult & cstr(intSum) & _
  11. ": 小鸡:" & i & "只,公鸡"& j &  _
  12. "只,母鸡" & k & "只。" & Chr(10)
  13. intSum = intSum + 1
  14. End if
  15. Next
  16. Next
  17. Next
  18. MsgBox strResult
复制代码

买半只鸡如何?
  1. Option Explicit
  2. Dim i,j,k,money
  3. Dim intSum,s
  4. For i = 1 To 98 step 0.5
  5.         For j = 1 To 98 step 0.5
  6.                 k = 100 - (i + j)
  7.                 money = i/3 + j*3 + k*5
  8.                 If k > 0 And money = 100 Then
  9.                         intSum = intSum + 1
  10.                         s = s & intSum & ": 小鸡 " & i & " 只,"
  11.                         s = s & "公鸡 " & j & " 只,"
  12.                         s = s & "母鸡 " & k & " 只" & vbLf
  13.                 End If
  14.         Next
  15. Next
  16. WScript.Echo s
复制代码

TOP

我觉得简化成 step 100/N 比较合理

TOP

回复 3# CrLf


    嗯,有道理,一般人一顿吃不了那么多

TOP

  1. dim i,j,k
  2. for i=0 to 20
  3.    for j=0 to 33
  4.       for k=0 to 100
  5.          if i+j+k=100 and 5*i+3*j+k/3=100 then
  6.              str=str & i & " "& j & " "& k & " "
  7.              str= str & vbCrlf
  8.          end if
  9.       next
  10.    next
  11. next
  12. msgbox str
  13.          
  14.          
  15.       
复制代码
这不是很简单吗

TOP

1
主题

1364
帖子

2万
积分

终身vip会员


积分25937 .

. 发消息
.

7#



发表于 3 天前 | 只看该作者






好好学习,天天向上

TOP

看看就看看!






好好学习,天天向上

TOP

谢谢分享,支持一下

TOP

返回列表