回 帖 发 新 帖 刷新版面

主题:又一道QBASIC题。

甲、乙、丙三人买糖果。三人都买好了以后,甲对乙、丙说,我可以按你们现有的糖果数再送你们一份。甲送给乙、丙后,乙也按甲、丙现有的糖果数,送给甲、丙每人各一份。丙也如此送了甲、乙各一份。互相赠送后。每人恰好各有64颗糖果。问甲、乙、丙原来各买了多少糖果?

回复列表 (共6个回复)

沙发

设: 未知数x,y,z

1>  x1=x-y-z
    y1=y*2
    z1=z*2

2>  x2=x1*2
    y2=y1-x1-z1
    z2=z1*2

3>  x3=x2*2
    y3=y2*2
    z3=z2-x2-y2

4>  x3=64
    y3=64
    z3=64

所以:解方程得:
1>  x2=x3/2=32
    y2=y3/2=32
    z2=z3+x2+y2=64+32+32=128

2>  x1=x2/2=16
    z1=z2/2=64
    y1=y2+x1+z1=32+16+64=112

3>  y=y1/2=56
    z=z1/2=32
    x=x1+y+z=16+56+32=64*3-56-32=104

得解:
甲104,乙56,丙32

编程:  因为数字并不大,可以实行筛选遍历.

板凳

n = 2 * 2 * 2 * 2 * 2 * 2 * 2 * 2 * 2 * 2
m = n * 3
FOR a = m \ 2 TO (m - 2)
    FOR b = 1 TO (a - 1)
        x = a
        y = b
        z = m - x - y

        x = x - y - z 
        y = y * 2
        z = z * 2
        y = y - x - z
        x = x * 2
        z = z * 2
        z = z - x - y
        x = x * 2
        y = y * 2
        IF x = n AND y = n AND z = n THEN PRINT a, b, m - a - b
NEXT b, a

3 楼

用倒推,因为他们不管怎样变来变去,和总是不变的,因此我使用了表示和的变量s.
CLS
a1 = 64: a2 = 64: a3 = 64: s = 192
a1 = a1 / 2: a2 = a2 / 2: a3 = s - a1 - a2
a1 = a1 / 2: a3 = a3 / 2: a2 = s - a1 - a3
a2 = a2 / 2: a3 = a3 / 2: a1 = s - a2 - a3
PRINT a1, a2, a3
END
运行结果:
104           56           32

4 楼


for  x=1 to 192 
for y=1 to 192
z= 192-x-y
if x-y-z=16 and 3*Y-x-z=32 and 7*z-x-y=64 then print "x=";x,"y=";y,"z=";z
next y,x
end

5 楼

本人比较支持3楼小帅哥的做法,我一般就这么写

6 楼

暑假当中,妈妈让小慧帮忙修改英文资料,英文中还有一些统计数据(统计数据都是正整数,而且其前、后都有空格)。妈妈说:如果文档结尾处有“end”,则应当删除,文中所有的统计数据都要加上一个正整数m。你能编程序完成小慧的任务吗?
输入:m
      待修改后的文档(字符串)
输出:修改后的文档(字符串)
例如:输入:13
            There are 45 students in 32class.end
      输出:There are 58 students in 32class.

我来回复

您尚未登录,请登录后再回复。点此登录或注册