10  REM ****  HP TIME-SHARED BASIC PROGRAM LIBRARY  *******************
20  REM
30  REM            PRCNT:  PERCENT COMPOSITION
40  REM
50  REM            36311  (A833)  REV A -- 7/71
60  REM
70  REM ****  CONTRIBUTED PROGRAM  ************************************
80  REM PRCNT - COPYRIGHT 1971, POLYTECHNIC INSTITUTE OF BROOKLYN
90  REM H. SHANNON, HARBORFIELDS H.S. 7/23/68  (REV 7/18/69) 
100  REM  REVISED BY C.LOSIK  7-23-70 
110  REM  THE SAMPLE CALCULATION EXPLAINS HOW THIS PROGRAM WORKS
120  REM CALCULATES PERCENTAGE COMPOSITION BY WEIGHT OF A COMPOUND
130  PRINT "     THIS PROGRAM IS DESIGNED TO CALCULATE THE PERCENT"
140  PRINT "COMPOSITION BY WEIGHT OF A COMPOUND THAT MAY CONTAIN"
150  PRINT "FROM 2 TO 5 ELEMENTS."
160  PRINT 
170  PRINT " DO YOU WANT TO SEE A SAMPLE CALCULATION?"
180  PRINT "ANSWER 1 FOR YES OR 0 (ZERO) FOR NO";
190  INPUT X
200  IF X=0 THEN 490
210  IF X <> 1 THEN 180
220  PRINT 
230  PRINT "EXAMPLE :   THE PERCENT COMPOSITION OF SULFURIC ACID "
240  PRINT 
250  PRINT "LET W1 = ATOMIC WEIGHT OF HYDROGEN"
260  PRINT " LET A1 = THE NO. OF HYDROGEN ATOMS IN THE FORMULA"
270  PRINT "LET W2 = THE ATOMIC WEIGHT OF SULFUR"
280  PRINT " LET A2 = THE NO. OF SULFUR ATOMS IN THE FORMULA"
290  PRINT "LET W3 = THE ATOMIC WEIGHT OF OXYGEN"
300  PRINT " LET A3 = THE NO. OF OXYGEN ATOMS IN THE FORMULA "
310  PRINT 
320  PRINT " Y= FORMULA WEIGHT OF SULFURIC ACID"
330  PRINT " Y= (W1*A1) + (W2*A2) + (W3*A3)"
340  PRINT " Y= (1.008*2) + (32.064*1) + (15.999*4)"
350  PRINT " Y= 98.076"
360  PRINT 
370  PRINT "PERCENT H = (W1*A1/Y)*100"
380  PRINT "PERCENT H = (1.008*2/98.076)*100"
390  PRINT "PERCENT H = 2.005"
400  PRINT 
410  PRINT "PERCENT S = (W2*A2/Y)*100"
420  PRINT "PERCENT S = (32.064*1/98.076)*100"
430  PRINT "PERCENT S = 32.693"
440  PRINT 
450  PRINT "PERCENT O = (W3*A3/Y)*100"
460  PRINT "PERCENT O = (15.999*4/98.076)*100"
470  PRINT "PERCENT O = 65.2514"
480  PRINT 
490  PRINT " DO YOU WANT TO DO A PROBLEM ?"
500  PRINT "ANSWER 1 FOR YES OR 0 (ZERO) FOR NO";
510  INPUT X
520  IF X=0 THEN 870
530  IF X <> 1 THEN 500
540  DIM W[5],A[5]
550  PRINT 
560  PRINT " WHAT IS THE NUMBER OF ELEMENTS IN THE FORMULA";
570  REM J = NO. OF ELEMENTS IN THE FORMULA 
580  INPUT J
590  REM THIS LOOP CHECKS FOR VALID ANSWER
600  FOR I=2 TO 5
610  IF I=J THEN 650
620  NEXT I
630  PRINT "THIS PROGRAM CONSIDERS COMPOUNDS WITH 2 TO 5 ELEMENTS."
640  GOTO 560
650  LET Y=0
660  PRINT " TYPE (THE ATOMIC WEIGHT,NO. OF ATOMS) FOR EACH ELEMENT,"
670  PRINT " ONE ELEMENT TO A LINE."
680  FOR I=1 TO J
690  INPUT W[I],A[I]
700  REM Y = FORMULA WEIGHT 
710  LET Y=Y+W[I]*A[I]
720  NEXT I
730  PRINT "               ******************************"
740  PRINT 
750  PRINT "FORMULA WEIGHT =";Y
760  PRINT 
770  PRINT "ATOMIC WEIGHT  NO. OF ATOMS   PERCENT COMPOSITION"
780  REM J = NO. OF ELEMENTS IN THE FORMULA 
790  FOR I=1 TO J
800  PRINT W[I],A[I],W[I]*A[I]/Y*100
810  NEXT I
820  PRINT 
830  PRINT "               ******************************"
840  PRINT 
850  PRINT " DO YOU WANT TO DO ANOTHER PROBLEM?"
860  GOTO 500
870  END 
