回 帖 发 新 帖 刷新版面

主题:T形

【58】排T字形
      将数字1,2,3,…9排成一个T字形,使得横竖排的数之和相等。如下图: 
              
             4  5  1  6  7
                   2
                   3
                   8
                   9

      同时认为,在横排或竖排中只要数字相同而不管位置如何都认为是相同的排列。
      如:4 5 1 6 7 与 5 4 1 7 6 是相同的。
      程序要求:求出所有不同满足条件的T字形排列种数,
      并根据给定的N(N指该T字形交叉点上的数值)输出所有满足条件的T字形排列。

回复列表 (共4个回复)

沙发

cls
print using "###";4;
print using "###";5;
print using "###";1;
print using "###";6;
print using "###";7
print using "###";2
print using "###";3
print using "###";8
print using "###";9

板凳

连题号都发上啦..............
程序:
CLS
INPUT N
IF N MOD 2 = 0 THEN PRINT "DATA WRONG!": END
FOR A = 1 TO 6
FOR B = A + 1 TO 7
FOR C = B + 1 TO 8
FOR D = C + 1 TO 9
IF A = N OR B = N OR C = N OR D = N THEN 10
IF A + B + C + D <> (45 - N) / 2 THEN 10
PRINT A; B; N; C; D
FOR I = 1 TO 9
IF I <> A AND I <> B AND I <> C AND I <> D AND I <> N THEN PRINT TAB(7); I
NEXT I: S = S + 1
10 NEXT D, C, B, A
PRINT "S="; S
END
对的哦...........

3 楼

CLS
INPUT N
IF N MOD 2 = 0 THEN PRINT "DATA WRONG!": END
FOR A = 1 TO 6
FOR B = A + 1 TO 7
FOR C = B + 1 TO 8
FOR D = C + 1 TO 9
IF A = N OR B = N OR C = N OR D = N THEN 10
IF A + B + C + D <> (45 - N) / 2 THEN 10
PRINT A; B; N; C; D
FOR I = 1 TO 9
IF I <> A AND I <> B AND I <> C AND I <> D AND I <> N THEN PRINT TAB(7); I
NEXT I: S = S + 1
10 NEXT D, C, B, A
PRINT "S="; S
END

4 楼

CLS
INPUT N
FOR A = 1 TO 6
FOR B = A + 1 TO 7
FOR C = B + 1 TO 8
FOR D = C + 1 TO 9
IF A = N OR B = N OR C = N OR D = N THEN 10
IF A + B + C + D <> (45 - N) / 2 THEN 10
PRINT A; B; N; C; D
FOR I = 1 TO 9
IF I <> A AND I <> B AND I <> C AND I <> D AND I <> N THEN PRINT TAB(7); I
NEXT I: S = S + 1
10 NEXT D, C, B, A
PRINT S
END

我来回复

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