C***** PART3 *****************************************************H0000700 C***** H0000705 C***** ANSI FORTRAN (X3.9-1966) TEST PROGRAMS H0000710 C***** H0000715 C***** PREPARED BY THE NATIONAL BUREAU OF STANDARDS VERSION 3 H0000720 C***** H0000725 C***** JUNE 1974 H0000730 C***** H0000735 C***** PART 3 OF 14 PARTS H0000740 C***** H0000745 C***** SEGMENTS INCLUDED H0000750 C***** H0000755 C***** LASGN - 016 LOGICAL ASSIGNMENT STATEMENTS H0000760 C***** H0000765 C***** INTRL - 017 ARITHMETIC ASSIGNMENT STATEMENTS H0000770 C***** H0000775 C***** UGOTO - 020 UNCONDITIONAL GO TO STATEMENTS H0000780 C***** H0000785 C***** AGOTO - 021 GO TO ASSIGNMENT STATEMENTS H0000790 C***** H0000795 C***** CGOTO - 022 COMPUTED GO TO STATEMENTS H0000800 C***** H0000805 C***** ARBAD - 030 BASIC ADDITION H0000810 C***** H0000815 C***** ARFAD - 031 DOUBLE PRECISION ADDITION H0000820 C***** H0000825 C***** ARBSB - 032 BASIC SUBTRACTION H0000830 C***** H0000835 C***** ARFSB - 033 DOUBLE PRECISION SUBTRACTION H0000840 C***** H0000845 C***** ARBAS - 034 BASIC ADDITION AND SUBTRACTION H0000850 C***** H0000855 C***** H0010700 C***** THE FOLLOWING SPECIFICATIONS ARE TO BE USED ONLY WHEN H0010705 C***** SEGMENTS 016, 017, 020, 021, 022, 030, 031, 032, 033, 034, H0010710 C***** ARE RUN AS ONE MAIN PROGRAM. H0010715 C***** H0010720 DIMENSION A1S(5), A2S(2,2), A3S(3,3,3), IAC1I(5), IAC2I(2,7) H0010725 1 , AC1S(25) H0010730 INTEGER MCA3I(2,3,3), GTVI H0010735 DOUBLE PRECISION AC1D(10), BC2D(7,4), CC3D(7,2,2), DPAVD, ACVD, H0010740 1 BCVD, FFCVD, GGCVD, HHCVD, EP1D(43), CCVD, DCVD, A2D(2,2) H0010745 2 , A3D(2,2,2), DPCVD H0010750 LOGICAL MCAVB, MCBVB, MCCVB, MCDVB, MCEVB, MCFVB, MCGVB, MCIVB H0010755 1 , MCJVB, MCKVB, MCLVB, MCMVB, MCNVB, MCA1B(7),MCHVB H0010760 LOGICAL A1B(2), A2B(2,2), A3B(2,2,2), AVB, BVB, CVB H0010765 C***** H0010770 C***** END OF SPECIFICATIONS FOR SEGMENTS 016, 017, 020, 021, 022, H0010775 C***** 030, 031, 032, 033, 034 H0010780 C***** H0010785 C***********************************************************************H0160010 C***** H0160020 C***** LASGN - (016) H0160030 C***** H0160040 C***********************************************************************H0160050 C***** GENERAL PURPOSE ASA REFH0160060 C***** TO TEST LOGICAL ASSIGNMENTS 7.1.1.2H0160070 C***** CONSTANTS USED IN THIS SEGMENT H0160080 C***** S P E C I F I C A T I O N S SEGMENT 016 H0160090 C***** H0160100 C***** WHEN EXECUTING ONLY SEGMENT 016, REMOVE THE PRECEDING H0010790 C***** SPECIFICATIONS. THE FOLLOWING SPECIFICATIONS WHICH APPEAR AS H0010795 C***** COMMENTS MUST HAVE THE C= IN COL 1 AND 2 REMOVED. H0010800 C***** H0010805 C= DIMENSION IAC1I(5) H0010810 C= LOGICAL MCAVB,MCBVB,MCCVB,MCDVB,MCEVB,MCFVB,MCGVB,MCHVB,MCIVB, H0010815 C= 1 MCJVB, MCKVB, MCLVB, MCMVB, MCNVB ,MCA1B(7) H0010820 C= LOGICAL A1B(2),A2B(2,2),A3B(2,2,2),AVB,BVB,CVB H0010825 C***** H0010830 C***** I N P U T - O U T P U T T A P E ASSIGNMENT STATEMENTS H0160110 IRVI = 5 H0070700 NUVI = 6 H0070705 C***** IDENTIFY THE SOURCE OF THE TEST PROGRAMS H0070710 WRITE(NUVI,0071) H0070715 0071 FORMAT (41H1 F O R T R A N T E S T P R O G R A M S// H0070720 1 42H PREPARED BY NATIONAL BUREAU OF STANDARDS// H0070725 3 37H FOR USE ON LARGE FORTRAN PROCESSORS // H0070730 4 42H IN ACCORDANCE WITH ASA FORTRAN X3.9-1966// H0070735 5 23H VERSION 3 PART 3 ///) H0070740 C***** 3 OF 6 INPUT CARDS IDENTIFY THE USERS SYSTEM AND COMPILER H0070745 C PREPARED BY USER H0070750 C READ, NO LIST H0070755 C PREPARED BY USER H0070760 C READ, NO LIST H0070765 C PREPARED BY USER H0070770 C READ, NO LIST H0070775 C READ(IRVI,0070) H0070780 C READ(IRVI,0072) H0070785 C READ(IRVI,0073) H0070790 0070 FORMAT(40H BASED ON ASA FORTRAN X3.9-1966 /) H0070795 0072 FORMAT(40H TEST PROGRAMS /) H0070800 0073 FORMAT(40H FORTRAN COMPILER /) H0070805 WRITE(NUVI,0070) H0070810 WRITE(NUVI,0072) H0070815 WRITE(NUVI,0073) H0070820 C***** H0160120 IAC1I(1) = 25 H0160130 IAC1I(2) = 10 H0160140 IAC1I(3) = 15 H0160150 IAC1I(4) = 25 H0160160 C***** WRITE HEADER FOR THIS SEGMENT H0160170 WRITE (NUVI,160) H0160180 160 FORMAT (1H1,28H LASGN - (016) ASSIGNMENT OF/ 16X,17HLOGIGAL VARIABH0160190 ALES/21H ASA REFS. - 7.1.1.2//9H RESULTS) H0160200 C***** TEST THE ASSIGNMENT OF RELATIONAL EXPRESSIONS 6.2 H0160210 C***** TO LOGICAL VARIABLES AND ARRAYS H0160220 MCAVB = IAC1I(2) .LT. IAC1I(3) H0160230 MCBVB = IAC1I(3) .LT. IAC1I(2) H0160240 MCCVB = IAC1I(1) .EQ. IAC1I(4) H0160250 MCDVB = IAC1I(2) .EQ. IAC1I(1) H0160260 MCEVB = IAC1I(1) .LE. IAC1I(4) H0160270 MCFVB = IAC1I(2) .LE. IAC1I(1) H0160280 MCGVB = IAC1I(1) .LE. IAC1I(2) H0160290 MCHVB = IAC1I(1) .EQ. 25 H0160300 MCIVB = IAC1I(2) .EQ. IAC1I(4) H0160310 MCA1B(1) = IAC1I(2) .NE. IAC1I(3) H0160320 MCA1B(2) = IAC1I(1) .NE. IAC1I(4) H0160330 MCA1B(3) = IAC1I(1) .GT. IAC1I(2) H0160340 MCA1B(4) = IAC1I(2) .GT. IAC1I(1) H0160350 MCA1B(5) = IAC1I(1) .GE. IAC1I(2) H0160360 A1B(1) = IAC1I(1) .GE. IAC1I(4) H0160370 A1B(2) = IAC1I(2) .GE. IAC1I(1) H0160380 C***** TEST THE ASSIGNMENT OF A MIXTURE OF RELATIONAL AND H0160390 C***** LOGICAL EXPRESSIONS TO LOGICAL VARIABLES AND ARRAYS 6.3 H0160400 A2B(1,1) = .TRUE. H0160410 A2B(1,2) = .FALSE. H0160420 AVB = A2B(1,2) .AND. .NOT. A2B(1,1) H0160430 BVB = A2B(1,2) .OR. .NOT. A2B(1,1) H0160440 CVB = IAC1I(2).LT.IAC1I(3).AND.(A2B(1,1).OR..NOT.A2B(1,2)).OR.A2B(H0160450 A1,1).AND..NOT.A2B(1,2).AND.IAC1I(1).GT.IAC1I(4) H0160460 A2B(2,1) = .NOT. (CVB.AND.MCIVB).AND. IAC1I(2) .NE. IAC1I(3) .AND.H0160470 1 IAC1I(2) .LT. IAC1I(3) .AND. IAC1I(1) .EQ. IAC1I(4) H0160480 A2B(2,2) = A2B(1,2) .AND. IAC1I(1) .EQ. IAC1I(4) H0160490 A3B(1,1,1) = IAC1I(2) .LT. IAC1I(3) .AND. A2B(1,2) H0160500 A3B(1,1,2) = IAC1I(2) .GT. IAC1I(3) .AND. A2B(1,1) H0160510 A3B(1,2,1) = .NOT. MCA1B(5) .AND. H0160520 1 A2B(1,1) .OR. IAC1I(1) .EQ. IAC1I(4) H0160530 A3B(1,2,2) = .NOT. (A2B(1,2) .AND. IAC1I(1) .EQ. IAC1I(4)).OR. H0160540 1 A2B(1,1) .OR. A2B(1,2) H0160550 A3B(2,1,1) = A2B(1,2) .OR. IAC1I(1) .EQ. IAC1I(4) H0160560 A3B(2,2,1) = .NOT.MCCVB.AND.MCHVB .OR. IAC1I(1) .NE. IAC1I(4) .OR.H0160570 1 IAC1I(1) .LT. IAC1I(4) .OR. A2B(1,2) H0160580 A3B(2,1,2) = .NOT. A3B(1,1,2) .AND. H0160590 1 ( A2B(1,1) .AND. .NOT. A2B(1,2) ) H0160600 A3B(2,2,2) = IAC1I(1) .LT. IAC1I(4) .OR. .NOT. A2B(1,2) H0160610 MCJVB=IAC1I(2).GT.IAC1I(3).AND.(A2B(1,1).OR..NOT.A2B(1,2)).OR.A2B(H0160620 A1,2).AND..NOT.A2B(1,2).AND.IAC1I(1).GT.IAC1I(4) H0160630 MCKVB = IAC1I(2).LT.IAC1I(3).AND.A2B(1,1).OR.A2B(1,2) H0160640 MCLVB = (IAC1I(2) .LT. IAC1I(3) .AND. A2B(1,2)) .OR. A2B(1,1) H0160650 MCMVB = A2B(1,2) .OR. IAC1I(2) .LT. IAC1I(3) .AND. A2B(1,1) H0160660 MCNVB = A2B(1,2) .OR. (IAC1I(2) .LT. IAC1I(3) .AND. A2B(1,1)) H0160670 C***** WRITE VARIABLES THAT ARE TRUE H0160680 WRITE (NUVI,161) MCAVB, MCCVB, MCEVB, MCFVB, MCHVB, MCA1B(1), H0160690 A MCA1B(3), MCA1B(5), A1B(1), A2B(1,1), A2B(2,1), H0160700 B A3B(1,2,1), A3B(1,2,2), A3B(2,1,1), A3B(2,1,2), H0160710 C A3B(2,2,2), CVB, MCKVB, MCLVB, MCMVB, MCNVB H0160720 161 FORMAT (//32H ALL ANSWERS BELOW MUST BE TRUE//21(L16/)//) H0160730 C***** WRITE VARIABLES THAT ARE FALSE H0160740 WRITE (NUVI,162) MCBVB, MCDVB, MCGVB, MCIVB, MCA1B(2), MCA1B(4), H0160750 A A1B(2), A2B(1,2), A2B(2,2),A3B(1,1,1),A3B(1,1,2),H0160760 B A3B(2,2,1), AVB, BVB, MCJVB H0160770 162 FORMAT (33H ALL ANSWERS BELOW MUST BE FALSE//15(L16/)) H0160780 C***** END OF SEGMENT 016 H0160790 C***** H0160800 C***** WHEN EXECUTING ONLY SEGMENT 016, THE STOP AND END H0160810 C***** CARDS, WHICH APPEAR AS COMMENTS, MUST HAVE THE C= H0160820 C***** IN COL 1 AND 2 REMOVED. H0160830 C***** H0160840 C= STOP H0160850 C= END H0160860 C***********************************************************************H0170010 C***** H0170020 C***** INTRL - (017) H0170030 C***** H0170040 C***********************************************************************H0170050 C***** GENERAL PURPOSE ASA REF H0170060 C***** TO TEST ARITHMETIC ASSIGNMENT STATEMENTS WHERE TABLE 1,PG13H0170070 C***** REAL CONSTANTS AND VARIABLES, INTEGER VARIABLES (LINES 2,3, H0170080 C***** AND ARRAY ELEMENTS, AND DOUBLE PRECISION CON- 5,6, H0170090 C***** STANTS AND VARIABLES ARE ASSIGNED TO EACH OTHER 9,10)H0170100 C***** H0170110 C***** S P E C I F I C A T I O N S SEGMENT 017 H0170120 C***** H0010835 C***** WHEN EXECUTING ONLY SEGMENT 017, THE SPECIFICATION STATEMENTS H0010840 C***** WHICH APPEAR AS COMMENTS MUST HAVE THE C= IN H0010845 C***** COL 1 AND 2 REMOVED H0010850 C= DIMENSION A1S(5),A2S(2,2),A3S(3,3,3),IAC1I(5),IAC2I(2,7) H0010855 C= INTEGER MCA3I(2,3,3) H0010860 C= DOUBLE PRECISION AC1D(10),BC2D(7,4),CC3D(7,2,2),DPAVD H0010865 C***** H0010870 C***** O U T P U T T A P E ASSIGNMENT STATEMENT. NO INPUT TAPE. H0170130 C***** H0070825 C***** WHEN EXECUTING ONLY SEGMENT 017, THE STATEMENT NUVI = 6 H0070830 C***** MUST HAVE THE C= IN COL 1 AND 2 REMOVED. H0070835 C***** H0070840 C= NUVI = 6 H0070845 C***** H0070850 WRITE (NUVI,170) H0170140 170 FORMAT(1H1,1X,39HINTRL - (017) ASSIGN INTEGER, REAL, AND/ H0170150 1 16X,23HDOUBLE PRECISION VALUES/2X,29HASA REFS. - 7.1.1.1. 5.1.1.H0170160 22/2X,7HRESULTS/) H0170170 C***** TEST ASSIGNMENT OF INTEGER VARIABLES TABLE 1/LN 5,9H0170180 JACVI = 1 H0170190 IAC1I(3) = +111 H0170200 IAC2I(2,3) = -1111 H0170210 MCA3I(2,1,2) = -11111 H0170220 ACVS = IAC1I(3) H0170230 A1S(2) = IAC2I(2,3) H0170240 A2S(2,1) = MCA3I(2,1,2) H0170250 A3S(2,1,2) = JACVI H0170260 DPAVD = MCA3I(2,1,2) H0170270 AC1D(7) = JACVI H0170280 BC2D(7,4) = IAC1I(3) H0170290 CC3D(5,1,2) = IAC2I(2,3) H0170300 WRITE (NUVI,171) H0170310 171 FORMAT (/2X,24HASSIGN INTEGER VARIABLES//3X, 21H1 - TO H0170320 1REAL VARIABLES) H0170330 WRITE (NUVI,172)ACVS,A1S(2),A2S(2,1),A3S(2,1,2),DPAVD,AC1D(7),BC2DH0170340 1(7,4),CC3D(5,1,2) H0170350 172 FORMAT(/8X,8H 111.0 */F14.1// H0170360 1 7X,9H-1111.0 */F14.1// H0170370 2 4X,12H -11111.0 */F14.1// H0170380 3 11X,5H1.0 */F14.1//3X,33H2 - TO DOUBLE PRECISION VARIABLESH0170390 4 //4X,16H -0.11111D 05 */D18.5// H0170400 5 11X,9H0.1D 01 */D18.1// H0170410 6 9X,11H0.111D 03 */D18.3// H0170420 7 7X,13H-0.1111D 04 */D18.4/) H0170430 C***** TEST ASSIGNMENT OF INTEGER CONSTANTS H0170440 ACVS = -2222 H0170450 A1S(2) = +222 H0170460 A2S(2,1) = -22222 H0170470 A3S(2,1,2) = 2 H0170480 DPAVD = 2 H0170490 AC1D(7) = -22222 H0170500 BC2D(7,4) = -2222 H0170510 CC3D(5,1,2) = +222 H0170520 WRITE (NUVI,173) H0170530 173 FORMAT (/2X,24HASSIGN INTEGER CONSTANTS//3X, 21H1 - TO RH0170540 1EAL VARIABLES) H0170550 WRITE (NUVI,174)ACVS,A1S(2),A2S(2,1),A3S(2,1,2),DPAVD,AC1D(7),BC2DH0170560 1(7,4),CC3D(5,1,2) H0170570 174 FORMAT(/6X,9H-2222.0 */F13.1// H0170580 1 8X,7H222.0 */F13.1// H0170590 2 3X,12H -22222.0 */F13.1// H0170600 3 10X,5H2.0 */F13.1/ 35H1 2 - TO DOUBLE PRECISION VARIABLES/H0170610 4 /12X,9H0.2D 01 */D19.1// H0170620 5 5X,16H -0.22222D 05 */D19.5// H0170630 6 8X,13H-0.2222D 04 */D19.4// H0170640 7 10X,11H0.222D 03 */D19.3/) H0170650 C***** TEST ASSIGNMENT OF BASIC REAL CONSTANTS TABLE 1/LN 2,10H0170660 JACVI = 3.3 H0170670 IAC1I(3) = +333.3E-2 H0170680 IAC2I(2,3) = .3333E+1 H0170690 MCA3I(2,1,2) = -.0033333E3 H0170700 DPAVD = +3.3333 H0170710 AC1D(7) = .3333333E1 H0170720 BC2D(7,4) = -333.3333E-2 H0170730 CC3D(5,1,2) = -.0333333E+2 H0170740 WRITE (NUVI,7173) H0170750 7173 FORMAT (/2X,27HASSIGN BASIC REAL CONSTANTS//3X, 24H1 - H0170760 1TO INTEGER VARIABLES) H0170770 WRITE(NUVI,7172)JACVI,IAC1I(3),IAC2I(2,3),MCA3I(2,1,2),DPAVD,AC1D(H0170780 17),BC2D(7,4),CC3D(5,1,2) H0170790 7172 FORMAT(/9X,3H3 */3(I10/)/8X,4H-3 */I10//3X,33H2 - TO DOUBLE PRECISH0170800 1ION VARIABLES// H0170810 2 8X,13H0.33333D 01 */D19.5// H0170820 3 6X,15H0.3333333D 01 */D19.7// H0170830 4 5X,16H-0.3333333D 01 */D19.7// H0170840 5 6X,15H-0.333333D 01 */D19.6/) H0170850 C***** TEST ASSIGNMENT OF REAL VARIABLES H0170860 ACVS = +.0044444E4 H0170870 A1S(2) = -4444.E-2 H0170880 A2S(2,1) = -44.4 H0170890 A3S(2,1,2) = 4.4444E+1 H0170900 JACVI = A2S(2,1) H0170910 IAC1I(3) = A1S(2) H0170920 IAC2I(2,3) = A3S(2,1,2) H0170930 MCA3I(2,1,2) = ACVS H0170940 DPAVD = A2S(2,1) H0170950 AC1D(7) = A1S(2) H0170960 BC2D(7,4) = A3S(2,1,2) H0170970 CC3D(5,1,2) = ACVS H0170980 WRITE (NUVI,175) H0170990 175 FORMAT (/23H ASSIGN REAL VARIABLES// 27H 1 - TO INTEGH0171000 1ER VARIABLES) H0171010 WRITE (NUVI,176)JACVI,IAC1I(3),IAC2I(2,3),MCA3I(2,1,2),DPAVD,AC1D(H0171020 17),BC2D(7,4),CC3D(5,1,2) H0171030 176 FORMAT( /7X,5H-44 */2(I10/)/8X,4H44 */2(I10/), 35H1 2 - TO DOUBLH0171040 1E PRECISION VARIABLES// H0171050 2 6X,12H-0.444D 02 */D16.3// H0171060 3 5X,13H-0.4444D 02 */D16.4// H0171070 4 5X,13H0.44444D 02 */D16.5// H0171080 5 5X,13H0.44444D 02 */D16.5/) H0171090 C***** TEST ASSIGNMENT OF D.P. VARIABLES TABLE 1/LN 3,6H0171100 DPAVD=5555.55 H0171110 AC1D(7) = +55555555555555.D-13 H0171120 BC2D(7,4) = -.00000555555555D6 H0171130 CC3D(5,1,2) = -.05555555555555D+2 H0171140 JACVI = DPAVD H0171150 IAC1I(3) = AC1D(7) H0171160 IAC2I(2,3) = BC2D(7,4) H0171170 MCA3I(2,1,2) = CC3D(5,1,2) H0171180 ACVS = CC3D(5,1,2) H0171190 A1S(2) = BC2D(7,4) H0171200 A2S(2,1) = AC1D(7) H0171210 A3S(2,1,2) = DPAVD H0171220 WRITE (NUVI,177) H0171230 177 FORMAT (/2X,33HASSIGN DOUBLE PRECISION VARIABLES/ H0171240 1/3X,24H1 - TO INTEGER VARIABLES) H0171250 WRITE (NUVI,178)JACVI,IAC1I(3),IAC2I(2,3),MCA3I(2,1,2),ACVS,A1S(2)H0171260 1,A2S(2,1),A3S(2,1,2) H0171270 178 FORMAT(/3X,9H 5555 */I10//9X,3H5 */I10//8X,4H-5 */2(I10/)/3X,21HH0171280 12 - TO REAL VARIABLES// H0171290 2 3X,16H-0.5555556E 01 */E17.7// H0171300 3 3X,16H-0.5555556E 01 */E17.7// H0171310 4 3X,16H 0.5555556E 01 */E17.7// H0171320 5 3X,16H 0.555555E 04 */E17.6/) H0171330 C***** TEST ASSIGNMENT OF DOUBLE PRECISION CONSTANTS H0171340 JACVI = 66666.D-4 H0171350 IAC1I(3) = -.00000066666666D7 H0171360 IAC2I(2,3) = -.06666666666666D+2 H0171370 MCA3I(2,1,2)=66666.666666666D-1 H0171380 ACVS = 66666666666666.D0 H0171390 A1S(2) = +66666.D-4 H0171400 A2S(2,1) = -.00000006666666D8 H0171410 A3S(2,1,2) = -.06666666666666D+2 H0171420 WRITE (NUVI,179) H0171430 179 FORMAT ( 35H1 ASSIGN DOUBLE PRECISION CONSTANTS/ H0171440 1/3X,24H1 - TO INTEGER VARIABLES) H0171450 WRITE(NUVI,7170)JACVI,IAC1I(3),IAC2I(2,3),MCA3I(2,1,2),ACVS,A1S(2)H0171460 1,A2S(2,1),A3S(2,1,2) H0171470 7170 FORMAT( / 9X,3H6 */I10//8X,4H-6 */2(I10/)/3X,9H 6666 */I10// H0171480 1 3X,21H2 - TO REAL VARIABLES// H0171490 2 3X,16H 0.6666667E 14 */E17.7// H0171500 3 3X,16H 0.66666E 01 */E17.5// H0171510 4 3X,16H-0.6666666E 01 */E17.7// H0171520 5 3X,16H-0.6666667E 01 */E17.7/) H0171530 WRITE (NUVI,7171) H0171540 7171 FORMAT(//34H ALL TEST OUTPUT SHOULD BE CHECKED/ H0171550 1 34H AGAINST THE ASTERISKED (*) FIGURE/ H0171560 2 18H WHICH PRECEDES IT) H0171570 C***** END OF TEST SEGMENT 017 H0171580 C***** H0171590 C***** WHEN EXECUTING ONLY SEGMENT 017, THE STOP AND END H0171600 C***** CARDS WHICH APPEAR AS COMMENTS MUST HAVE THE C= H0171610 C***** IN COL 1 AND 2 REMOVED. H0171620 C***** H0171630 C= STOP H0171640 C= END H0171650 C***********************************************************************H0200010 C***** H0200020 C***** UGOTO - (020) H0200030 C***** H0200040 C***********************************************************************H0200050 C***** GENERAL PURPOSE ASA REF H0200060 C***** TO TEST UNCONDITIONAL GO TO STATEMENTS 7.1.2.1.1H0200070 C***** RESTRICTION OBSERVED H0200080 C***** GO TO STATEMENTS CAUSE BRANCHES ONLY TO 7.1.2 /54H0200090 C***** EXECUTABLE STATEMENTS H0200100 C***** GENERAL COMMENTS H0200110 C***** GO TO STATEMENTS ALSO TESTED IN SEGMENT 193 H0200120 C***** H0200130 C***** O U T P U T T A P E ASSIGNMENT STATEMENT. NO INPUT TAPE. H0200140 C***** H0070855 C***** WHEN EXECUTING ONLY SEGMENT 020, THE STATEMENT NUVI = 6 H0070860 C***** MUST HAVE THE C= IN COL 1 AND 2 REMOVED. H0070865 C***** H0070870 C= NUVI = 6 H0070875 C***** H0070880 WRITE (NUVI,200) H0200150 200 FORMAT (1H1,1X,33HUGOTO - (020) UNCONDITIONAL GO TO/16X, H0200160 19HSTATEMENT//2X, H0200170 2 21HASA REFS. - 7.1.2.1.1//2X,7HRESULTS) H0200180 C***** HEADER FOR SEGMENT 020 WRITTEN H0200190 C***** TEST BRANCH FORWARD H0200200 GO TO 201 H0200210 203 MRRVI = 3 H0200220 WRITE (NUVI,7200) MRRVI H0200230 7200 FORMAT (/4X,I1) H0200240 GO TO 204 H0200250 207 MRRVI = 7 H0200260 WRITE (NUVI,7200) MRRVI H0200270 GO TO 208 H0200280 202 MRRVI = 2 H0200290 WRITE (NUVI,7200) MRRVI H0200300 C***** TEST BRANCH BACKWARD H0200310 GO TO 203 H0200320 201 MRRVI = 1 H0200330 WRITE (NUVI,7200) MRRVI H0200340 GO TO 202 H0200350 208 MRRVI = 8 H0200360 WRITE (NUVI,7200) MRRVI H0200370 GO TO 209 H0200380 206 MRRVI = 6 H0200390 WRITE (NUVI,7200) MRRVI H0200400 GO TO 207 H0200410 204 MRRVI = 4 H0200420 WRITE (NUVI,7200) MRRVI H0200430 C***** TEST BRANCH TO STATEMENT IMMEDIATELY AFTER H0200440 C***** UNCONDITIONAL GO TO H0200450 GO TO 205 H0200460 205 MRRVI = 5 H0200470 WRITE (NUVI,7200) MRRVI H0200480 GO TO 206 H0200490 209 WRITE (NUVI,7201) H0200500 7201 FORMAT (//2X,35HTHIS TEST IS SUCCESSFUL ONLY IF THE/ H0200510 12X,37HNUMBERS LISTED ABOVE ARE SEQUENTIALLY/ H0200520 22X,20HIN ORDER FROM 1 TO 8) H0200530 C***** END OF TEST SEGMENT 020 H0200540 C***** H0200550 C***** WHEN EXECUTING ONLY SEGMENT 020, THE STOP AND END H0200560 C***** CARDS, WHICH APPEAR AS COMMENTS, MUST HAVE THE C= H0200570 C***** IN COL 1 AND 2 REMOVED. H0200580 C= STOP H0200590 C= END H0200600 C***********************************************************************H0210010 C***** H0210020 C***** AGOTO - (021) H0210030 C***** H0210040 C***********************************************************************H0210050 C***** GENERAL PURPOSE ASA REF H0210060 C***** TO TEST GO TO ASSIGNMENT STATEMENTS 7.1.1.3 H0210070 C***** AND ASSIGNED GO TO STATEMENTS 7.1.2.1.2H0210080 C***** RESTRICTIONS OBSERVED H0210090 C***** INTEGER VARIABLE USED IN ASSIGN STATEMENTS 7.1.1.3 /06H0210100 C***** IS NEVER REFERENCED ELSEWHERE IN THIS SEGMENT 10.2.3 /12H0210110 C***** ASSIGNED GO TO STATEMENTS CAUSE BRANCHES ONLY 7.1.1.3 /03H0210120 C***** TO EXECUTABLE STATEMENTS 7.1.2 /54H0210130 C***** INTEGER VARIABLE ALWAYS CONTAINS STATEMENT 7.1.2.1.2/20H0210140 C***** LABEL FROM THE ASSIGNED GO TO LIST H0210150 C***** GENERAL COMMENTS H0210160 C***** IGVI AND KGVI ARE IMPLICITLY DEFINED 5.3 /07H0210170 C***** GTVI IS EXPLICITLY DEFINED 7.2.1.6 /55H0210180 C***** ASSIGN AND ASSIGNED GO TO ALSO TESTED IN H0210190 C***** SEGMENT 190 H0210200 C***** H0210210 C***** S P E C I F I C A T I O N S SEGMENT 021 H0210220 C***** H0010875 C***** WHEN EXECUTING ONLY SEGMENT 021, THE SPECIFICATION STATEMENTS H0010880 C***** WHICH APPEAR AS COMMENTS, MUST HAVE THE C= IN COL H0010885 C***** 1 AND 2 REMOVED H0010890 C= INTEGER GTVI H0010895 C***** H0010900 C***** O U T P U T T A P E ASSIGNMENT STATEMENT. NO INPUT TAPE. H0210230 C***** H0070885 C***** WHEN EXECUTING ONLY SEGMENT 021, THE STATEMENT NUVI = 6 H0070890 C***** MUST HAVE THE C= IN COL 1 AND 2 REMOVED. H0070895 C***** H0070900 C= NUVI = 6 H0070905 C***** H0070910 WRITE (NUVI,210) H0210240 210 FORMAT (1H1,1X,33HAGOTO - (021) ASSIGN AND ASSIGNED/16X, H0210250 15HGO TO//2X, H0210260 231HASA REFS. - 7.1.1.3 AND 7.1.2.1//2X,7HRESULTS) H0210270 C***** HEADER FOR SEGMENT 021 WRITTEN H0210280 C***** TEST FORWARD BRANCHING GO TO WITH ONLY ONE H0210290 C***** LABEL IN THE BRANCH LIST H0210300 ASSIGN 211 TO IGVI H0210310 GO TO IGVI, (211) H0210320 C***** TEST FORWARD BRANCHING GO TO WHICH BRANCHES H0210330 C***** TO IMMEDIATELY FOLLOWING STATEMENT H0210340 212 MRRVI = 2 H0210350 WRITE (NUVI,8212) MRRVI H0210360 ASSIGN 213 TO GTVI H0210370 GO TO GTVI, (213) H0210380 C***** TEST FORWARD BRANCHING GO TO WHERE ALL BRANCHES H0210390 C***** ARE IDENTICAL H0210400 213 MRRVI = 3 H0210410 WRITE (NUVI,8212) MRRVI H0210420 ASSIGN 214 TO GTVI H0210430 GO TO GTVI, (214,214,214) H0210440 C***** TEST FORWARD BRANCHING GO TO WITH SEVERAL UNIQUE H0210450 C***** BRANCHES IN THE LIST H0210460 215 MRRVI = 5 H0210470 WRITE (NUVI,8212) MRRVI H0210480 ASSIGN 217 TO KGVI H0210490 ASSIGN 216 TO IGVI H0210500 GO TO IGVI, (217,218,216,219) H0210510 C***** TEST BACKWARD BRANCHING GO TO WHERE BRANCHES H0210520 C***** ARE IDENTICAL H0210530 214 MRRVI = 4 H0210540 WRITE (NUVI,8212) MRRVI H0210550 ASSIGN 215 TO IGVI H0210560 GO TO IGVI, (215,215) H0210570 C***** TEST BACKWARD BRANCHING GO TO WITH ONLY ONE LABEL H0210580 C***** IN THE BRANCH LIST H0210590 211 MRRVI = 1 H0210600 WRITE (NUVI,8212) MRRVI H0210610 ASSIGN 212 TO GTVI H0210620 GO TO GTVI, (212) H0210630 C***** IN THE FIRST PART OF THIS TEST, ALL GO TO STATEMENTS H0210640 C***** WERE EXECUTED ONLY ONCE, IMMEDIATELY AFTER THE H0210650 C***** INTEGER VARIABLE WAS DEFINED. ALL GO TO STATEMENTS H0210660 C***** WHICH FOLLOW WILL BE EXECUTED MORE THAN ONCE. H0210670 C***** VALUE OF IGVI IS ALWAYS 8216 IN THIS PART OF THE H0210680 C***** TEST UNTIL FINAL MESSAGE IS TO BE WRITTEN H0210690 216 MRRVI = 6 H0210700 WRITE (NUVI,8212) MRRVI H0210710 ASSIGN 8216 TO IGVI H0210720 8216 GO TO KGVI, (217,219,7210,7214,8210) H0210730 217 MRRVI = 7 H0210740 ASSIGN 218 TO GTVI H0210750 GO TO 8211 H0210760 218 MRRVI = 8 H0210770 ASSIGN 219 TO KGVI H0210780 GO TO 8213 H0210790 219 MRRVI = 9 H0210800 ASSIGN 7210 TO KGVI H0210810 GO TO 8213 H0210820 7210 MRRVI = 10 H0210830 ASSIGN 7211 TO GTVI H0210840 GO TO 8211 H0210850 7211 MRRVI = 11 H0210860 ASSIGN 7212 TO GTVI H0210870 GO TO 8211 H0210880 7212 MRRVI = 12 H0210890 ASSIGN 7213 TO GTVI H0210900 GO TO 8211 H0210910 7213 MRRVI = 13 H0210920 ASSIGN 7214 TO KGVI H0210930 GO TO 8213 H0210940 7214 MRRVI = 14 H0210950 ASSIGN 7215 TO GTVI H0210960 GO TO 8211 H0210970 7215 MRRVI = 15 H0210980 ASSIGN 7216 TO GTVI H0210990 GO TO 8211 H0211000 7216 MRRVI = 16 H0211010 ASSIGN 7217 TO GTVI H0211020 GO TO 8211 H0211030 7217 MRRVI = 17 H0211040 ASSIGN 7218 TO GTVI H0211050 GO TO 8211 H0211060 7218 MRRVI = 18 H0211070 ASSIGN 7219 TO GTVI H0211080 GO TO 8211 H0211090 7219 MRRVI = 19 H0211100 ASSIGN 8210 TO KGVI H0211110 GO TO 8213 H0211120 8210 MRRVI = 20 H0211130 ASSIGN 8214 TO IGVI H0211140 GO TO 8213 H0211150 8211 WRITE (NUVI,8212) MRRVI H0211160 8212 FORMAT (/6X,I2) H0211170 C***** TEST GO TO WITH CONTINUATION CARD H0211180 GO TO GTVI, (218, 7211, 7212, 7213, 7215, 7216, 7217, 7218, H0211190 1 7219) H0211200 8213 WRITE (NUVI,8212) MRRVI H0211210 GO TO IGVI, (8216,8214) H0211220 8214 WRITE (NUVI,8215) H0211230 8215 FORMAT (1H0,2X,35HTHIS TEST IS SUCCESSFUL ONLY IF THE/ H0211240 12X,37HNUMBERS LISTED ABOVE ARE SEQUENTIALLY/ H0211250 22X,21HIN ORDER FROM 1 TO 20) H0211260 C***** END OF TEST SEGMENT 021 H0211270 C***** H0211280 C***** WHEN EXECUTING ONLY SEGMENT 021, THE STOP AND END H0211290 C***** CARDS, WHICH APPEAR AS COMMENTS, MUST HAVE THE C= H0211300 C***** IN COL 1 AND 2 REMOVED. H0211310 C= STOP H0211320 C= END H0211330 C***********************************************************************H0220010 C***** H0220020 C***** CGOTO - (022) H0220030 C***** H0220040 C***********************************************************************H0220050 C***** GENERAL PURPOSE ASA REF H0220060 C***** TO TEST COMPUTED GO TO STATEMENTS 7.1.2.1.3 H0220070 C***** RESTRICTIONS OBSERVED H0220080 C***** VALUE OF INTEGER VARIABLE IS NEVER LESS THAN 1 7.1.2.1.3/33H0220090 C***** AND NEVER LARGER THAN THE NUMBER OF BRANCHES H0220100 C***** INTEGER VARIABLES USED IN COMPUTED GO TO STMNTS. 10.2.8 /09H0220110 C***** ARE NOT EQUATED TO AVOID SECOND LEVEL 10.3 /13H0220120 C***** DEFINITION PROBLEMS H0220130 C***** GENERAL COMMENTS H0220140 C***** IGVI AND KGVI ARE IMPLICITLY DEFINED 5.3 /07H0220150 C***** GTVI IS EXPLICITLY DEFINED 7.2.1.6 /55H0220160 C***** COMPUTED GO TO ALSO TESTED IN SEGMENT 162 H0220170 C***** H0220180 C***** S P E C I F I C A T I O N S SEGMENT 022 H0220190 C***** H0010905 C***** WHEN EXECUTING ONLY SEGMENT 022, THE SPECIFICATION STATEMENTS H0010910 C***** WHICH APPEAR AS COMMENTS, MUST HAVE THE C= IN COL H0010915 C***** 1 AND 2 REMOVED H0010920 C***** H0010925 C= INTEGER GTVI H0010930 C***** H0010935 C***** O U T P U T T A P E ASSIGNMENT STATEMENT. NO INPUT TAPE. H0220200 C***** H0070915 C***** WHEN EXECUTING ONLY SEGMENT 022, THE STATEMENT NUVI = 6 H0070920 C***** MUST HAVE THE C= IN COL 1 AND 2 REMOVED. H0070925 C***** H0070930 C= NUVI = 6 H0070935 C***** H0070940 WRITE (NUVI,220) H0220210 220 FORMAT (1H1,1X,28HCGOTO - (022) COMPUTED GO TO//2X, H0220220 120HASA REF. - 7.1.2.1.3//2X,7HRESULTS) H0220230 C***** HEADER FOR SEGMENT 022 WRITTEN H0220240 C***** TEST FORWARD BRANCHING GO TO WITH ONLY ONE H0220250 C***** LABEL IN BRANCH LIST H0220260 IGVI = 1 H0220270 GO TO (221), IGVI H0220280 C***** TEST FORWARD BRANCHING GO TO WHICH BRANCHES H0220290 C***** TO IMMEDIATELY FOLLOWING STATEMENT H0220300 222 MRRVI = 2 H0220310 WRITE (NUVI,8222) MRRVI H0220320 GO TO (223), GTVI H0220330 C***** H0220340 C***** TEST FORWARD BRANCHING GO TO WHERE SOME BRANCHES H0220350 C***** ARE IDENTICAL H0220360 223 MRRVI = 3 H0220370 WRITE (NUVI,8222) MRRVI H0220380 GTVI = 2 H0220390 GO TO (225,224,225), GTVI H0220400 C***** TEST FORWARD BRANCHING GO TO WITH SEVERAL UNIQUE H0220410 C***** BRANCHES IN LIST H0220420 225 MRRVI = 5 H0220430 WRITE (NUVI,8222) MRRVI H0220440 KGVI = 1 H0220450 IGVI = 3 H0220460 GO TO (227,228,226,229), IGVI H0220470 C***** TEST BACKWARD BRANCHING GO TO WHERE SOME H0220480 C***** BRANCHES ARE IDENTICAL H0220490 224 MRRVI = 4 H0220500 WRITE (NUVI,8222) MRRVI H0220510 IGVI = 4 H0220520 GO TO (226,226,226,225), IGVI H0220530 C***** TEST BACKWARD BRANCHING GO TO WITH ONLY ONE H0220540 C***** LABEL IN BRANCH LIST H0220550 221 MRRVI = 1 H0220560 WRITE (NUVI, 8222) MRRVI H0220570 GTVI = 1 H0220580 GO TO (222), GTVI H0220590 C***** IN THE FIRST PART OF THIS TEST, ALL GO TO STATEMENTS H0220600 C***** WERE EXECUTED ONLY ONCE, IMMEDIATELY AFTER THE H0220610 C***** INTEGER VARIABLE WAS DEFINED. ALL GO TO STATEMENTS H0220620 C***** WHICH FOLLOW WILL BE EXECUTED MORE THAN ONCE. H0220630 C***** VALUE OF IGVI IS ALWAYS 1 IN THIS PART OF THE TEST H0220640 C***** UNTIL THE FINAL MESSAGE IS TO BE WRITTEN H0220650 226 MRRVI = 6 H0220660 IGVI = 1 H0220670 WRITE (NUVI,8222) MRRVI H0220680 8226 GO TO (227,229,7220,7224,8220), KGVI H0220690 227 MRRVI = 7 H0220700 GTVI = 1 H0220710 GO TO 8221 H0220720 228 MRRVI = 8 H0220730 KGVI = 2 H0220740 GO TO 8223 H0220750 229 MRRVI = 9 H0220760 KGVI = 3 H0220770 GO TO 8223 H0220780 7220 MRRVI = 10 H0220790 GTVI = 2 H0220800 GO TO 8221 H0220810 7221 MRRVI = 11 H0220820 GTVI = 5 H0220830 GO TO 8221 H0220840 7222 MRRVI = 12 H0220850 GTVI = 4 H0220860 GO TO 8221 H0220870 7223 MRRVI = 13 H0220880 KGVI = 4 H0220890 GO TO 8223 H0220900 7224 MRRVI = 14 H0220910 GTVI = 6 H0220920 GO TO 8221 H0220930 7225 MRRVI = 15 H0220940 GTVI = 7 H0220950 GO TO 8221 H0220960 7226 MRRVI = 16 H0220970 GTVI = 9 H0220980 GO TO 8221 H0220990 7227 MRRVI = 17 H0221000 GTVI = 8 H0221010 GO TO 8221 H0221020 7228 MRRVI = 18 H0221030 GTVI = 3 H0221040 GO TO 8221 H0221050 7229 MRRVI = 19 H0221060 KGVI = 5 H0221070 GO TO 8223 H0221080 8220 MRRVI = 20 H0221090 IGVI = 2 H0221100 GO TO 8223 H0221110 8221 WRITE (NUVI,8222) MRRVI H0221120 8222 FORMAT(/6X,I2) H0221130 C***** TEST GO TO STATEMENT WITH CONTINUATION LINE H0221140 GO TO (228, 7221, 7229, 7223, 7222, 7225, 7226, 7228, H0221150 1 7227), GTVI H0221160 8223 WRITE (NUVI,8222) MRRVI H0221170 GO TO (8226,8224), IGVI H0221180 8224 WRITE (NUVI,8225) H0221190 8225 FORMAT (1H0,2X,35HTHIS TEST IS SUCCESSFUL ONLY IF THE/ H0221200 12X,37HNUMBERS LISTED ABOVE ARE SEQUENTIALLY/ H0221210 22X,21HIN ORDER FROM 1 TO 20) H0221220 C***** END OF TEST SEGMENT 022 H0221230 C***** H0221240 C***** WHEN EXECUTING ONLY SEGMENT 022, THE STOP AND END H0221250 C***** CARDS, WHICH APPEAR AS COMMENTS, MUST HAVE THE C= H0221260 C***** IN COL 1 AND 2 REMOVED. H0221270 C= STOP H0221280 C= END H0221290 C***********************************************************************H0300010 C***** H0300020 C***** ARBAD - (030) H0300030 C***** H0300040 C***********************************************************************H0300050 C***** GENERAL PURPOSE ASA REF H0300060 C***** TEST THAT EXPRESSIONS INVOLVING THE ADDITION 6.1 H0300070 C***** OF INTEGER OR REAL VALUES MAY BE FORMED H0300080 C***** GENERAL COMMENTS H0300090 C***** TYPES ARE NEVER MIXED. H0300100 C***** VARIABLES, ARRAY ELEMENTS AND CONSTANTS ARE USED H0300110 C***** IN A VARIETY OF COMBINATIONS. H0300120 C***** H0300130 C***** S P E C I F I C A T I O N S SEGMENT 030 H0300140 C***** H0010940 C***** WHEN EXECUTING ONLY SEGMENT 030, THE SPECIFICATION STATEMENTS H0010945 C***** WHICH APPEAR AS COMMENTS, MUST HAVE THE C= IN COL H0010950 C***** 1 AND 2 REMOVED H0010955 C***** H0010960 C= DIMENSION A1S(5),A2S(2,2),IAC1I(5),IAC2I(2,7) H0010965 C***** H0010970 C***** O U T P U T T A P E ASSIGNMENT STATEMENT. NO INPUT TAPE. H0300150 C***** H0070945 C***** WHEN EXECUTING ONLY SEGMENT 030, THE STATEMENT NUVI = 6 H0070950 C***** MUST HAVE THE C= IN COL 1 AND 2 REMOVED. H0070955 C***** H0070960 C= NUVI = 6 H0070965 C***** H0070970 WRITE (NUVI,301) H0300160 301 FORMAT (1H1,1X,28HARBAD - (030) BASIC ADDITION//2X, H0300170 -14HASA REF. - 6.1//2X,7HRESULTS) H0300180 C***** HEADER FOR SEGMENT 030 WRITTEN H0300190 WRITE (NUVI,302) H0300200 302 FORMAT (//2X,16HINTEGER ADDITION) H0300210 C***** TEST 1 - ADD 2 INTEGER VARIABLES (ONE CONTAINS MINUS VALUE) H0300220 MRRVI=1 H0300230 JACVI=2 H0300240 KBCVI = -2 H0300250 IHDVI=JACVI+KBCVI H0300260 WRITE (NUVI,303) MRRVI, IHDVI H0300270 303 FORMAT (/6H TEST,I3,I6) H0300280 C***** TEST 2 - REVERSE VARIABLES IN TEST 1 H0300290 MRRVI = 2 H0300300 IGDVI=KBCVI+JACVI H0300310 WRITE (NUVI,303) MRRVI, IGDVI H0300320 C***** TEST 3 - ADD 2 CONSTANTS H0300330 MRRVI = 3 H0300340 IAC1I(1) = 2+(-2) H0300350 WRITE (NUVI,303) MRRVI, IAC1I(1) H0300360 C***** TEST 4 - ADD 2 ARRAY ELEMENTS (ONE CONTAINS MINUS VALUE) H0300370 MRRVI = 4 H0300380 IAC1I(3) = 3 H0300390 IAC2I(1,3) = - 3 H0300400 IAC2I(2,2) = IAC1I(3)+IAC2I(1,3) H0300410 WRITE (NUVI,303) MRRVI, IAC2I(2,2) H0300420 C***** TEST 5 - ADD 8 INTEGER VARIABLES H0300430 MRRVI = 5 H0300440 LCCVI = -6 H0300450 MDCVI=-2 H0300460 NECVI = +18 H0300470 IFDVI = JACVI+KBCVI+LCCVI+MDCVI+MDCVI+LCCVI+KBCVI+NECVI H0300480 WRITE (NUVI,303) MRRVI, IFDVI H0300490 C***** TEST 6 - ADD COMBINATION OF VARIABLES, ARRAY ELEMENTS H0300500 C***** AND CONSTANTS H0300510 MRRVI = 6 H0300520 IAC2I(2,2) = -2 H0300530 IFDVI = IAC1I(3)+IAC2I(1,3)+IAC2I(2,2)+JACVI+KBCVI+LCCVI+7+1 H0300540 WRITE (NUVI,303) MRRVI, IFDVI H0300550 C***** TEST 7 - ADD 2 REAL VARIABLES H0300560 WRITE (NUVI,304) H0300570 304 FORMAT (//15H REAL ADDITION) H0300580 MRRVI = 7 H0300590 ACVS = -2.0 H0300600 BCVS = 2.0E0 H0300610 HHCVS = ACVS+BCVS H0300620 WRITE (NUVI,305) MRRVI, HHCVS H0300630 305 FORMAT (/6H TEST,I3,F7.1) H0300640 C***** TEST 8 - REVERSE ORDER OF VARIABLES IN TEST 7 H0300650 MRRVI = 8 H0300660 GGCVS = BCVS + ACVS H0300670 WRITE (NUVI,305) MRRVI, GGCVS H0300680 C***** TEST 9 - ADD 4 REAL VARIABLES H0300690 MRRVI = 9 H0300700 FFCVS = ACVS + BCVS + ACVS + BCVS H0300710 WRITE (NUVI,305) MRRVI, FFCVS H0300720 C***** TEST 10 - ADD 2 REAL CONSTANTS H0300730 MRRVI = 10 H0300740 A2S(1,2) = 3.5 + (-3.5) H0300750 WRITE (NUVI,305) MRRVI, A2S(1,2) H0300760 C***** TEST 11 - ADD REAL ARRAY ELEMENTS H0300770 MRRVI = 11 H0300780 A1S(1) = -25.E-1 H0300790 ACVS = 2.5 H0300800 A2S (1,1) = -7.0 H0300810 FFCVS = A1S(1) + A2S(1,1) + 9.5 H0300820 WRITE ( NUVI,305) MRRVI, FFCVS H0300830 C***** TEST 12 - ADD COMBINATION OF VARIABLES, ARRAY ELEMENTS H0300840 C***** AND CONSTANTS H0300850 MRRVI = 12 H0300860 FFCVS = A1S(1) + ACVS + 7.0 + A2S(1,1) H0300870 WRITE (NUVI,305) MRRVI, FFCVS H0300880 WRITE (NUVI,306) H0300890 306 FORMAT (//35H ALL ABOVE ANSWERS SHOULD BE 0 FOR/ H0300900 1 31H THIS SEGMENT TO BE SUCCESSFUL) H0300910 C***** END OF TEST SEGMENT 030 H0300920 C***** H0300930 C***** WHEN EXECUTING ONLY SEGMENT 030, THE STOP AND END H0300940 C***** CARDS, WHICH APPEAR AS COMMENTS, MUST HAVE THE C= H0300950 C***** IN COL 1 AND 2 REMOVED. H0300960 C= STOP H0300970 C= END H0300980 C***********************************************************************H0310010 C***** H0310020 C***** ARFAD - (031) H0310030 C***** H0310040 C***********************************************************************H0310050 C***** GENERAL PURPOSE ASA REF H0310060 C***** TEST THAT EXPRESSIONS INVOLVING THE ADDITION OF 6.1 H0310070 C***** DOUBLE PRECISION VALUES MAY BE FORMED H0310080 C***** GENERAL COMMENTS H0310090 C***** VARIABLES, ARRAY ELEMENTS AND CONSTANTS ARE USED IN A H0310100 C***** VARIETY OF COMBINATIONS H0310110 C***** H0310120 C***** S P E C I F I C A T I O N S SEGMENT 031 H0310130 C***** H0010975 C***** WHEN EXECUTING ONLY SEGMENT 031, THE SPECIFICATION STATEMENTS H0010980 C***** WHICH APPEAR AS COMMENTS, MUST HAVE THE C= IN COL H0010985 C***** 1 AND 2 REMOVED H0010990 C***** H0010995 C= DOUBLE PRECISION ACVD,BCVD,FFCVD,GGCVD,HHCVD H0011000 C= 1,EP1D(43),BC2D(7,4),CC3D(7,2,2) H0011005 C***** H0011010 C***** O U T P U T T A P E ASSIGNMENT STATEMENT. NO INPUT TAPE. H0310140 C***** H0070975 C***** WHEN EXECUTING ONLY SEGMENT 031, THE STATEMENT NUVI = 6 H0070980 C***** MUST HAVE THE C= IN COL 1 AND 2 REMOVED. H0070985 C***** H0070990 C= NUVI = 6 H0070995 C***** H0071000 WRITE (NUVI,310) H0310150 310 FORMAT (1H1,1X,27HARFAD - (031) D.P. ADDITION// H0310160 -16H ASA REF. - 6.1//9H RESULTS) H0310170 C***** HEADER FOR SEGMENT 031 WRITTEN H0310180 ACVD = -.01414213562373095D2 H0310190 BCVD = 14.14213562373095D-1 H0310200 EP1D(20) = -4.12310562561766D0 H0310210 BC2D(6,3) = .206155281280883D1 H0310220 HHCVD=ACVD+BCVD H0310230 GGCVD=BCVD+ACVD H0310240 EP1D(34) = .003D3 + (-300.0D-2) H0310250 FFCVD = BCVD+ACVD+ACVD+BCVD H0310260 CC3D(7,1,1)=EP1D(20)+BC2D(6,3)+206.155281280883D-2 +41.23105625617H0310270 166D-1 + EP1D(20) H0310280 WRITE (NUVI,312) HHCVD, GGCVD, FFCVD, EP1D(34), CC3D(7,1,1) H0310290 312 FORMAT (//5(D22.10//)//38H THE 5 ANSWERS ABOVE SHOULD BE 0 PLUS/ H0310300 137H OR MINUS AN ERROR FACTOR OF 0.1D-13) H0310310 C***** END OF TEST SEGMENT 031 H0310320 C***** H0310330 C***** WHEN EXECUTING ONLY SEGMENT 031, THE STOP AND END H0310340 C***** CARDS, WHICH APPEAR AS COMMENTS, MUST HAVE THE C= H0310350 C***** IN COL 1 AND 2 REMOVED. H0310360 C= END H0310370 C= STOP H0310380 C***********************************************************************H0320010 C***** H0320020 C***** ARBSB - (032) H0320030 C***** H0320040 C***********************************************************************H0320050 C***** GENERAL PURPOSE ASA REF H0320060 C***** TEST THAT EXPRESSIONS INVOLVING THE SUBTRACTION OF 6.1 H0320070 C***** INTEGER OR REAL VALUES MAY BE FORMED H0320080 C***** GENERAL COMMENTS H0320090 C***** TYPES ARE NEVER MIXED H0320100 C***** VARIABLES, ARRAY ELEMENTS AND CONSTANTS ARE USED IN A H0320110 C***** VARIETY OF COMBINATIONS. H0320120 C***** S P E C I F I C A T I O N S SEGMENT 032 H0320130 C***** H0011015 C***** WHEN EXECUTING ONLY SEGMENT 032, THE SPECIFICATION STATEMENTS H0011020 C***** WHICH APPEAR AS COMMENTS, MUST HAVE THE C= IN COL H0011025 C***** 1 AND 2 REMOVED H0011030 C***** H0011035 C= DIMENSION A1S(5),A2S(2,2),IAC1I(5),IAC2I(2,7) H0011040 C***** H0011045 C***** O U T P U T T A P E ASSIGNMENT STATEMENT. NO INPUT TAPE. H0320140 C***** H0071005 C***** WHEN EXECUTING ONLY SEGMENT 032, THE STATEMENT NUVI = 6 H0071010 C***** MUST HAVE THE C= IN COL 1 AND 2 REMOVED. H0071015 C***** H0071020 C= NUVI = 6 H0071025 C***** H0071030 WRITE (NUVI,320) H0320150 320 FORMAT (1H1,1X,31HARBSB - (032) BASIC SUBTRACTION// H0320160 1 17H ASA REFS. - 6.1//2X,7HRESULTS) H0320170 C***** HEADER FOR SEGMENT 032 WRITTEN H0320180 MRRVI = 1 H0320190 WRITE (NUVI,321)MRRVI H0320200 321 FORMAT (//2X,4HTEST,I1,1X,19HINTEGER SUBTRACTION) H0320210 JACVI=3 H0320220 IAC1I(1)=3 H0320230 IHDVI=JACVI-IAC1I(1) H0320240 IGDVI=IAC1I(1)-JACVI H0320250 IFDVI=JACVI-IAC1I(1)-IAC1I(1)+JACVI H0320260 IAC2I(2,3) = 3-2-1 H0320270 IAC2I(1,1) = 6 - JACVI - IAC1I(1) H0320280 WRITE (NUVI,323) IHDVI,IGDVI, IFDVI, IAC2I(2,3), IAC2I(1,1) H0320290 323 FORMAT (/5(I11/)) H0320300 MRRVI = 2 H0320310 328 WRITE (NUVI,329)MRRVI H0320320 329 FORMAT (//2X,4HTEST,I1,1X,16HREAL SUBTRACTION) H0320330 ACVS=5.1E1 H0320340 BCVS=.51E2 H0320350 HHCVS=ACVS-BCVS H0320360 GGCVS=BCVS-ACVS H0320370 FFCVS=ACVS-BCVS+BCVS-ACVS H0320380 A2S(1,2) = 2.1E1 H0320390 A1S(1) = ACVS - A2S(1,2) - 30.0 H0320400 WRITE (NUVI,324) HHCVS, GGCVS, FFCVS, A1S(1) H0320410 324 FORMAT (/4(F11.1/)/34H ALL ABOVE ANSWERS SHOULD BE 0 FOR/ H0320420 1 31H THIS SEGMENT TO BE SUCCESSFUL) H0320430 C***** END OF TEST SEGMENT 032 H0320440 C***** H0320450 C***** WHEN EXECUTING ONLY SEGMENT 032, THE STOP AND END H0320460 C***** CARDS, WHICH APPEAR AS COMMENTS, MUST HAVE THE C= H0320470 C***** IN COL 1 AND 2 REMOVED. H0320480 C= STOP H0320490 C= END H0320500 C***********************************************************************H0330010 C***** H0330020 C***** ARFSB - (033) H0330030 C***** H0330040 C***********************************************************************H0330050 C***** GENERAL PURPOSE ASA REF H0330060 C***** TEST THAT EXPRESSIONS INVOLVING THE SUBTRACTION OF 6.1 H0330070 C***** DOUBLE PRECISION VALUES MAY BE FORMED H0330080 C***** GENERAL COMMENTS H0330090 C***** VARIABLES, ARRAY ELEMENTS AND CONSTANTS ARE USED IN A H0330100 C***** VARIETY OF COMBINATIONS H0330110 C***** H0330120 C***** S P E C I F I C A T I O N S SEGMENT 033 H0330130 C***** H0011050 C***** WHEN EXECUTING ONLY SEGMENT 033, THE SPECIFICATION STATEMENTS H0011055 C***** WHICH APPEAR AS COMMENTS, MUST HAVE THE C= IN COL H0011060 C***** 1 AND 2 REMOVED H0011065 C***** H0011070 C= DOUBLE PRECISION ACVD,BCVD,CCVD,DCVD,GGCVD,HHCVD,DPCVD,FFCVD H0011075 C= 1,AC1D(10),A2D(2,2),A3D(2,2,2) H0011080 C***** H0011085 C***** O U T P U T T A P E ASSIGNMENT STATEMENT. NO INPUT TAPE. H0330140 C***** H0071035 C***** WHEN EXECUTING ONLY SEGMENT 033, THE STATEMENT NUVI = 6 H0071040 C***** MUST HAVE THE C= IN COL 1 AND 2 REMOVED. H0071045 C***** H0071050 C= NUVI = 6 H0071055 C***** H0071060 WRITE (NUVI,330) H0330150 330 FORMAT (1H1,1X,30HARFSB - (033) D.P. SUBTRACTION// H0330160 -16H ASA REF. - 6.1//2X,7HRESULTS) H0330170 C***** HEADER FOR SEGMENT 033 WRITTEN H0330180 ACVD=1.0D2 H0330190 BCVD=.3D1 H0330200 CCVD=15.D0 H0330210 AC1D(1) = 60.D-1 H0330220 A2D(1,1) = -.02D2 H0330230 A3D(1,2,1) = 4000.D-3 H0330240 C***** TWO TERM SUBTRACTION H0330250 HHCVD= ACVD-BCVD H0330260 HHCVD= HHCVD-97.0D0 H0330270 GGCVD=1.0D0-AC1D(1) H0330280 GGCVD=GGCVD+5.0D0 H0330290 DCVD = 4.0D0 - A3D(1,2,1) H0330300 WRITE (NUVI,331) HHCVD, GGCVD, DCVD H0330310 C***** THREE TERM SUBTRACTION H0330320 HHCVD= ACVD-BCVD-97.0D0 H0330330 GGCVD = 16.0D0 - CCVD - 1.0D0 H0330340 DCVD = A3D(1,2,1)-A2D(1,1) -6.0D0 H0330350 WRITE (NUVI,331) HHCVD, GGCVD, DCVD H0330360 C***** FOUR TERM SUBTRACTION H0330370 DPCVD = 6.85565460040104D0 H0330380 FFCVD = (+.342782730020052D1) H0330390 GGCVD = DPCVD - FFCVD - 42.782730020052D-2 - 300D-2 H0330400 HHCVD=ACVD-AC1D(1)-AC1D(1)-8.8D1 H0330410 DCVD = CCVD - A2D(1,1) - 110.D-1 - AC1D(1) H0330420 WRITE (NUVI,332) HHCVD, DCVD , GGCVD H0330430 331 FORMAT (//3(D22.10/)) H0330440 332 FORMAT (//3(D22.10/)//36H THE ANSWERS ABOVE SHOULD BE 0 PLUS/ H0330450 137H OR MINUS AN ERROR FACTOR OF 0.1D-13) H0330460 C***** END OF TEST SEGMENT 033 H0330470 C***** H0330480 C***** WHEN EXECUTING ONLY SEGMENT 033, THE STOP AND END H0330490 C***** CARDS, WHICH APPEAR AS COMMENTS, MUST HAVE THE C= H0330500 C***** IN COL 1 AND 2 REMOVED. H0330510 C= STOP H0330520 C= END H0330530 C***********************************************************************H0340010 C***** H0340020 C***** ARBAS - (034) H0340030 C***** H0340040 C***********************************************************************H0340050 C***** GENERAL PURPOSE ASA REF H0340060 C***** TEST THAT EXPRESSIONS INVOLVING THE ADDITION AND 6.1 H0340070 C***** SUBTRACTION (COMBINED) OF INTEGER OR REAL VALUES MAY BE H0340080 C***** FORMED. H0340090 C***** GENERAL COMMENTS H0340100 C***** TYPES ARE NEVER MIXED. H0340110 C***** VARIABLES, ARRAY ELEMENTS AND CONSTANTS ARE USED IN H0340120 C***** A VARIETY OF COMBINATIONS. H0340130 C***** H0340140 C***** S P E C I F I C A T I O N S SEGMENT 034 H0340150 C***** H0011090 C***** WHEN EXECUTING ONLY SEGMENT 034, THE SPECIFICATION STATEMENTS H0011095 C***** WHICH APPEAR AS COMMENTS, MUST HAVE THE C= IN COL H0011100 C***** 1 AND 2 REMOVED H0011105 C***** H0011110 C= DIMENSION A2S(2,2),A3S(3,3,3) H0011115 C= 1,IAC1I(5),IAC2I(2,7),AC1S(25) H0011120 C= INTEGER MCA3I(2,3,3) H0011125 C***** H0011130 C***** O U T P U T T A P E ASSIGNMENT STATEMENT. NO INPUT TAPE. H0340160 C***** H0071065 C***** WHEN EXECUTING ONLY SEGMENT 034, THE STATEMENT NUVI = 6 H0071070 C***** MUST HAVE THE C= IN COL 1 AND 2 REMOVED. H0071075 C***** H0071080 C= NUVI = 6 H0071085 C***** H0071090 WRITE (NUVI,340) H0340170 340 FORMAT (1H1,1X,32HARBAS - (034) BASIC ADDITION AND/14X, H0340180 113H SUBTRACTION//16H ASA REF. - 6.4// H0340190 22X,7HRESULTS) H0340200 C***** HEADER FOR SEGMENT 034 WRITTEN H0340210 WRITE (NUVI,341) H0340220 341 FORMAT (//2X,26HTEST1 INTEGER ADD AND SUBT) H0340230 JACVI = 5 H0340240 KBCVI = 1 H0340250 LCCVI = 10 H0340260 MDCVI = -2 H0340270 IAC1I(2) = 3 H0340280 IAC2I(2,2) = -3 H0340290 IHDVI = JACVI+KBCVI-LCCVI+MDCVI-IAC1I(2)+9 H0340300 IGDVI = (JACVI+KBCVI) - (MDCVI-IAC1I(2)) - 11 H0340310 IFDVI =(6 + (KBCVI - (LCCVI+MDCVI))) + 1 H0340320 MCA3I(1,1,1) = IAC2I(2,2) - JACVI - MDCVI - KBCVI + 7 + 0 H0340330 WRITE (NUVI,342) IHDVI,IGDVI, IFDVI, MCA3I(1,1,1) H0340340 342 FORMAT (/4(I11/)) H0340350 C***** HEADER FOR TEST2 H0340360 WRITE (NUVI,344) H0340370 344 FORMAT (/2X,24HTEST2 REAL ADD AND SUBTR) H0340380 ACVS = 5.0 H0340390 BCVS = 1.0 H0340400 CCVS = 10.0 H0340410 DCVS = -.2E+1 H0340420 AC1S(1) = 30.E-1 H0340430 A2S (2,1) = 6.0 H0340440 HHDVS= ACVS + BCVS - CCVS + DCVS +9.0-AC1S(1) H0340450 GGDVS= (ACVS + 1.0) -11.0 - ( DCVS-AC1S(1)) H0340460 FFDVS= (6.0 + (BCVS-(CCVS+DCVS))) + 1.0 H0340470 A3S(1,1,2) = A2S(2,1) - CCVS + 8.0 - 4.0 H0340480 WRITE (NUVI,343) HHDVS, GGDVS, FFDVS, A3S(1,1,2) H0340490 343 FORMAT (//4(F11.1/)/35H ALL ABOVE ANSWERS SHOULD BE 0 FOR/ H0340500 1 31H THIS SEGMENT TO BE SUCCESSFUL) H0340510 C***** END OF TEST SEGMENT 034 H0340520 C***** H0340530 C***** WHEN EXECUTING ONLY SEGMENT 034, THE STOP AND END H0340540 C***** CARDS WHICH APPEAR AS COMMENT CARDS MUST HAVE THE C= H0340550 C***** IN COLUMNS 1 AND 2 REMOVED. H0340560 C= STOP H0340570 C= END H0340580 STOP H9999995 END H9999999