Saturday, November 6, 2021

Java Inheritance Program On Spare Parts

 This is a program on inheritance which deals with spare parts. This program shows alarm while stock is below certain specified numbers.

import java.io.*;
 class Parts
 {
     String parts1, parts2, parts3;     
     Parts(String parts1, String parts2, String parts3)
     {
        this.parts1=parts1;
        this.parts2=parts2;
        this.parts3=parts3;
    }             
        
    }
  
    class PartsRates extends Parts
    {
       double rate1, rate2, rate3;
       int stock1, stock2, stock3;
       BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
       PartsRates(String parts1, String parts2, String parts3,double rate1, double rate2, double rate3 )
       {
        super(parts1, parts2, parts3);
        this.rate1=rate1;
        this.rate2=rate2;
        this.rate3=rate3;
    }
    protected void takeStock() throws IOException
    {         
            boolean bool=true;
            bool=true;
            while(bool)
            {
                try
                {
                    System.out.print("\nNumber of Pcs of Parts1: ");
                    stock1=Integer.parseInt(br.readLine());
                    bool=false;
        }catch(Exception e)
        {
              System.out.println("\nEnter Stock Properly...");
        }
    }
    bool=true;
    while(bool)
            {
                try
                {
                    System.out.print("\nNumber of Pcs of Parts2: ");
                    stock2=Integer.parseInt(br.readLine());
                    bool=false;
        }catch(Exception e)
        {
              System.out.println("\nEnter Stock Properly...");
        }
    }
    bool=true;
    while(bool)
            {
                try
                {
                    System.out.print("\nNumber of Pcs of Parts3: ");
                    stock3=Integer.parseInt(br.readLine());
                    bool=false;
        }catch(Exception e)
        {
              System.out.println("\nEnter Stock Properly...");
        }
    }
}
    
    
    protected void showRecords()
    {
        
            System.out.println("Parts Number 1: "+parts1+ " Rate: " + rate1+ " No of Pcs: " + stock1);
            System.out.println("Parts Number 2: "+parts2+ " Rate: " + rate2+ " No of Pcs: " + stock2);
            System.out.println("Parts Number 3: "+parts3+ " Rate: " + rate3+ " No of Pcs: " + stock3);
        }   
    
    protected void showAlarmingStock()
    {
       System.out.println("\nParts with Stock less than equal to 10 are as follows");
       if(stock1<10)
       System.out.println("Parts Number 1: "+parts1+ " Rate: " + rate1+ " No of Pcs: " + stock1); 
       if(stock2<10)
       System.out.println("Parts Number 2: "+parts2+ " Rate: " + rate2+ " No of Pcs: " + stock2); 
       if(stock3<10)
       System.out.println("Parts Number 3: "+parts3+ " Rate: " + rate3+ " No of Pcs: " + stock3); 
    }
    
}
class PartsDetails
{
    
        public static void main(String args[])throws IOException
        {
            int choice=1;
            boolean bool=true;
            String parts1, parts2, parts3;
            double rate1=0, rate2=0, rate3=0;
            BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
            System.out.print("\nEnter Name of Parts Number 1: ");
            parts1=br.readLine();
            bool=true;
    while(bool)
            {
                try
                {
                    System.out.print("\nRate / Pc of Parts1: ");
                    rate1=Double.parseDouble(br.readLine());
                    bool=false;
        }catch(Exception e)
        {
              System.out.println("\nEnter Properly...");
        }
    }
       System.out.print("\nEnter Name of Parts Number 2: ");
            parts2=br.readLine();
            bool=true;
    while(bool)
            {
                try
                {
                    System.out.print("\nRate / Pc of Parts2: ");
                    rate2=Double.parseDouble(br.readLine());
                    bool=false;
        }catch(Exception e)
        {
              System.out.println("\nEnter Properly...");
        }
    }
    
    System.out.print("\nEnter Name of Parts Number 3: ");
            parts3=br.readLine();
            bool=true;
    while(bool)
            {
                try
                {
                    System.out.print("\nRate / Pc of Parts3: ");
                    rate3=Double.parseDouble(br.readLine());
                    bool=false;
        }catch(Exception e)
        {
              System.out.println("\nEnter Properly...");
        }
    }
            PartsRates ob=new PartsRates(parts1,parts2,parts3,rate1,rate2,rate3);
            ob.takeStock();
             while(choice!=0)
            {
                System.out.println("Enter 1 to view Full Records, 2 to view Records where stock is less and 0 exit: ");
                choice=Integer.parseInt(br.readLine());
                switch(choice)
                {
                     case 1:
                     ob.showRecords();
                     break;
                     case 2:
                     ob.showAlarmingStock();
                     break;
                     case 0:
                     System.out.print("\nEnd of Program.");
                     break;
                     default:
                     System.out.print("\nWrong Choice.");
                    }
                }
            }
        }
                
            

            Sample Input Output

            
            Enter Name of Parts Number 1: Parts1
Rate / Pc of Parts1: 100
Enter Name of Parts Number 2: Parts2
Rate / Pc of Parts2: www
Enter Properly...
Rate / Pc of Parts2: 200
Enter Name of Parts Number 3: Parts3
Rate / Pc of Parts3: 230
Number of Pcs of Parts1: 12
Number of Pcs of Parts2: 13
Number of Pcs of Parts3: 9

Enter 1 to view Full Records, 2 to view Records where stock is less and 0 exit: 
1

Parts Number 1: Parts1 Rate: 100.0 No of Pcs: 12
Parts Number 2: Parts2 Rate: 200.0 No of Pcs: 13
Parts Number 3: Parts3 Rate: 230.0 No of Pcs: 9

Enter 1 to view Full Records, 2 to view Records where stock is less and 0 exit: 
2

Parts with Stock less than equal to 10 are as follows
Parts Number 3: Parts3 Rate: 230.0 No of Pcs: 9
Enter 1 to view Full Records, 2 to view Records where stock is less and 0 exit: 
0

                     
               

No comments:

Post a Comment

Subscribe via email

Enter your email address:

Delivered by FeedBurner