! Takoma Park M.S.

! Jr-5

! Contest 1

! Daniel Chen

DO

! Input

            INPUT PROMPT "Enter the location, start time, and end time for an employee: ":Location, StartTime$, EndTime$

            ! Changing Letter Times to Army Time and Changing to Numeric

            ! Starting Time

            SELECT CASE ucase$(StartTime$)

                        CASE "1"

                        LET StartTime = 9

                        CASE "2"

                        LET StartTime = 9.5

                        CASE "3"

                        LET StartTime = 10

                        CASE "4"

                        LET StartTime = 10.5

                        CASE "5"

                        LET StartTime = 11   

                        CASE "6"

                        LET StartTime = 11.5

                        CASE "7"

                        LET StartTime = 12

 

                        CASE "8"

                        LET StartTime = 12.5

                        CASE "9"

                        LET StartTime = 13

                        CASE "A"

                        LET StartTime = 13.5

                        CASE "B"

                        LET StartTime = 14

                        CASE "C"

                        LET StartTime = 14.5

                        CASE "D"

                        LET StartTime = 15

                        CASE "E"

                        LET StartTime = 15.5

                        CASE "F"

                        LET StartTime = 16

                        CASE "G"

                        LET StartTime = 16.5

                        CASE "H"

                        LET StartTime = 17   

            END SELECT

 

 

 

            ! Ending Time

            SELECT CASE ucase$(EndTime$)

                        CASE "1"

                        LET EndTime = 9

                        CASE "2"

                        LET EndTime = 9.5

                        CASE "3"

                        LET EndTime = 10

                        CASE "4"

                        LET EndTime = 10.5 

                        CASE "5"

                        LET EndTime = 11    

                        CASE "6"

                        LET EndTime = 11.5

                        CASE "7"

                        LET EndTime = 12

                        CASE "8"

                        LET EndTime = 12.5

                        CASE "9"

                        LET EndTime = 13

                        CASE "A"

                        LET EndTime = 13.5 

                        CASE "B"

                        LET EndTime = 14

 

                        CASE "C"

                        LET EndTime = 14.5 

                        CASE "D"

                        LET EndTime = 15

                        CASE "E"

                        LET EndTime = 15.5

                        CASE "F"

                        LET EndTime = 16

                        CASE "G"

                        LET EndTime = 16.5 

                        CASE "H"

                        LET EndTime = 17    

            END SELECT

            IF Location >= 1 AND Location <= 9 THEN

                        ! Calculating Persons Daily Pay and the Total Pay

                        LET DailyPay = 10 * (EndTime - StartTime)

                        LET TotalPay = TotalPay + DailyPay

            ELSEIF Location >= 10 AND Location <= 19 THEN

                        ! Calculating Persons Daily Pay and the Total Pay

                        LET DailyPay = 8 * (EndTime - StartTime)

                                    ! For those who worked over 4 hours

                        IF (EndTime - StartTime) > 4 THEN LET DailyPay = DailyPay + 4 * ((EndTime - StartTime) - 4)

                        LET TotalPay = TotalPay + DailyPay

 

 

 

            ELSEIF Location >= 20 AND Location <= 29 THEN

                        ! Calculating Persons Daily Pay and the Total Pay

                        LET DailyPay = 12 * ((EndTime - StartTime))

                                    ! For those who worked over 4 hours

                        IF (EndTime - StartTime) > 4 THEN LET DailyPay = DailyPay + 12 * ((EndTime - StartTime) - 4)

                        LET TotalPay = TotalPay + DailyPay

            END IF                      

            ! Rounding Daily Pay

            LET DailyPay = Round(DailyPay, 2)

            ! Printing

            PRINT "The daily pay for the employee is: ";

            PRINT USING "$$$$.##":DailyPay

            PRINT

            INPUT PROMPT "Run again (y/n)? ": Run$

            ! Error Checking

            DO WHILE lcase$(Run$) <> "y" AND lcase$(Run$) <> "n"

            PRINT

            INPUT PROMPT "Invalid. Run again (y/n)? ": Run$

            LOOP

            PRINT

            PRINT "-------------------------------------------------------------"

            PRINT

LOOP UNTIL lcase$(Run$) = "n"

! Printing Total

LET TotalPay = Round(TotalPay, 2)

PRINT "The total of the daily pay amounts is: ";

PRINT USING "$$$$.##":TotalPay

END