mirror of
https://github.com/sharkdp/bat
synced 2026-06-09 10:03:18 +00:00
Add COBOL syntax highlighting
This commit is contained in:
+61
@@ -0,0 +1,61 @@
|
||||
[38;2;249;38;114mIDENTIFICATION DIVISION[0m[38;2;248;248;242m.[0m
|
||||
[38;2;249;38;114mPROGRAM-ID[0m[38;2;248;248;242m. [0m[38;2;248;248;242mPAYROLL-CALC[0m[38;2;248;248;242m.[0m
|
||||
|
||||
[38;2;249;38;114mDATA DIVISION[0m[38;2;248;248;242m.[0m
|
||||
[38;2;249;38;114mWORKING-STORAGE SECTION[0m[38;2;248;248;242m.[0m
|
||||
[38;2;248;248;242m [0m[38;2;190;132;255m01[0m[38;2;248;248;242m [0m[38;2;248;248;242mEMPLOYEE-DETAILS[0m[38;2;248;248;242m.[0m
|
||||
[38;2;248;248;242m [0m[38;2;190;132;255m05[0m[38;2;248;248;242m [0m[38;2;248;248;242mEMPLOYEE-NAME[0m[38;2;248;248;242m [0m[3;38;2;102;217;239mPIC X(30).[0m
|
||||
[38;2;248;248;242m [0m[38;2;190;132;255m05[0m[38;2;248;248;242m [0m[38;2;248;248;242mHOURS-WORKED[0m[38;2;248;248;242m [0m[3;38;2;102;217;239mPIC 99V9[0m[38;2;248;248;242m.[0m
|
||||
[38;2;248;248;242m [0m[38;2;190;132;255m05[0m[38;2;248;248;242m [0m[38;2;248;248;242mHOURLY-RATE[0m[38;2;248;248;242m [0m[3;38;2;102;217;239mPIC 99V99[0m[38;2;248;248;242m.[0m
|
||||
[38;2;248;248;242m [0m[38;2;190;132;255m01[0m[38;2;248;248;242m [0m[38;2;248;248;242mPAY-CALCULATIONS[0m[38;2;248;248;242m.[0m
|
||||
[38;2;248;248;242m [0m[38;2;190;132;255m05[0m[38;2;248;248;242m [0m[38;2;248;248;242mGROSS-PAY[0m[38;2;248;248;242m [0m[3;38;2;102;217;239mPIC 9(5)V99.[0m
|
||||
[38;2;248;248;242m [0m[38;2;190;132;255m05[0m[38;2;248;248;242m [0m[38;2;248;248;242mOVERTIME-HOURS[0m[38;2;248;248;242m [0m[3;38;2;102;217;239mPIC 99V9[0m[38;2;248;248;242m.[0m
|
||||
[38;2;248;248;242m [0m[38;2;190;132;255m05[0m[38;2;248;248;242m [0m[38;2;248;248;242mOVERTIME-PAY[0m[38;2;248;248;242m [0m[3;38;2;102;217;239mPIC 9(5)V99.[0m
|
||||
[38;2;248;248;242m [0m[38;2;190;132;255m05[0m[38;2;248;248;242m [0m[38;2;248;248;242mTAX-RATE[0m[38;2;248;248;242m [0m[3;38;2;102;217;239mPIC V99[0m[38;2;248;248;242m [0m[38;2;249;38;114mVALUE[0m[38;2;248;248;242m [0m[38;2;190;132;255m0.10[0m[38;2;248;248;242m.[0m
|
||||
[38;2;248;248;242m [0m[38;2;190;132;255m05[0m[38;2;248;248;242m [0m[38;2;248;248;242mTAX-AMOUNT[0m[38;2;248;248;242m [0m[3;38;2;102;217;239mPIC 9(5)V99.[0m
|
||||
[38;2;248;248;242m [0m[38;2;190;132;255m05[0m[38;2;248;248;242m [0m[38;2;248;248;242mNET-PAY[0m[38;2;248;248;242m [0m[3;38;2;102;217;239mPIC 9(5)V99.[0m
|
||||
|
||||
[38;2;249;38;114mPROCEDURE DIVISION[0m[38;2;248;248;242m.[0m
|
||||
[38;2;248;248;242mMAIN-LOGIC[0m[38;2;248;248;242m.[0m
|
||||
[38;2;248;248;242m [0m[38;2;249;38;114mDISPLAY[0m[38;2;248;248;242m [0m[38;2;230;219;116m"[0m[38;2;230;219;116m--- COBOL Payroll Calculator ---[0m[38;2;230;219;116m"[0m[38;2;248;248;242m.[0m
|
||||
|
||||
[38;2;248;248;242m [0m[38;2;249;38;114mDISPLAY[0m[38;2;248;248;242m [0m[38;2;230;219;116m"[0m[38;2;230;219;116mEnter Employee Name: [0m[38;2;230;219;116m"[0m[38;2;248;248;242m.[0m
|
||||
[38;2;248;248;242m [0m[38;2;249;38;114mACCEPT[0m[38;2;248;248;242m [0m[38;2;248;248;242mEMPLOYEE-NAME[0m[38;2;248;248;242m.[0m
|
||||
|
||||
[38;2;248;248;242m [0m[38;2;249;38;114mDISPLAY[0m[38;2;248;248;242m [0m[38;2;230;219;116m"[0m[38;2;230;219;116mEnter Hours Worked (e.g., 40.5): [0m[38;2;230;219;116m"[0m[38;2;248;248;242m.[0m
|
||||
[38;2;248;248;242m [0m[38;2;249;38;114mACCEPT[0m[38;2;248;248;242m [0m[38;2;248;248;242mHOURS-WORKED[0m[38;2;248;248;242m.[0m
|
||||
|
||||
[38;2;248;248;242m [0m[38;2;249;38;114mDISPLAY[0m[38;2;248;248;242m [0m[38;2;230;219;116m"[0m[38;2;230;219;116mEnter Hourly Rate (e.g., 15.75): [0m[38;2;230;219;116m"[0m[38;2;248;248;242m.[0m
|
||||
[38;2;248;248;242m [0m[38;2;249;38;114mACCEPT[0m[38;2;248;248;242m [0m[38;2;248;248;242mHOURLY-RATE[0m[38;2;248;248;242m.[0m
|
||||
|
||||
[38;2;248;248;242m [0m[38;2;249;38;114mPERFORM[0m[38;2;248;248;242m [0m[38;2;248;248;242mCALCULATE-GROSS-PAY[0m[38;2;248;248;242m.[0m
|
||||
[38;2;248;248;242m [0m[38;2;249;38;114mPERFORM[0m[38;2;248;248;242m [0m[38;2;248;248;242mCALCULATE-TAX[0m[38;2;248;248;242m.[0m
|
||||
[38;2;248;248;242m [0m[38;2;249;38;114mPERFORM[0m[38;2;248;248;242m [0m[38;2;248;248;242mCALCULATE-NET-PAY[0m[38;2;248;248;242m.[0m
|
||||
[38;2;248;248;242m [0m[38;2;249;38;114mPERFORM[0m[38;2;248;248;242m [0m[38;2;248;248;242mDISPLAY-RESULTS[0m[38;2;248;248;242m.[0m
|
||||
|
||||
[38;2;248;248;242m [0m[38;2;249;38;114mSTOP RUN[0m[38;2;248;248;242m.[0m
|
||||
|
||||
[38;2;248;248;242mCALCULATE-GROSS-PAY[0m[38;2;248;248;242m.[0m
|
||||
[38;2;248;248;242m [0m[38;2;249;38;114mIF[0m[38;2;248;248;242m [0m[38;2;248;248;242mHOURS-WORKED[0m[38;2;248;248;242m [0m[38;2;249;38;114m>[0m[38;2;248;248;242m [0m[38;2;190;132;255m40[0m[38;2;248;248;242m [0m[38;2;249;38;114mTHEN[0m
|
||||
[38;2;248;248;242m [0m[38;2;249;38;114mCOMPUTE[0m[38;2;248;248;242m [0m[38;2;248;248;242mOVERTIME-HOURS[0m[38;2;248;248;242m [0m[38;2;249;38;114m=[0m[38;2;248;248;242m [0m[38;2;248;248;242mHOURS-WORKED[0m[38;2;248;248;242m [0m[38;2;249;38;114m-[0m[38;2;248;248;242m [0m[38;2;190;132;255m40[0m
|
||||
[38;2;248;248;242m [0m[38;2;249;38;114mCOMPUTE[0m[38;2;248;248;242m [0m[38;2;248;248;242mOVERTIME-PAY[0m[38;2;248;248;242m [0m[38;2;249;38;114m=[0m[38;2;248;248;242m [0m[38;2;248;248;242mOVERTIME-HOURS[0m[38;2;248;248;242m [0m[38;2;249;38;114m*[0m[38;2;248;248;242m [0m[38;2;248;248;242mHOURLY-RATE[0m[38;2;248;248;242m [0m[38;2;249;38;114m*[0m[38;2;248;248;242m [0m[38;2;190;132;255m1.5[0m
|
||||
[38;2;248;248;242m [0m[38;2;249;38;114mCOMPUTE[0m[38;2;248;248;242m [0m[38;2;248;248;242mGROSS-PAY[0m[38;2;248;248;242m [0m[38;2;249;38;114m=[0m[38;2;248;248;242m ([0m[38;2;190;132;255m40[0m[38;2;248;248;242m [0m[38;2;249;38;114m*[0m[38;2;248;248;242m [0m[38;2;248;248;242mHOURLY-RATE[0m[38;2;248;248;242m) [0m[38;2;249;38;114m+[0m[38;2;248;248;242m [0m[38;2;248;248;242mOVERTIME-PAY[0m
|
||||
[38;2;248;248;242m [0m[38;2;249;38;114mELSE[0m
|
||||
[38;2;248;248;242m [0m[38;2;249;38;114mCOMPUTE[0m[38;2;248;248;242m [0m[38;2;248;248;242mGROSS-PAY[0m[38;2;248;248;242m [0m[38;2;249;38;114m=[0m[38;2;248;248;242m [0m[38;2;248;248;242mHOURS-WORKED[0m[38;2;248;248;242m [0m[38;2;249;38;114m*[0m[38;2;248;248;242m [0m[38;2;248;248;242mHOURLY-RATE[0m
|
||||
[38;2;248;248;242m [0m[38;2;249;38;114mEND-IF[0m[38;2;248;248;242m.[0m
|
||||
|
||||
[38;2;248;248;242mCALCULATE-TAX[0m[38;2;248;248;242m.[0m
|
||||
[38;2;248;248;242m [0m[38;2;249;38;114mCOMPUTE[0m[38;2;248;248;242m [0m[38;2;248;248;242mTAX-AMOUNT[0m[38;2;248;248;242m [0m[38;2;249;38;114m=[0m[38;2;248;248;242m [0m[38;2;248;248;242mGROSS-PAY[0m[38;2;248;248;242m [0m[38;2;249;38;114m*[0m[38;2;248;248;242m [0m[38;2;248;248;242mTAX-RATE[0m[38;2;248;248;242m.[0m
|
||||
|
||||
[38;2;248;248;242mCALCULATE-NET-PAY[0m[38;2;248;248;242m.[0m
|
||||
[38;2;248;248;242m [0m[38;2;249;38;114mCOMPUTE[0m[38;2;248;248;242m [0m[38;2;248;248;242mNET-PAY[0m[38;2;248;248;242m [0m[38;2;249;38;114m=[0m[38;2;248;248;242m [0m[38;2;248;248;242mGROSS-PAY[0m[38;2;248;248;242m [0m[38;2;249;38;114m-[0m[38;2;248;248;242m [0m[38;2;248;248;242mTAX-AMOUNT[0m[38;2;248;248;242m.[0m
|
||||
|
||||
[38;2;248;248;242mDISPLAY-RESULTS[0m[38;2;248;248;242m.[0m
|
||||
[38;2;248;248;242m [0m[38;2;249;38;114mDISPLAY[0m[38;2;248;248;242m [0m[38;2;230;219;116m"[0m[38;2;230;219;116m----------------------------------[0m[38;2;230;219;116m"[0m[38;2;248;248;242m.[0m
|
||||
[38;2;248;248;242m [0m[38;2;249;38;114mDISPLAY[0m[38;2;248;248;242m [0m[38;2;230;219;116m"[0m[38;2;230;219;116mEmployee Name: [0m[38;2;230;219;116m"[0m[38;2;248;248;242m [0m[38;2;248;248;242mEMPLOYEE-NAME[0m[38;2;248;248;242m.[0m
|
||||
[38;2;248;248;242m [0m[38;2;249;38;114mDISPLAY[0m[38;2;248;248;242m [0m[38;2;230;219;116m"[0m[38;2;230;219;116mHours Worked: [0m[38;2;230;219;116m"[0m[38;2;248;248;242m [0m[38;2;248;248;242mHOURS-WORKED[0m[38;2;248;248;242m.[0m
|
||||
[38;2;248;248;242m [0m[38;2;249;38;114mDISPLAY[0m[38;2;248;248;242m [0m[38;2;230;219;116m"[0m[38;2;230;219;116mHourly Rate: [0m[38;2;230;219;116m"[0m[38;2;248;248;242m [0m[38;2;248;248;242mHOURLY-RATE[0m[38;2;248;248;242m.[0m
|
||||
[38;2;248;248;242m [0m[38;2;249;38;114mDISPLAY[0m[38;2;248;248;242m [0m[38;2;230;219;116m"[0m[38;2;230;219;116mGross Pay: [0m[38;2;230;219;116m"[0m[38;2;248;248;242m [0m[38;2;248;248;242mGROSS-PAY[0m[38;2;248;248;242m.[0m
|
||||
[38;2;248;248;242m [0m[38;2;249;38;114mDISPLAY[0m[38;2;248;248;242m [0m[38;2;230;219;116m"[0m[38;2;230;219;116mTax (10%): [0m[38;2;230;219;116m"[0m[38;2;248;248;242m [0m[38;2;248;248;242mTAX-AMOUNT[0m[38;2;248;248;242m.[0m
|
||||
[38;2;248;248;242m [0m[38;2;249;38;114mDISPLAY[0m[38;2;248;248;242m [0m[38;2;230;219;116m"[0m[38;2;230;219;116mNet Pay: [0m[38;2;230;219;116m"[0m[38;2;248;248;242m [0m[38;2;248;248;242mNET-PAY[0m[38;2;248;248;242m.[0m
|
||||
[38;2;248;248;242m [0m[38;2;249;38;114mDISPLAY[0m[38;2;248;248;242m [0m[38;2;230;219;116m"[0m[38;2;230;219;116m----------------------------------[0m[38;2;230;219;116m"[0m[38;2;248;248;242m.[0m
|
||||
+61
@@ -0,0 +1,61 @@
|
||||
IDENTIFICATION DIVISION.
|
||||
PROGRAM-ID. PAYROLL-CALC.
|
||||
|
||||
DATA DIVISION.
|
||||
WORKING-STORAGE SECTION.
|
||||
01 EMPLOYEE-DETAILS.
|
||||
05 EMPLOYEE-NAME PIC X(30).
|
||||
05 HOURS-WORKED PIC 99V9.
|
||||
05 HOURLY-RATE PIC 99V99.
|
||||
01 PAY-CALCULATIONS.
|
||||
05 GROSS-PAY PIC 9(5)V99.
|
||||
05 OVERTIME-HOURS PIC 99V9.
|
||||
05 OVERTIME-PAY PIC 9(5)V99.
|
||||
05 TAX-RATE PIC V99 VALUE 0.10.
|
||||
05 TAX-AMOUNT PIC 9(5)V99.
|
||||
05 NET-PAY PIC 9(5)V99.
|
||||
|
||||
PROCEDURE DIVISION.
|
||||
MAIN-LOGIC.
|
||||
DISPLAY "--- COBOL Payroll Calculator ---".
|
||||
|
||||
DISPLAY "Enter Employee Name: ".
|
||||
ACCEPT EMPLOYEE-NAME.
|
||||
|
||||
DISPLAY "Enter Hours Worked (e.g., 40.5): ".
|
||||
ACCEPT HOURS-WORKED.
|
||||
|
||||
DISPLAY "Enter Hourly Rate (e.g., 15.75): ".
|
||||
ACCEPT HOURLY-RATE.
|
||||
|
||||
PERFORM CALCULATE-GROSS-PAY.
|
||||
PERFORM CALCULATE-TAX.
|
||||
PERFORM CALCULATE-NET-PAY.
|
||||
PERFORM DISPLAY-RESULTS.
|
||||
|
||||
STOP RUN.
|
||||
|
||||
CALCULATE-GROSS-PAY.
|
||||
IF HOURS-WORKED > 40 THEN
|
||||
COMPUTE OVERTIME-HOURS = HOURS-WORKED - 40
|
||||
COMPUTE OVERTIME-PAY = OVERTIME-HOURS * HOURLY-RATE * 1.5
|
||||
COMPUTE GROSS-PAY = (40 * HOURLY-RATE) + OVERTIME-PAY
|
||||
ELSE
|
||||
COMPUTE GROSS-PAY = HOURS-WORKED * HOURLY-RATE
|
||||
END-IF.
|
||||
|
||||
CALCULATE-TAX.
|
||||
COMPUTE TAX-AMOUNT = GROSS-PAY * TAX-RATE.
|
||||
|
||||
CALCULATE-NET-PAY.
|
||||
COMPUTE NET-PAY = GROSS-PAY - TAX-AMOUNT.
|
||||
|
||||
DISPLAY-RESULTS.
|
||||
DISPLAY "----------------------------------".
|
||||
DISPLAY "Employee Name: " EMPLOYEE-NAME.
|
||||
DISPLAY "Hours Worked: " HOURS-WORKED.
|
||||
DISPLAY "Hourly Rate: " HOURLY-RATE.
|
||||
DISPLAY "Gross Pay: " GROSS-PAY.
|
||||
DISPLAY "Tax (10%): " TAX-AMOUNT.
|
||||
DISPLAY "Net Pay: " NET-PAY.
|
||||
DISPLAY "----------------------------------".
|
||||
Reference in New Issue
Block a user