Annotation of 43BSDTahoe/usr.bin/f77/testf77/tests/fm062.f, revision 1.1

1.1     ! root        1: c     comment section
        !             2: c
        !             3: c     fm062
        !             4: c
        !             5: c          this routine tests arithmetic assignment statements where
        !             6: c     an arithmetic expression formed from real variables and
        !             7: c     constants connected by arithmetic operators is assigned to
        !             8: c     a real variable.  in cases involving the exponentiation
        !             9: c     operator, real values are raised to integer powers only.
        !            10: c
        !            11: c           a real datum is a processor approximation to the value of a
        !            12: c     real number.  it may assume positive, negative and zero values.
        !            13: c
        !            14: c          a basic real constant is written as an integer part, a
        !            15: c     decimal point, and a decimal fraction part in that order.  both
        !            16: c     the integer part and the decimal part are strings of digits;
        !            17: c     either one of these strings may be empty but not both.  the
        !            18: c     constant is an approximation to the digit string interpreted as a
        !            19: c     decimal numeral.
        !            20: c
        !            21: c         a decimal exponent is written as the letter e, followed by an
        !            22: c     optionally signed integer constant.
        !            23: c
        !            24: c         a real constant is indicated by writing a basic real constant,
        !            25: c     a basic real constant followed by a decimal exponent, or an
        !            26: c     integer constant followed by a decimal exponent.
        !            27: c
        !            28: c      references
        !            29: c        american national standard programming language fortran,
        !            30: c              x3.9-1978
        !            31: c
        !            32: c        section 4.4, real type
        !            33: c        section 4.4.1, real constant
        !            34: c        section 6.1, arithmetic expressions
        !            35: c        section 6.6, evaluation of expressions
        !            36: c        section 10.1, arithmetic assignment statement
        !            37: c
        !            38: c      **********************************************************
        !            39: c
        !            40: c         a compiler validation system for the fortran language
        !            41: c     based on specifications as defined in american national standard
        !            42: c     programming language fortran x3.9-1978, has been developed by the
        !            43: c     federal cobol compiler testing service.  the fortran compiler
        !            44: c     validation system (fcvs) consists of audit routines, their related
        !            45: c     data, and an executive system.  each audit routine is a fortran
        !            46: c     program, subprogram or function which includes tests of specific
        !            47: c     language elements and supporting procedures indicating the result
        !            48: c     of executing these tests.
        !            49: c
        !            50: c         this particular program/subprogram/function contains features
        !            51: c     found only in the subset as defined in x3.9-1978.
        !            52: c
        !            53: c         suggestions and comments should be forwarded to -
        !            54: c
        !            55: c                  department of the navy
        !            56: c                  federal cobol compiler testing service
        !            57: c                  washington, d.c.  20376
        !            58: c
        !            59: c      **********************************************************
        !            60: c
        !            61: c
        !            62: c
        !            63: c     initialization section
        !            64: c
        !            65: c     initialize constants
        !            66: c      **************
        !            67: c     i01 contains the logical unit number for the card reader.
        !            68:       i01 = 5
        !            69: c     i02 contains the logical unit number for the printer.
        !            70:       i02 = 6
        !            71: c     system environment section
        !            72: c
        !            73: cx010    this card is replaced by contents of fexec x-010 control card.
        !            74: c     the cx010 card is for overriding the program default i01 = 5
        !            75: c     (unit number for card reader).
        !            76: cx011    this card is replaced by contents of fexec x-011 control card.
        !            77: c     the cx011 card is for systems which require additional
        !            78: c     fortran statements for files associated with cx010 above.
        !            79: c
        !            80: cx020    this card is replaced by contents of fexec x-020 control card.
        !            81: c     the cx020 card is for overriding the program default i02 = 6
        !            82: c     (unit number for printer).
        !            83: cx021    this card is replaced by contents of fexec x-021 control card.
        !            84: c     the cx021 card is for systems which require additional
        !            85: c     fortran statements for files associated with cx020 above.
        !            86: c
        !            87:       ivpass=0
        !            88:       ivfail=0
        !            89:       ivdele=0
        !            90:       iczero=0
        !            91: c
        !            92: c     write page headers
        !            93:       write (i02,90000)
        !            94:       write (i02,90001)
        !            95:       write (i02,90002)
        !            96:       write (i02, 90002)
        !            97:       write (i02,90003)
        !            98:       write (i02,90002)
        !            99:       write (i02,90004)
        !           100:       write (i02,90002)
        !           101:       write (i02,90011)
        !           102:       write (i02,90002)
        !           103:       write (i02,90002)
        !           104:       write (i02,90005)
        !           105:       write (i02,90006)
        !           106:       write (i02,90002)
        !           107: c
        !           108: c     test section
        !           109: c
        !           110: c          arithmetic assignment statement
        !           111: c
        !           112: c
        !           113: c     tests 62 through 70 use a mixture of real variables and real
        !           114: c     constants connected by two identical arithmetic operators.
        !           115: c     tests occur in pairs, one without parentheses and one with
        !           116: c     parentheses to alter the normal order of evaluation.
        !           117: c
        !           118: c     tests 71 through 90 use three real variables connected by a
        !           119: c     pair of dissimilar operators.  all combinations and orderings
        !           120: c     of operators are exercized.  where exponentiation is tested,
        !           121: c     integer variables are used for the power primaries.
        !           122: c
        !           123: c     tests 91 and 92 use a series of real variables connected by one
        !           124: c     each of the arithmetic opertors.  parenthetical notations are
        !           125: c     also tested.
        !           126: c
        !           127: c
        !           128: c
        !           129: c
        !           130: c
        !           131:       ivtnum =  62
        !           132: c
        !           133: c      ****  test  62  ****
        !           134: c
        !           135:       if (iczero) 30620,  620, 30620
        !           136:   620 continue
        !           137:       rvon01 = 7.5
        !           138:       rvon02 = 5e2
        !           139:       rvcomp = rvon01 + rvon02 + 33e-1
        !           140:       go to 40620
        !           141: 30620 ivdele = ivdele + 1
        !           142:       write (i02,80003) ivtnum
        !           143:       if (iczero) 40620,  631, 40620
        !           144: 40620 if (rvcomp - 510.75) 20620,10620,40621
        !           145: 40621 if (rvcomp - 510.85) 10620,10620,20620
        !           146: 10620 ivpass = ivpass + 1
        !           147:       write (i02,80001) ivtnum
        !           148:       go to  631
        !           149: 20620 ivfail = ivfail + 1
        !           150:       rvcorr = 510.8
        !           151:       write (i02,80005) ivtnum, rvcomp, rvcorr
        !           152:   631 continue
        !           153:       ivtnum =  63
        !           154: c
        !           155: c      ****  test  63  ****
        !           156: c
        !           157:       if (iczero) 30630,  630, 30630
        !           158:   630 continue
        !           159:       rvon01 = 75e-1
        !           160:       rvon02 = 500.0
        !           161:       rvcomp = rvon01 + (rvon02 + 3.3)
        !           162:       go to 40630
        !           163: 30630 ivdele = ivdele + 1
        !           164:       write (i02,80003) ivtnum
        !           165:       if (iczero) 40630,  641, 40630
        !           166: 40630 if (rvcomp - 510.75) 20630,10630,40631
        !           167: 40631 if (rvcomp - 510.85) 10630,10630,20630
        !           168: 10630 ivpass = ivpass + 1
        !           169:       write (i02,80001) ivtnum
        !           170:       go to  641
        !           171: 20630 ivfail = ivfail + 1
        !           172:       rvcorr = 510.8
        !           173:       write (i02,80005) ivtnum, rvcomp, rvcorr
        !           174:   641 continue
        !           175:       ivtnum =  64
        !           176: c
        !           177: c      ****  test  64  ****
        !           178: c
        !           179:       if (iczero) 30640,  640, 30640
        !           180:   640 continue
        !           181:       rvcomp = 7.5 - 500. - 3.3
        !           182:       go to 40640
        !           183: 30640 ivdele = ivdele + 1
        !           184:       write (i02,80003) ivtnum
        !           185:       if (iczero) 40640,  651, 40640
        !           186: 40640 if (rvcomp + 495.85) 20640,10640,40641
        !           187: 40641 if (rvcomp + 495.75) 10640,10640,20640
        !           188: 10640 ivpass = ivpass + 1
        !           189:       write (i02,80001) ivtnum
        !           190:       go to  651
        !           191: 20640 ivfail = ivfail + 1
        !           192:       rvcorr = -495.8
        !           193:       write (i02,80005) ivtnum, rvcomp, rvcorr
        !           194:   651 continue
        !           195:       ivtnum =  65
        !           196: c
        !           197: c      ****  test  65  ****
        !           198: c
        !           199:       if (iczero) 30650,  650, 30650
        !           200:   650 continue
        !           201:       rvon01 = 7.5
        !           202:       rvon02 = 5e2
        !           203:       rvcomp = rvon01 - (33e-1 - rvon02)
        !           204:       go to 40650
        !           205: 30650 ivdele = ivdele + 1
        !           206:       write (i02,80003) ivtnum
        !           207:       if (iczero) 40650,  661, 40650
        !           208: 40650 if (rvcomp - 504.15) 20650,10650,40651
        !           209: 40651 if (rvcomp - 504.25) 10650,10650,20650
        !           210: 10650 ivpass = ivpass + 1
        !           211:       write (i02,80001) ivtnum
        !           212:       go to  661
        !           213: 20650 ivfail = ivfail + 1
        !           214:       rvcorr = 504.2
        !           215:       write (i02,80005) ivtnum, rvcomp, rvcorr
        !           216:   661 continue
        !           217:       ivtnum =  66
        !           218: c
        !           219: c      ****  test  66  ****
        !           220: c
        !           221:       if (iczero) 30660,  660, 30660
        !           222:   660 continue
        !           223:       rvon01 = 7.5
        !           224:       rvcomp = 5e2 * 33e-1 * rvon01
        !           225:       go to 40660
        !           226: 30660 ivdele = ivdele + 1
        !           227:       write (i02,80003) ivtnum
        !           228:       if (iczero) 40660,  671, 40660
        !           229: 40660 if (rvcomp - 12370) 20660,10660,40661
        !           230: 40661 if (rvcomp - 12380) 10660,10660,20660
        !           231: 10660 ivpass = ivpass + 1
        !           232:       write (i02,80001) ivtnum
        !           233:       go to  671
        !           234: 20660 ivfail = ivfail + 1
        !           235:       rvcorr = 12375.
        !           236:       write (i02,80005) ivtnum, rvcomp, rvcorr
        !           237:   671 continue
        !           238:       ivtnum =  67
        !           239: c
        !           240: c      ****  test  67  ****
        !           241: c
        !           242:       if (iczero) 30670,  670, 30670
        !           243:   670 continue
        !           244:       rvon01 = 7.5
        !           245:       rvcomp = 5e2 * (rvon01 * 33e-1)
        !           246:       go to 40670
        !           247: 30670 ivdele = ivdele + 1
        !           248:       write (i02,80003) ivtnum
        !           249:       if (iczero) 40670,  681, 40670
        !           250: 40670 if (rvcomp - 12370) 20670,10670,40671
        !           251: 40671 if (rvcomp - 12380) 10670,10670,20670
        !           252: 10670 ivpass = ivpass + 1
        !           253:       write (i02,80001) ivtnum
        !           254:       go to  681
        !           255: 20670 ivfail = ivfail + 1
        !           256:       rvcorr = 12375.
        !           257:       write (i02,80005) ivtnum, rvcomp, rvcorr
        !           258:   681 continue
        !           259:       ivtnum =  68
        !           260: c
        !           261: c      ****  test  68  ****
        !           262: c
        !           263:       if (iczero) 30680,  680, 30680
        !           264:   680 continue
        !           265:       rvon01 = 7.5
        !           266:       rvon02 = 33e-1
        !           267:       rvon03 = -5e+2
        !           268:       rvcomp = rvon01 / rvon02 / rvon03
        !           269:       go to 40680
        !           270: 30680 ivdele = ivdele + 1
        !           271:       write (i02,80003) ivtnum
        !           272:       if (iczero) 40680,  691, 40680
        !           273: 40680 if (rvcomp + .00459) 20680,10680,40681
        !           274: 40681 if (rvcomp + .00449) 10680,10680,20680
        !           275: 10680 ivpass = ivpass + 1
        !           276:       write (i02,80001) ivtnum
        !           277:       go to  691
        !           278: 20680 ivfail = ivfail + 1
        !           279:       rvcorr = -.0045454
        !           280:       write (i02,80005) ivtnum, rvcomp, rvcorr
        !           281:   691 continue
        !           282:       ivtnum =  69
        !           283: c
        !           284: c      ****  test  69  ****
        !           285: c
        !           286:       if (iczero) 30690,  690, 30690
        !           287:   690 continue
        !           288:       rvon01 = 7.5
        !           289:       rvon02 = 33e-1
        !           290:       rvon03 = -5e+2
        !           291:       rvcomp = rvon01 / (rvon02 / rvon03)
        !           292:       go to 40690
        !           293: 30690 ivdele = ivdele + 1
        !           294:       write (i02,80003) ivtnum
        !           295:       if (iczero) 40690,  701, 40690
        !           296: 40690 if (rvcomp + 1180.) 20690,10690,40691
        !           297: 40691 if (rvcomp + 1080.) 10690,10690,20690
        !           298: 10690 ivpass = ivpass + 1
        !           299:       write (i02,80001) ivtnum
        !           300:       go to  701
        !           301: 20690 ivfail = ivfail + 1
        !           302:       rvcorr = -1136.4
        !           303:       write (i02,80005) ivtnum, rvcomp, rvcorr
        !           304:   701 continue
        !           305:       ivtnum =  70
        !           306: c
        !           307: c      ****  test  70  ****
        !           308: c
        !           309:       if (iczero) 30700,  700, 30700
        !           310:   700 continue
        !           311:       rvon01 = 3.835e3
        !           312:       ivon01 =  5
        !           313:       rvcomp = rvon01 ** ivon01
        !           314:       go to 40700
        !           315: 30700 ivdele = ivdele + 1
        !           316:       write (i02,80003) ivtnum
        !           317:       if (iczero) 40700,  711, 40700
        !           318: 40700 if (rvcomp - 8.29e17) 20700,10700,40701
        !           319: 40701 if (rvcomp - 8.30e17) 10700,10700,20700
        !           320: 10700 ivpass = ivpass + 1
        !           321:       write (i02,80001) ivtnum
        !           322:       go to  711
        !           323: 20700 ivfail = ivfail + 1
        !           324:       rvcorr = 8.295e17
        !           325:       write (i02,80005) ivtnum, rvcomp, rvcorr
        !           326:   711 continue
        !           327: c
        !           328: c     tests 71 through 74 test  rv1 + rv2 <op2> rv3
        !           329: c
        !           330:       ivtnum =  71
        !           331: c
        !           332: c      ****  test  71  ****
        !           333: c
        !           334:       if (iczero) 30710,  710, 30710
        !           335:   710 continue
        !           336:       rvon01 = 524.87
        !           337:       rvon02 = 3.35
        !           338:       rvon03 = .005679
        !           339:       rvcomp = rvon01 + rvon02 - rvon03
        !           340:       go to 40710
        !           341: 30710 ivdele = ivdele + 1
        !           342:       write (i02,80003) ivtnum
        !           343:       if (iczero) 40710,  721, 40710
        !           344: 40710 if (rvcomp - 528.16) 20710,10710,40711
        !           345: 40711 if (rvcomp - 528.26) 10710,10710,20710
        !           346: 10710 ivpass = ivpass + 1
        !           347:       write (i02,80001) ivtnum
        !           348:       go to  721
        !           349: 20710 ivfail = ivfail + 1
        !           350:       rvcorr = 528.21
        !           351:       write (i02,80005) ivtnum, rvcomp, rvcorr
        !           352:   721 continue
        !           353:       ivtnum =  72
        !           354: c
        !           355: c      ****  test  72  ****
        !           356: c
        !           357:       if (iczero) 30720,  720, 30720
        !           358:   720 continue
        !           359:       rvon01 = 524.87
        !           360:       rvon02 = 3.35
        !           361:       rvon03 = .005679
        !           362:       rvcomp = rvon01 + rvon02 * rvon03
        !           363:       go to 40720
        !           364: 30720 ivdele = ivdele + 1
        !           365:       write (i02,80003) ivtnum
        !           366:       if (iczero) 40720,  731, 40720
        !           367: 40720 if (rvcomp - 524.84) 20720,10720,40721
        !           368: 40721 if (rvcomp - 524.94) 10720,10720,20720
        !           369: 10720 ivpass = ivpass + 1
        !           370:       write (i02,80001) ivtnum
        !           371:       go to  731
        !           372: 20720 ivfail = ivfail + 1
        !           373:       rvcorr = 524.89
        !           374:       write (i02,80005) ivtnum, rvcomp, rvcorr
        !           375:   731 continue
        !           376:       ivtnum =  73
        !           377: c
        !           378: c      ****  test  73  ****
        !           379: c
        !           380:       if (iczero) 30730,  730, 30730
        !           381:   730 continue
        !           382:       rvon01 = 524.87
        !           383:       rvon02 = 3.35
        !           384:       rvon03 = .005679
        !           385:       rvcomp = rvon01 + rvon02 / rvon03
        !           386:       go to 40730
        !           387: 30730 ivdele = ivdele + 1
        !           388:       write (i02,80003) ivtnum
        !           389:       if (iczero) 40730,  741, 40730
        !           390: 40730 if (rvcomp - 1114.2) 20730,10730,40731
        !           391: 40731 if (rvcomp - 1115.2) 10730,10730,20730
        !           392: 10730 ivpass = ivpass + 1
        !           393:       write (i02,80001) ivtnum
        !           394:       go to  741
        !           395: 20730 ivfail = ivfail + 1
        !           396:       rvcorr = 1114.8
        !           397:       write (i02,80005) ivtnum, rvcomp, rvcorr
        !           398:   741 continue
        !           399:       ivtnum =  74
        !           400: c
        !           401: c      ****  test  74  ****
        !           402: c
        !           403:       if (iczero) 30740,  740, 30740
        !           404:   740 continue
        !           405:       rvon01 = 524.87
        !           406:       rvon02 = 3.35
        !           407:       ivon01 = 7
        !           408:       rvcomp = rvon01 + rvon02 ** ivon01
        !           409:       go to 40740
        !           410: 30740 ivdele = ivdele + 1
        !           411:       write (i02,80003) ivtnum
        !           412:       if (iczero) 40740,  751, 40740
        !           413: 40740 if (rvcomp - 5259.3) 20740,10740,40741
        !           414: 40741 if (rvcomp - 5260.3) 10740,10740,20740
        !           415: 10740 ivpass = ivpass + 1
        !           416:       write (i02,80001) ivtnum
        !           417:       go to  751
        !           418: 20740 ivfail = ivfail + 1
        !           419:       rvcorr = 5259.8
        !           420:       write (i02,80005) ivtnum, rvcomp, rvcorr
        !           421:   751 continue
        !           422: c
        !           423: c     tests 75 through 78 check     rv1 - rv2 <op2> rv3
        !           424: c
        !           425:       ivtnum =  75
        !           426: c
        !           427: c      ****  test  75  ****
        !           428: c
        !           429:       if (iczero) 30750,  750, 30750
        !           430:   750 continue
        !           431:       rvon01 = 524.87
        !           432:       rvon02 = 3.35
        !           433:       rvon03 = .5679
        !           434:       rvcomp = rvon01 - rvon02 + rvon03
        !           435:       go to 40750
        !           436: 30750 ivdele = ivdele + 1
        !           437:       write (i02,80003) ivtnum
        !           438:       if (iczero) 40750,  761, 40750
        !           439: 40750 if (rvcomp - 522.03) 20750,10750,40751
        !           440: 40751 if (rvcomp - 522.13) 10750,10750,20750
        !           441: 10750 ivpass = ivpass + 1
        !           442:       write (i02,80001) ivtnum
        !           443:       go to  761
        !           444: 20750 ivfail = ivfail + 1
        !           445:       rvcorr = 522.09
        !           446:       write (i02,80005) ivtnum, rvcomp, rvcorr
        !           447:   761 continue
        !           448:       ivtnum =  76
        !           449: c
        !           450: c      ****  test  76  ****
        !           451: c
        !           452:       if (iczero) 30760,  760, 30760
        !           453:   760 continue
        !           454:       rvon01 = 524.87
        !           455:       rvon02 =   3.35
        !           456:       rvon03 =    .5679
        !           457:       rvcomp = rvon01 - rvon02 * rvon03
        !           458:       go to 40760
        !           459: 30760 ivdele = ivdele + 1
        !           460:       write (i02,80003) ivtnum
        !           461:       if (iczero) 40760,  771, 40760
        !           462: 40760 if (rvcomp - 522.92) 20760,10760,40761
        !           463: 40761 if (rvcomp - 523.02) 10760,10760,20760
        !           464: 10760 ivpass = ivpass + 1
        !           465:       write (i02,80001) ivtnum
        !           466:       go to  771
        !           467: 20760 ivfail = ivfail + 1
        !           468:       rvcorr = 522.97
        !           469:       write (i02,80005) ivtnum, rvcomp, rvcorr
        !           470:   771 continue
        !           471:       ivtnum =  77
        !           472: c
        !           473: c      ****  test  77  ****
        !           474: c
        !           475:       if (iczero) 30770,  770, 30770
        !           476:   770 continue
        !           477:       rvon01 = 524.87
        !           478:       rvon02 =   3.35
        !           479:       rvon03 =    .5679
        !           480:       rvcomp = rvon01 - rvon02 / rvon03
        !           481:       go to 40770
        !           482: 30770 ivdele = ivdele + 1
        !           483:       write (i02,80003) ivtnum
        !           484:       if (iczero) 40770,  781, 40770
        !           485: 40770 if (rvcomp - 518.92) 20770,10770,40771
        !           486: 40771 if (rvcomp - 519.02) 10770,10770,20770
        !           487: 10770 ivpass = ivpass + 1
        !           488:       write (i02,80001) ivtnum
        !           489:       go to  781
        !           490: 20770 ivfail = ivfail + 1
        !           491:       rvcorr = 518.97
        !           492:       write (i02,80005) ivtnum, rvcomp, rvcorr
        !           493:   781 continue
        !           494:       ivtnum =  78
        !           495: c
        !           496: c      ****  test  78  ****
        !           497: c
        !           498:       if (iczero) 30780,  780, 30780
        !           499:   780 continue
        !           500:       rvon01 = 524.87
        !           501:       rvon02 =   3.35
        !           502:       ivon01 =   7
        !           503:       rvcomp = rvon01 - rvon02 ** ivon01
        !           504:       go to 40780
        !           505: 30780 ivdele = ivdele + 1
        !           506:       write (i02,80003) ivtnum
        !           507:       if (iczero) 40780,  791, 40780
        !           508: 40780 if (rvcomp + 4210.6) 20780,10780,40781
        !           509: 40781 if (rvcomp + 4209.6) 10780,10780,20780
        !           510: 10780 ivpass = ivpass + 1
        !           511:       write (i02,80001) ivtnum
        !           512:       go to  791
        !           513: 20780 ivfail = ivfail + 1
        !           514:       rvcorr = -4210.1
        !           515:       write (i02,80005) ivtnum, rvcomp, rvcorr
        !           516:   791 continue
        !           517: c
        !           518: c     tests 79 through 82 check     rv1 * rv2 <op2> rv3
        !           519: c
        !           520:       ivtnum =  79
        !           521: c
        !           522: c      ****  test  79  ****
        !           523: c
        !           524:       if (iczero) 30790,  790, 30790
        !           525:   790 continue
        !           526:       rvon01 = 524.87
        !           527:       rvon02 =   .5679
        !           528:       rvon03 =   3.35
        !           529:       rvcomp = rvon01 * rvon02 + rvon03
        !           530:       go to 40790
        !           531: 30790 ivdele = ivdele + 1
        !           532:       write (i02,80003) ivtnum
        !           533:       if (iczero) 40790,  801, 40790
        !           534: 40790 if (rvcomp - 301.37) 20790,10790,40791
        !           535: 40791 if (rvcomp - 301.47) 10790,10790,20790
        !           536: 10790 ivpass = ivpass + 1
        !           537:       write (i02,80001) ivtnum
        !           538:       go to  801
        !           539: 20790 ivfail = ivfail + 1
        !           540:       rvcorr = 301.42
        !           541:       write (i02,80005) ivtnum, rvcomp, rvcorr
        !           542:   801 continue
        !           543:       ivtnum =  80
        !           544: c
        !           545: c      ****  test  80  ****
        !           546: c
        !           547:       if (iczero) 30800,  800, 30800
        !           548:   800 continue
        !           549:       rvon01 = 524.87
        !           550:       rvon02 =    .5679
        !           551:       rvon03 =   3.35
        !           552:       rvcomp = rvon01 * rvon02 - rvon03
        !           553:       go to 40800
        !           554: 30800 ivdele = ivdele + 1
        !           555:       write (i02,80003) ivtnum
        !           556:       if (iczero) 40800,  811, 40800
        !           557: 40800 if (rvcomp - 294.67) 20800,10800,40801
        !           558: 40801 if (rvcomp - 294.77) 10800,10800,20800
        !           559: 10800 ivpass = ivpass + 1
        !           560:       write (i02,80001) ivtnum
        !           561:       go to  811
        !           562: 20800 ivfail = ivfail + 1
        !           563:       rvcorr = 294.72
        !           564:       write (i02,80005) ivtnum, rvcomp, rvcorr
        !           565:   811 continue
        !           566:       ivtnum =  81
        !           567: c
        !           568: c      ****  test  81  ****
        !           569: c
        !           570:       if (iczero) 30810,  810, 30810
        !           571:   810 continue
        !           572:       rvon01 = 524.87
        !           573:       rvon02 =    .5679
        !           574:       rvon03 =   3.35
        !           575:       rvcomp = rvon01 * rvon02 / rvon03
        !           576:       go to 40810
        !           577: 30810 ivdele = ivdele + 1
        !           578:       write (i02,80003) ivtnum
        !           579:       if (iczero) 40810,  821, 40810
        !           580: 40810 if (rvcomp - 88.92) 20810,10810,40811
        !           581: 40811 if (rvcomp - 89.02) 10810,10810,20810
        !           582: 10810 ivpass = ivpass + 1
        !           583:       write (i02,80001) ivtnum
        !           584:       go to  821
        !           585: 20810 ivfail = ivfail + 1
        !           586:       rvcorr = 88.977
        !           587:       write (i02,80005) ivtnum, rvcomp, rvcorr
        !           588:   821 continue
        !           589:       ivtnum =  82
        !           590: c
        !           591: c      ****  test  82  ****
        !           592: c
        !           593:       if (iczero) 30820,  820, 30820
        !           594:   820 continue
        !           595:       rvon01 = 524.87
        !           596:       rvon02 =    .5679
        !           597:       ivon01 =   7
        !           598:       rvcomp = rvon01 * rvon02 ** ivon01
        !           599:       go to 40820
        !           600: 30820 ivdele = ivdele + 1
        !           601:       write (i02,80003) ivtnum
        !           602:       if (iczero) 40820,  831, 40820
        !           603: 40820 if (rvcomp -  9.94) 20820,10820,40821
        !           604: 40821 if (rvcomp - 10.04) 10820,10820,20820
        !           605: 10820 ivpass = ivpass + 1
        !           606:       write (i02,80001) ivtnum
        !           607:       go to  831
        !           608: 20820 ivfail = ivfail + 1
        !           609:       rvcorr = 9.999
        !           610:       write (i02,80005) ivtnum, rvcomp, rvcorr
        !           611:   831 continue
        !           612: c
        !           613: c     tests 83 through 86 check     rv1 / rv2 <op2> rv3
        !           614: c
        !           615:       ivtnum =  83
        !           616: c
        !           617: c      ****  test  83  ****
        !           618: c
        !           619:       if (iczero) 30830,  830, 30830
        !           620:   830 continue
        !           621:       rvon01 = 524.87
        !           622:       rvon02 =   3.35
        !           623:       rvon03 =    .5679
        !           624:       rvcomp = rvon01 / rvon02 + rvon03
        !           625:       go to 40830
        !           626: 30830 ivdele = ivdele + 1
        !           627:       write (i02,80003) ivtnum
        !           628:       if (iczero) 40830,  841, 40830
        !           629: 40830 if (rvcomp - 157.19) 20830,10830,40831
        !           630: 40831 if (rvcomp - 157.29) 10830,10830,20830
        !           631: 10830 ivpass = ivpass + 1
        !           632:       write (i02,80001) ivtnum
        !           633:       go to  841
        !           634: 20830 ivfail = ivfail + 1
        !           635:       rvcorr = 157.25
        !           636:       write (i02,80005) ivtnum, rvcomp, rvcorr
        !           637:   841 continue
        !           638:       ivtnum =  84
        !           639: c
        !           640: c      ****  test  84  ****
        !           641: c
        !           642:       if (iczero) 30840,  840, 30840
        !           643:   840 continue
        !           644:       rvon01 = 524.87
        !           645:       rvon02 =   3.35
        !           646:       rvon03 =    .8507
        !           647:       rvcomp = rvon01 / rvon02 - rvon03
        !           648:       go to 40840
        !           649: 30840 ivdele = ivdele + 1
        !           650:       write (i02,80003) ivtnum
        !           651:       if (iczero) 40840,  851, 40840
        !           652: 40840 if (rvcomp - 155.77) 20840,10840,40841
        !           653: 40841 if (rvcomp - 155.87) 10840,10840,20840
        !           654: 10840 ivpass = ivpass + 1
        !           655:       write (i02,80001) ivtnum
        !           656:       go to  851
        !           657: 20840 ivfail = ivfail + 1
        !           658:       rvcorr = 155.83
        !           659:       write (i02,80005) ivtnum, rvcomp, rvcorr
        !           660:   851 continue
        !           661:       ivtnum =  85
        !           662: c
        !           663: c      ****  test  85  ****
        !           664: c
        !           665:       if (iczero) 30850,  850, 30850
        !           666:   850 continue
        !           667:       rvon01 = 524.87
        !           668:       rvon02 =   3.35
        !           669:       rvon03 =    .8507
        !           670:       rvcomp = rvon01 / rvon02 * rvon03
        !           671:       go to 40850
        !           672: 30850 ivdele = ivdele + 1
        !           673:       write (i02,80003) ivtnum
        !           674:       if (iczero) 40850,  861, 40850
        !           675: 40850 if (rvcomp - 132.7) 20850,10850,40851
        !           676: 40851 if (rvcomp - 133.7) 10850,10850,20850
        !           677: 10850 ivpass = ivpass + 1
        !           678:       write (i02,80001) ivtnum
        !           679:       go to  861
        !           680: 20850 ivfail = ivfail + 1
        !           681:       rvcorr = 133.29
        !           682:       write (i02,80005) ivtnum, rvcomp, rvcorr
        !           683:   861 continue
        !           684:       ivtnum =  86
        !           685: c
        !           686: c      ****  test  86  ****
        !           687: c
        !           688:       if (iczero) 30860,  860, 30860
        !           689:   860 continue
        !           690:       rvon01 = 524.87
        !           691:       rvon02 =   3.35
        !           692:       ivon01 =   7
        !           693:       rvcomp = rvon01 / rvon02 ** ivon01
        !           694:       go to 40860
        !           695: 30860 ivdele = ivdele + 1
        !           696:       write (i02,80003) ivtnum
        !           697:       if (iczero) 40860,  871, 40860
        !           698: 40860 if (rvcomp - .106) 20860,10860,40861
        !           699: 40861 if (rvcomp - .116) 10860,10860,20860
        !           700: 10860 ivpass = ivpass + 1
        !           701:       write (i02,80001) ivtnum
        !           702:       go to  871
        !           703: 20860 ivfail = ivfail + 1
        !           704:       rvcorr = .11085
        !           705:       write (i02,80005) ivtnum, rvcomp, rvcorr
        !           706:   871 continue
        !           707: c
        !           708: c     tests 87 through 90 check     rv1 ** iv1 <op2> rv2
        !           709: c
        !           710:       ivtnum =  87
        !           711: c
        !           712: c      ****  test  87  ****
        !           713: c
        !           714:       if (iczero) 30870,  870, 30870
        !           715:   870 continue
        !           716:       rvon01 =   3.35
        !           717:       ivon01 =   7
        !           718:       rvon02 = 524.87
        !           719:       rvcomp = rvon01 ** ivon01 + rvon02
        !           720:       go to 40870
        !           721: 30870 ivdele = ivdele + 1
        !           722:       write (i02,80003) ivtnum
        !           723:       if (iczero) 40870,  881, 40870
        !           724: 40870 if (rvcomp - 5210.) 20870,10870,40871
        !           725: 40871 if (rvcomp - 5310.) 10870,10870,20870
        !           726: 10870 ivpass = ivpass + 1
        !           727:       write (i02,80001) ivtnum
        !           728:       go to  881
        !           729: 20870 ivfail = ivfail + 1
        !           730:       rvcorr = 5259.8
        !           731:       write (i02,80005) ivtnum, rvcomp, rvcorr
        !           732:   881 continue
        !           733:       ivtnum =  88
        !           734: c
        !           735: c      ****  test  88  ****
        !           736: c
        !           737:       if (iczero) 30880,  880, 30880
        !           738:   880 continue
        !           739:       rvon01 =   3.35
        !           740:       ivon01 =   7
        !           741:       rvon02 = 524.87
        !           742:       rvcomp = rvon01 ** ivon01 - rvon02
        !           743:       go to 40880
        !           744: 30880 ivdele = ivdele + 1
        !           745:       write (i02,80003) ivtnum
        !           746:       if (iczero) 40880,  891, 40880
        !           747: 40880 if (rvcomp - 4160.) 20880,10880,40881
        !           748: 40881 if (rvcomp - 4260.) 10880,10880,20880
        !           749: 10880 ivpass = ivpass + 1
        !           750:       write (i02,80001) ivtnum
        !           751:       go to  891
        !           752: 20880 ivfail = ivfail + 1
        !           753:       rvcorr = 4210.1
        !           754:       write (i02,80005) ivtnum, rvcomp, rvcorr
        !           755:   891 continue
        !           756:       ivtnum =  89
        !           757: c
        !           758: c      ****  test  89  ****
        !           759: c
        !           760:       if (iczero) 30890,  890, 30890
        !           761:   890 continue
        !           762:       rvon01 =   3.35
        !           763:       ivon01 =   7
        !           764:       rvon02 = 524.87
        !           765:       rvcomp = rvon01 ** ivon01 * rvon02
        !           766:       go to 40890
        !           767: 30890 ivdele = ivdele + 1
        !           768:       write (i02,80003) ivtnum
        !           769:       if (iczero) 40890,  901, 40890
        !           770: 40890 if (rvcomp - 2.43e6) 20890,10890,40891
        !           771: 40891 if (rvcomp - 2.53e6) 10890,10890,20890
        !           772: 10890 ivpass = ivpass + 1
        !           773:       write (i02,80001) ivtnum
        !           774:       go to  901
        !           775: 20890 ivfail = ivfail + 1
        !           776:       rvcorr = 2.4852e6
        !           777:       write (i02,80005) ivtnum, rvcomp, rvcorr
        !           778:   901 continue
        !           779:       ivtnum =  90
        !           780: c
        !           781: c      ****  test  90  ****
        !           782: c
        !           783:       if (iczero) 30900,  900, 30900
        !           784:   900 continue
        !           785:       rvon01 =   3.35
        !           786:       ivon01 =   7
        !           787:       rvon02 = 524.87
        !           788:       rvcomp = rvon01 ** ivon01 / rvon02
        !           789:       go to 40900
        !           790: 30900 ivdele = ivdele + 1
        !           791:       write (i02,80003) ivtnum
        !           792:       if (iczero) 40900,  911, 40900
        !           793: 40900 if (rvcomp - 8.97) 20900,10900,40901
        !           794: 40901 if (rvcomp - 9.07) 10900,10900,20900
        !           795: 10900 ivpass = ivpass + 1
        !           796:       write (i02,80001) ivtnum
        !           797:       go to  911
        !           798: 20900 ivfail = ivfail + 1
        !           799:       rvcorr = 9.0211
        !           800:       write (i02,80005) ivtnum, rvcomp, rvcorr
        !           801:   911 continue
        !           802: c
        !           803: c     tests 91 and 92 check all arithmetic operators used together
        !           804: c
        !           805:       ivtnum =  91
        !           806: c
        !           807: c      ****  test  91  ****
        !           808: c
        !           809:       if (iczero) 30910,  910, 30910
        !           810:   910 continue
        !           811:       rvon01 = 780.56
        !           812:       rvon02 =    .803
        !           813:       rvon03 =   3.35
        !           814:       ivon01 =   7
        !           815:       rvon04 =  20.07
        !           816:       rvon05 = 511.9
        !           817:       rvcomp = - rvon01 + rvon02 * rvon03 ** ivon01 / rvon04 - rvon05
        !           818:       go to 40910
        !           819: 30910 ivdele = ivdele + 1
        !           820:       write (i02,80003) ivtnum
        !           821:       if (iczero) 40910,  921, 40910
        !           822: 40910 if (rvcomp + 1113.0) 20910,10910,40911
        !           823: 40911 if (rvcomp + 1093.0) 10910,10910,20910
        !           824: 10910 ivpass = ivpass + 1
        !           825:       write (i02,80001) ivtnum
        !           826:       go to  921
        !           827: 20910 ivfail = ivfail + 1
        !           828:       rvcorr = -1103.0
        !           829:       write (i02,80005) ivtnum, rvcomp, rvcorr
        !           830:   921 continue
        !           831:       ivtnum =  92
        !           832: c
        !           833: c      ****  test  92  ****
        !           834: c
        !           835:       if (iczero) 30920,  920, 30920
        !           836:   920 continue
        !           837:       rvon01 = 780.56
        !           838:       rvon02 =    .803
        !           839:       rvon03 =   3.35
        !           840:       ivon01 =   7
        !           841:       rvon04 =  20.07
        !           842:       rvon05 = 511.9
        !           843:       rvcomp = (-rvon01) + (rvon02 * rvon03) ** ivon01 / (rvon04-rvon05)
        !           844:       go to 40920
        !           845: 30920 ivdele = ivdele + 1
        !           846:       write (i02,80003) ivtnum
        !           847:       if (iczero) 40920,  931, 40920
        !           848: 40920 if (rvcomp + 788.) 20920,10920,40921
        !           849: 40921 if (rvcomp + 777.) 10920,10920,20920
        !           850: 10920 ivpass = ivpass + 1
        !           851:       write (i02,80001) ivtnum
        !           852:       go to  931
        !           853: 20920 ivfail = ivfail + 1
        !           854:       rvcorr = -782.63
        !           855:       write (i02,80005) ivtnum, rvcomp, rvcorr
        !           856:   931 continue
        !           857: c
        !           858: c     write page footings and run summaries
        !           859: 99999 continue
        !           860:       write (i02,90002)
        !           861:       write (i02,90006)
        !           862:       write (i02,90002)
        !           863:       write (i02,90002)
        !           864:       write (i02,90007)
        !           865:       write (i02,90002)
        !           866:       write (i02,90008)  ivfail
        !           867:       write (i02,90009) ivpass
        !           868:       write (i02,90010) ivdele
        !           869: c
        !           870: c
        !           871: c     terminate routine execution
        !           872:       stop
        !           873: c
        !           874: c     format statements for page headers
        !           875: 90000 format (1h1)
        !           876: 90002 format (1h )
        !           877: 90001 format (1h ,10x,34hfortran compiler validation system)
        !           878: 90003 format (1h ,21x,11hversion 1.0)
        !           879: 90004 format (1h ,10x,38hfor official use only - copyright 1978)
        !           880: 90005 format (1h ,5x,4htest,5x,9hpass/fail, 5x,8hcomputed,8x,7hcorrect)
        !           881: 90006 format (1h ,5x,46h----------------------------------------------)
        !           882: 90011 format (1h ,18x,17hsubset level test)
        !           883: c
        !           884: c     format statements for run summaries
        !           885: 90008 format (1h ,15x,i5,19h errors encountered)
        !           886: 90009 format (1h ,15x,i5,13h tests passed)
        !           887: 90010 format (1h ,15x,i5,14h tests deleted)
        !           888: c
        !           889: c     format statements for test results
        !           890: 80001 format (1h ,4x,i5,7x,4hpass)
        !           891: 80002 format (1h ,4x,i5,7x,4hfail)
        !           892: 80003 format (1h ,4x,i5,7x,7hdeleted)
        !           893: 80004 format (1h ,4x,i5,7x,4hfail,10x,i6,9x,i6)
        !           894: 80005 format (1h ,4x,i5,7x,4hfail,4x,e12.5,3x,e12.5)
        !           895: c
        !           896: 90007 format (1h ,20x,20hend of program fm062)
        !           897:       end

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.