Insurance Premium Calculator
Problem Description
Calculate insurance premium based on age, coverage amount, and risk factors.
Expected Output
Premium amount with breakdown
Hints
Base rate varies by age bracket, multipliers for risk factors.
Solution
IDENTIFICATION DIVISION.
PROGRAM-ID. INSPREM.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 WS-AGE PIC 9(3).
01 WS-COVERAGE PIC 9(9).
01 WS-SMOKER PIC X(1).
01 WS-HEALTH PIC X(1).
01 WS-BASE-RATE PIC 9V9(4).
01 WS-BASE-PREMIUM PIC 9(7)V99.
01 WS-SMOKE-MULT PIC 9V99 VALUE 1.00.
01 WS-HEALTH-MULT PIC 9V99 VALUE 1.00.
01 WS-FINAL-PREM PIC 9(7)V99.
01 WS-MONTHLY PIC 9(6)V99.
01 WS-DISP PIC Z,ZZ,ZZ9.99.
PROCEDURE DIVISION.
DISPLAY "=== INSURANCE PREMIUM CALCULATOR ===".
DISPLAY "ENTER AGE: ".
ACCEPT WS-AGE.
DISPLAY "ENTER COVERAGE AMOUNT: ".
ACCEPT WS-COVERAGE.
DISPLAY "SMOKER? (Y/N): ".
ACCEPT WS-SMOKER.
DISPLAY "HEALTH: (G)OOD, (A)VERAGE, (P)OOR: ".
ACCEPT WS-HEALTH.
* Base rate by age
EVALUATE TRUE
WHEN WS-AGE < 30 MOVE 0.0025 TO WS-BASE-RATE
WHEN WS-AGE < 40 MOVE 0.0040 TO WS-BASE-RATE
WHEN WS-AGE < 50 MOVE 0.0065 TO WS-BASE-RATE
WHEN WS-AGE < 60 MOVE 0.0100 TO WS-BASE-RATE
WHEN OTHER MOVE 0.0180 TO WS-BASE-RATE
END-EVALUATE.
* Smoker multiplier
IF WS-SMOKER = "Y"
MOVE 1.50 TO WS-SMOKE-MULT
END-IF.
* Health multiplier
EVALUATE WS-HEALTH
WHEN "G" MOVE 0.90 TO WS-HEALTH-MULT
WHEN "A" MOVE 1.00 TO WS-HEALTH-MULT
WHEN "P" MOVE 1.30 TO WS-HEALTH-MULT
END-EVALUATE.
* Calculate premium
COMPUTE WS-BASE-PREMIUM = WS-COVERAGE * WS-BASE-RATE.
COMPUTE WS-FINAL-PREM = WS-BASE-PREMIUM *
WS-SMOKE-MULT * WS-HEALTH-MULT.
COMPUTE WS-MONTHLY = WS-FINAL-PREM / 12.
DISPLAY " ".
DISPLAY "=== PREMIUM BREAKDOWN ===".
MOVE WS-COVERAGE TO WS-DISP.
DISPLAY "COVERAGE: " WS-DISP.
DISPLAY "BASE RATE: " WS-BASE-RATE.
MOVE WS-BASE-PREMIUM TO WS-DISP.
DISPLAY "BASE PREMIUM: " WS-DISP.
DISPLAY "SMOKER FACTOR: " WS-SMOKE-MULT.
DISPLAY "HEALTH FACTOR: " WS-HEALTH-MULT.
MOVE WS-FINAL-PREM TO WS-DISP.
DISPLAY "ANNUAL PREMIUM: " WS-DISP.
MOVE WS-MONTHLY TO WS-DISP.
DISPLAY "MONTHLY: " WS-DISP.
STOP RUN.
Explanation:
Premium calculation with age brackets and risk multipliers.