主题:这种题怎么解
igdx
[专家分:110] 发布于 2005-09-02 16:28:00
1、 一次考试后分获数学,语文,电脑和英语第一名的考生在一起猜考试结果.
甲说:丁获得英语第一.
乙说:丙会获得语文第一.
丙说:甲的数学成绩不会超过第三名
丁说:没有人的电脑成绩能超过乙.
成绩公布后发现,只获得数学,英语第一的两人猜对了,请编程求出各获哪科第一。
回复列表 (共3个回复)
沙发
moz [专家分:37620] 发布于 2005-09-02 18:21:00
怎么解?
请参考 "四国语言"
板凳
莹萍 [专家分:130] 发布于 2005-09-03 09:55:00
FOR x1 = 1 TO 4
FOR x2 = 1 TO 4
IF x1 = x2 THEN GOTO 10
FOR x3 = 1 TO 4
IF x1 = x3 OR x2 = x3 THEN GOTO 20
FOR x4 = 1 TO 4
IF x1 = x4 OR x2 = x4 OR x3 = x4 THEN GOTO 30
a(1) = x1: a(2) = x2: a(3) = x3: a(4) = x4
b(1) = (x4 = 4): b(2) = (x3 = 2): b(3) = (x1 <> 1): b(4) = (x2 = 3)
IF b(1) + b(2) + b(3) + b(4)<>-2 THEN GOTO 30
FOR i = 1 TO 4
IF a(i) = 1 OR a(i) = 4 THEN
IF b(i) <> -1 THEN GOTO 30
END IF
NEXT i
PRINT "甲”;x1;“己”; x2;“丙”; x3;“丁”; x4
30 NEXT x4
20 NEXT x3
10 NEXT x2
NEXT x1
END
3 楼
spray [专家分:180] 发布于 2005-09-05 07:02:00
建议:请在标题中具体、明确点明主题,最好不用“小菜问题”、“跪求”、“来看看呀”、“来帮帮忙呀”之类的模糊标题。
我来回复