Skip to content
Related Articles

Related Articles

Improve Article
Program to calculate Electricity Bill
  • Difficulty Level : Basic
  • Last Updated : 21 Apr, 2021

Given an integer U denoting the amount of KWh units of electricity consumed, the task is to calculate the electricity bill with the help of the below charges: 
 

  • 1 to 100 units – Rs. 10/unit
  • 100 to 200 units – Rs. 15/unit
  • 200 to 300 units – Rs. 20/unit
  • above 300 units – Rs. 25/unit

Examples: 
 

Input: U = 250 
Output: 3500 
Explanation: 
Charge for the first 100 units – 10*100 = 1000 
Charge for the 100 to 200 units – 15*100 = 1500 
Charge for the 200 to 250 units – 20*50 = 1000 
Total Electricity Bill = 1000 + 1500 + 1000 = 3500
Input: U = 95 
Output: 950 
Explanation: 
Charge for the first 100 units – 10*95 = 950 
Total Electricity Bill = 950 
 

 

Approach: The idea is to identify the charge bar in which it falls and then calculate the bill according to the charges mentioned above. Below is the illustration of the steps: 
 



  • Check units consumed is less than equal to the 100, If yes then the total electricity bill will be:
     

\text{Total Electricity Bill} = (\text{units} * 10)

  •  
  • Else if, check that units consumed is less than equal to the 200, if yes then total electricity bill will be:
     

\text{Total Electricity Bill} = (100*10) + (\text{units}-100) * 15

  •  
  • Else if, check that units consumed is less than equal to the 300, if yes then total electricity bill will be:
     

\text{Total Electricity Bill} = (100*10) + (100*15) + (\text{units}-200) * 20

  •  
  • Else if, check that units consumed greater than 300, if yes then total electricity bill will be:
     

\text{Total Electricity Bill} = (100*10) + (100*15) + (100*20) + (\text{units}-300) * 25

  •  

Below is the implementation of the above approach: 
 

C++




// C++ implementation to calculate the
// electricity bill
#include<bits/stdc++.h>
using namespace std;
 
// Function to calculate the
// electricity bill
int calculateBill(int units)
{
 
    // Condition to find the charges
    // bar in which the units consumed
    // is fall
    if (units <= 100)
    {
        return units * 10;
    }
    else if (units <= 200)
    {
        return (100 * 10) +
               (units - 100) * 15;
    }
    else if (units <= 300)
    {
        return (100 * 10) +
               (100 * 15) +
               (units - 200) * 20;
    }
    else if (units > 300)
    {
        return (100 * 10) +
               (100 * 15) +
               (100 * 20) +
               (units - 300) * 25;
    }
    return 0;
}
 
// Driver Code
int main()
{
    int units = 250;
    cout << calculateBill(units);
}
 
// This code is contributed by spp____

Java




// Java implementation to calculate the
// electricity bill
 
import java.util.*;
 
class ComputeElectricityBill {
 
    // Function to calculate the
    // electricity bill
    public static int calculateBill(int units)
    {
 
        // Condition to find the charges
        // bar in which the units consumed
        // is fall
        if (units <= 100) {
            return units * 10;
        }
        else if (units <= 200) {
            return (100 * 10)
                + (units - 100)
                      * 15;
        }
        else if (units <= 300) {
            return (100 * 10)
                + (100 * 15)
                + (units - 200)
                      * 20;
        }
        else if (units > 300) {
            return (100 * 10)
                + (100 * 15)
                + (100 * 20)
                + (units - 300)
                      * 25;
        }
        return 0;
    }
 
    // Driver Code
    public static void main(String args[])
    {
        int units = 250;
 
        System.out.println(
            calculateBill(units));
    }
}

Python3




# Python3 implementation to calculate the
# electricity bill
 
# Function to calculate the
# electricity bill
def calculateBill(units):
 
    # Condition to find the charges
    # bar in which the units consumed
    # is fall
    if (units <= 100):
      
        return units * 10;
     
    elif (units <= 200):
     
        return ((100 * 10) +
                (units - 100) * 15);
     
    elif (units <= 300):
      
        return ((100 * 10) +
                (100 * 15) +
                (units - 200) * 20);
     
    elif (units > 300):
     
        return ((100 * 10) +
                (100 * 15) +
                (100 * 20) +
                (units - 300) * 25);
     
    return 0;
 
# Driver Code
units = 250;
print(calculateBill(units));
 
# This code is contributed by Code_Mech

C#




// C# implementation to calculate the
// electricity bill
using System;
 
class ComputeElectricityBill{
 
// Function to calculate the
// electricity bill
public static int calculateBill(int units)
{
 
    // Condition to find the charges
    // bar in which the units consumed
    // is fall
    if (units <= 100)
    {
        return units * 10;
    }
    else if (units <= 200)
    {
        return (100 * 10) +
               (units - 100) * 15;
    }
    else if (units <= 300)
    {
        return (100 * 10) +
               (100 * 15) +
               (units - 200) * 20;
    }
    else if (units > 300)
    {
        return (100 * 10) +
               (100 * 15) +
               (100 * 20) +
               (units - 300) * 25;
    }
    return 0;
}
 
// Driver Code
public static void Main(String []args)
{
    int units = 250;
     
    Console.WriteLine(calculateBill(units));
}
}
 
// This code is contributed by spp____

Javascript




<script>
 
// Javascript implementation to calculate the
// electricity bill
 
// Function to calculate the
// electricity bill
function calculateBill(units)
{
     
    // Condition to find the charges
    // bar in which the units consumed
    // is fall
    if (units <= 100)
    {
        return units * 10;
    }
    else if (units <= 200)
    {
        return (100 * 10)
            + (units - 100)
                  * 15;
    }
    else if (units <= 300)
    {
        return (100 * 10)
            + (100 * 15)
            + (units - 200)
                  * 20;
    }
    else if (units > 300)
    {
        return (100 * 10)
            + (100 * 15)
            + (100 * 20)
            + (units - 300)
                  * 25;
    }
    return 0;
}
     
// Driver Code
var units = 250;
 
document.write(calculateBill(units));
 
// This code is contributed by Khushboogoyal499
 
</script>
Output: 
3500

 

Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the DSA Self Paced Course at a student-friendly price and become industry ready.  To complete your preparation from learning a language to DS Algo and many more,  please refer Complete Interview Preparation Course.

In case you wish to attend live classes with industry experts, please refer DSA Live Classes




My Personal Notes arrow_drop_up
Recommended Articles
Page :