回 帖 发 新 帖 刷新版面

主题:求助最佳值问题

有九个桃子,其重量是120,81,90,100,107,110,95,105,106克,将其分成3堆,每堆3个,请编写一个程序让这3堆中每一堆重量与300克之差的绝对值之和最小。
   恳请高手相助!

回复列表 (共4个回复)

沙发

怎么没有高手相助!

板凳

CLS
INPUT N
DIM A(9),B(9)
FOR I=1 TO 9
  INPUT A(I)
  MIN=MIN+A(I)
NEXT I
MIN=MIN\3
DO WHILE B(0)=0
  A=0
  B=0
  C=0
  S1=0 
  S2=0
  S3=0  
  FOR I=1 TO 9 
    IF B(I)=0 THEN A=A+A(I):S1=S1+1
    IF B(I)=1 THEN B=B+A(I):S2=S2+1 
    IF B(I)=2 THEN C=C+A(I):S3=S3+1
  NEXT I
  IF S1=3 AND S2=3 AND S3=3 THEN 
    IF ABS(A+B+C-900)<MIN THEN MIN=ABS(A+B+C-300)
      T1=A
      T2=B
      T3=C
    END IF
  END IF
  K=9
  DO WHILE B(K)=2
    B(K)=0
    K=K-1
  LOOP
  B(K)=B(K)+1
LOOP
? T1,T2,T3

3 楼

非常感谢phile的相助,虽然程序中有点问题,但在你的启发下我已经修改成功。再次感谢!

4 楼

确实有问题,(我是直接打上去的)

我来回复

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