RATEMORE 0.334 /* rate of charge following unit */
PEN 0.015 /* penalty for unpaid balance */
Inputs int unit /* unit of electricity used */ float UnpaidBal /* unpaid balance */
Outputs float Penalty /* charge of penalty */ float UseCharge /* charge for the current electricity use */ float TotalBill /* total charge */
PROGRAM ALGORITHM (FLOW OF PROGRAM)
1. Display user instructions
2. Get data: unpaid balance and electricity unit used
3. Determine electricity unit used and compute use charge
4. Determine unpaid balance and compute penalty
5. Compute total charge
6. Display the total bill amount
DESIGN OF COMPUTATION OF USE CHARGE
The data required to compute the use charge are listed. We separate the involved data categories into Input, Process and Output.
Input Data int unit /* unit of electricity used */
Process Data
RATELESS 0.218 /* rate of charge first 200 unit */
RATEMORE 0.334 /* rate of charge following unit */
Output Data float UseCharge /* charge for the current electricity use */
Algorithm for Computation of Use Charge
We know that different rate will be used if the electricity unit used is more than 200. Thus we use if else selection to design the algorithm. if unit > 200 compute use charge for more than 200 unit else compute use charge for less than 200 unit
Formula for Use Charge
UseCharge=(unit-200)*RATEMORE+200*RATELESS /* more than 200 */
UseCharge=unit*RATELESS /* less than 200 */
DESIGN OF COMPUTATION OF PENALTY
The data required to compute the penalty are listed. We separate the involved data categories into Input, Process and Output.
Input Data float UnpaidBal /* unpaid balance */
Process Data
PEN 0.015 /* penalty for unpaid balance */
Output Data float Penalty /* charge of penalty */
Algorithm for Computation of Penalty
Penalty is dealt when there is an unpaid balance. We use if selection to design the algorithm.
if