回 帖 发 新 帖 刷新版面

主题:[讨论]歌德巴赫猜想

给程序!!!

回复列表 (共7个回复)

沙发

CLS
DO 
  INPUT N
LOOP UTNIL N>6
K=2
DO  WHILE K<N
  K=K+1
  F= -1
  FOR I=2 TO INT(SQR(K))
    IF K MOD I=0 THEN F=0
  NEXT I
  D=N-K
  IF D>1 AND F=-1  THEN
   F1=-1 
   FOR I=2 TO INT(SQR(D))
      IF D MOD I=0 THEN F1=0
   NEXT I
   IF F1=-1 THEN PRINT N;"=";K;"+";"D";:END IF
  END IF
LOOP  

板凳

楼上简直是错误百出,你还给他加30分!
看我的!
DECLARE FUNCTION isprime! (m!)
CLS
1 INPUT n
IF n MOD 2 = 1 OR n <> INT(n) OR n < 4 THEN 1
FOR i = 2 TO n \ 2
    j = n - i
    IF isprime(i) THEN
       IF isprime(j) THEN PRINT n; "="; i; "+"; j; : END
    END IF
NEXT i
END

FUNCTION isprime (m)
FOR i = 2 TO INT(SQR(m))
    IF m MOD i = 0 THEN isprime = 0: EXIT FUNCTION
NEXT i
isprime = 1
END FUNCTION

3 楼

我也来凑热闹
1:input n
if n<6 or n mod 2 <> 0 or n <> int(n) then goto 1
for i=1 to n/2
a=i
b=n-i
c=a
gosub 10
if flag =1 then goto 20
c=b
gosub 10
if flag =0 then print a;"+";b;"=";c;
20:
   next i
end
10
  flag =0
  for j=2 to int(sqr(c))
  if c mod j = 0 then flag =1
  next j
  return

4 楼

1楼是错误多
应是
CLS
DO
  INPUT N
LOOP UNTIL N > 6 AND N MOD 2 = 0 AND INT(N) = N
K = 2
DO WHILE K < N \ 2
  K = K + 1
  F = -1
  FOR I = 2 TO INT(SQR(K))
    IF K MOD I = 0 THEN F = 0
  NEXT I
  D = N - K
  IF D > 1 AND F = -1 THEN
   F1 = -1
   FOR I = 2 TO INT(SQR(D))
     IF D MOD I = 0 THEN F1 = 0
   NEXT I
   IF F1 = -1 THEN PRINT N; "="; K; "+"; D
  END IF
LOOP

5 楼

嗯嗯   不错不错


这可是一个 老帖子 啊

6 楼

老?

7 楼

CLS
DO
 INPUT N
LOOP UNTIL N>4
FOR I = N\2 TO 1 STEP -1
 A=I
 B=N-A
 GOSUB 10
NEXT I
END
10
F=0
FOR J = 2 TO INT(SQR(A))
 IF A MOD J = 0 THEN F=1:EXIT FOR
NEXT J
IF F=1 THEN RETURN
F=0
FOR J = 2 TO INT(SQR(B))
 IF B MOD J = 0 THEN F=1:EXIT FOR
NEXT J
IF F=0 THEN ?A;B:END ELSE RETURN

我来回复

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