主题:加分喽!!
随便你好
[专家分:530] 发布于 2007-08-14 09:40:00
有30个男人女人和小孩同在一家饭馆进餐,共花了五十先令,其中男宾3先令,女宾2先令,小孩1先令.试编程求出男人女人小孩各多少人?
回复列表 (共15个回复)
11 楼
qbth5927 [专家分:0] 发布于 2007-09-04 19:52:00
CLS
FOR a = 1 TO 50\3
FOR b = 1 TO 50\2
FOR c = 1 TO 20
IF a+b+c = 30 AND 3 * a + 2 * b + c = 50 THEN PRINT a; b; c
NEXT c
NEXT b
NEXT a
END
12 楼
mczzzhao [专家分:0] 发布于 2007-09-04 20:38:00
此问题可用QB里面的穷举法来解决
I,J,分别表示男,女的人数
FOR I=1 TO INT(50/3)+1
FOR J=1 TO INT(50/2)
IF I*3+J*2+(50-I-J)*1=50 THEN PRINT I,J,50-I-J
NEXT J,I
END
QB初学爱好者
13 楼
mczzzhao [专家分:0] 发布于 2007-09-04 21:07:00
for i=1 to int(50/3)+1
for j=1 to int(50/2)
if i*2+j*3+(30-i-j)*1=50 then print i,j,30-i-j
next j,i
end
14 楼
mczzzhao [专家分:0] 发布于 2007-09-04 21:10:00
for i=1 to int(50/3)+1
for j=1 to int(50/2)
if i*3+j*2+(30-i-j)*1=50 then print i,j,30-i-j
next j,i
end
15 楼
人才锐锐 [专家分:260] 发布于 2007-09-07 15:53:00
CLS
FOR i = 1 TO 50 \ 3
FOR j = 1 TO 50 \ 2
FOR k = 1 TO 28
IF i+j+k = 30 AND 3 * i + 2 * j + k = 50 THEN PRINT a; b; c: s = s + 1
NEXT k,j,i
PRINT "S="; s
END
我来回复