回 帖 发 新 帖 刷新版面

主题:CHYX QING JIAO

【41】一个正整数(非素数)可以表示成它的因子(1和它本身除外)的乘积。
      例如:12有2,3,4,6,所以可表示为:12=2*2*3=4*3=2*6。
      给出任一个正整数N,求出它所有的因子乘积的表达式(交换律得出的不同式子算是同一种)

回复列表 (共4个回复)

沙发

DECLARE SUB pri ()
CLS
DIM SHARED t
INPUT n
DIM SHARED a(n)
t = 1: s = 1: a(t) = 1
DO
  a(t) = a(t) + 1: s = s * a(t)
  IF s >= n THEN
     IF s = n AND t > 1 THEN pri
     s = s / a(t): t = t - 1
     IF t = 0 THEN EXIT DO
     s = s / a(t)
  ELSE
     t = t + 1: a(t) = a(t - 1) - 1
  END IF
LOOP UNTIL t = 0
END

SUB pri
    FOR i = 1 TO t - 1: PRINT a(i); "*"; : NEXT i: PRINT a(t)
END SUB

板凳

头上也太长了吧

CLS
INPUT n
x = n
PRINT n; "=";
FOR i = 2 TO x - 1: IF n MOD i = 0 THEN PRINT i; "*"; : EXIT FOR
NEXT i
n = n \ i
10 FOR i = 2 TO x - 1
IF n MOD i = 0 THEN PRINT i; : EXIT FOR
NEXT i
n = n \ i
IF n <> 1 THEN PRINT "*"; : GOTO 10

3 楼

你到底给不给分?这可是我想了十几天才做出来的!

4 楼

[em9][em9][em9][em9][em9][em9][em9][em9][em9][em9][em9][em9][em9][em9]

我来回复

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