百鸡问题

Author: 张伦武 Date: 1994-03-25

        购买方案就是找出满足(1),(2)的母鸡数,公鸡数,小鸡数:
        母鸡数+公鸡数+小鸡数=100           (1)
        3X母鸡数+2X公鸡数+0.5X小鸡数=100   (2)
        对(1),(2)稍加变化,得到(3),(4):
        5X母鸡数+3X公鸡数=100              (3)
        2X公鸡数+5X小鸡数=400              (4)
        可编出如下FORRAN求解程序:
        INTEGER MJ,GJ,XJ
        WRITE(*,5)
        DO 10 MJ=1,19
        DO 10 GJ=1,31
        DO 10 XJ=1,79
        IF((MJ+GJ+XJ).NE.100) GOTO 10
        IF((3*MJ+2*GJ+0.5*XJ).NE.100) GOTO 10
        WRITE(*,40)MJ,GJ,XJ
        10 CONTINUE
        5 FORMAT(5X,'MJ',5X,'GJ',5X,'XJ')
        40 FORMAT(3(5X,14))
        STOP
        END
        该程序在MS DOS6.0下,利用MS FORTRAN5.0在HP486/33T上编译,连接,执行后,行到如下购买方案:
        (母鸡,公鸡,小鸡):(2,30,68),(5,25,70),(8,20,72),(11,15,74),(14,10,76),(17,5,78)。