CTITLEUSLPAD -- LEFT JUSTIFY A CHARACTER STRING AND PAD WITH INPUT CHAR C*********************************************************************** C COPYRIGHT ATLANTIC RICHFIELD COMPANY 1991 * C*********************************************************************** CA AUTHOR R. F. COTTON CA DESIGNER J. M. PONTON CA LANGUAGE VSFORTRAN CA SYSTEM IBM S/370 CA WRITTEN 10-03-89 C REVISED MO-DA-YR BY PROGRAMMER FOR REASON CA CA CALL USLPAD(STRING,PC) CA CA IN/OUT ARGUMENT TYPE DESCRIPTION CA ------ -------- ---- ----------- CA IN/OUT STRING CHAR STRING TO BE LEFT-JUSTIFIED. CA INPUT PC CHAR PADDING CHARACTER. CA CA THIS SUBROUTINE REMOVES ANY LEADING BLANKS IN 'STRING' AND SHIFTS CA THE REST OF THE WORD, PADDING THE RESULT WITH PAD CHARACTER. CA C EJECT C SUBROUTINE USLPAD(STRING, PC) C IMPLICIT INTEGER (A-Z) C CHARACTER*(*) STRING CHARACTER*1 PC C C GET THE LENGTH OF THE STRING. C NC = USLEN(STRING) IF (NC .EQ. 0) RETURN C C FIND THE FIRST NON-BLANK CHARACTER. C DO 10 I = 1, NC IF (STRING(I:I) .NE. ' ') GO TO 20 10 CONTINUE C RETURN C 20 CONTINUE SHIFT = I - 1 IF (SHIFT .EQ. 0) RETURN C C SHIFT THE STRING. C STRING(I-SHIFT:NC-SHIFT) = STRING(I:NC) C C PAD IT OUT WITH PAD CHARACTER C DO 30 I = 1, SHIFT STRING(NC-SHIFT+I:NC-SHIFT+I) = PC 30 CONTINUE C RETURN END