Skip to main content

Device_Management

 Problem Statement

Create a class Phone with below attributes: phoneId - int os - String brand - String price - int

Write getters, setters and parameterized constructor in the above mentioned attribute sequence as required.

Create class Solution with main method.

Implement two static methods - findPriceForGivenBrand and getPhoneIdBasedOnOs in Solution class.

findPriceForGivenBrand method: This method will take two input parameters - array of Phone objects and string parameter brand. The method will return the sum of the price attribute from phone objects for the brand passed as parameter. If no phones with the given brand is present in the array of phone objects, then the method should return 0.

getPhoneIdBasedOnOs method: This method will take a String parameter os, along with the array of Phone objects. The method will return the phone object, if the input String parameter matches with the os attribute of the phone object and its price attribute is greater than or equal to 50000. If any of the conditions are not met, then the method should return null.

Note : No phone object would have the same value for os attribute. All phone object would have the price greater than 0. All the searches should be case insensitive.

These above mentioned static methods should be called from the main method.

For findPriceForGivenBrand method - The main method should print the price as it is if the returned price is greater than 0, or it should print "The given Brand is not available".

For getPhoneIdBasedOnOs method - The main method should print the phoneId of the returned phone object. If the returned value is null then it should print "No phones are available with specified os and price range".

Before calling these static methods in main, use Scanner object to read the values of four Phone objects referring attributes in the above mentioned attribute sequence. Next, read the value for brand and os.
Input

111
iOS
Apple
30000
222
android
Samsung
50000
333
Symbian
HTC
12000
444
Paranoid
HTC
89000
Blackberry
aNdRoid

Output

The given Brand is not available
222

Starter Code

public class Solution
{

public static void main(String[] args)
{
//code to read values
//code to call required method
//code to display the result
}

public static int findPriceForGivenBrand(Phone[] phone, String brand)
{
//method logic
}

public static Phone getPhoneIdBasedOnOs(Phone[] phone, String os)
{
//method logic
}
}

class Phone
{
//code to build Phone class
}



code:


import java.util.Scanner;
public class Solution {
    public static void main(String[] args)
    {
        Scanner sc = new Scanner(System.in);
        Phone[] phones = new Phone[4];
        for(int i = 0; i<4;i++){
            int id = sc.nextInt();
            sc.nextLine();
            String os = sc.nextLine();
            String  brand = sc.nextLine();
            int price = sc.nextInt();
            phones[i] = new Phone(id, os, brand, price);
        }
        sc.nextLine();
        String searchBrand = sc.nextLine();
        String searchOS = sc.nextLine();
        sc.close();
        int priceResult = findPriceForGivenBrand(phones, searchBrand);
        if(priceResult!=0){
            System.out.println(priceResult);
        }
        else{
            System.out.println("The given Brand is not available");
        }
        Phone phoneResult = getPhoneIdBasedOnOs(phones, searchOS);
        if(phoneResult!=null){
            System.out.println(phoneResult.phoneId);
        }
        else{
            System.out.println("No phones are available with specified os and price range");
        }

    }

    public static int findPriceForGivenBrand(Phone[] phones, String brand)
      {
          int price = 0;
          for(int i = 0;i<phones.length;i++){
              if(phones[i].getBrand().equalsIgnoreCase(brand)){
                  price += phones[i].getPrice();
              }
          }
          if(price>0)
            return price;
        else
            return 0;
      }

    public static Phone getPhoneIdBasedOnOs(Phone[] phones, String os)
      {
          Phone temp = null;
          for(int i = 0;i<phones.length;i++){
              if(phones[i].getOS().equalsIgnoreCase(os) && phones[i].getPrice()>=50000){
                  temp = phones[i];
                  return temp;
              }
          }
          return temp;
      }
}

class Phone
{
   int phoneId,price;
   String os,brand;
   Phone(int phoneId,String os,String brand,int price){
       this.phoneId = phoneId;
       this.os = os;
       this.brand = brand;
       this.price = price;
   }
   String getOS(){
       return os;
   }
   int getPrice(){
       return price;
   }
   String getBrand(){
       return brand;
   }
}

Comments

Popular posts from this blog

December 23 java coding question PRA solution

23 dec pra java coding question solution. Question: Create the class Student with below attributes. id-int name-String marks-int age-int write getters and setters and parametrized constructor in Student class. Create class Solution with main method. implement 2 static methods-findStudentWithMaximumAge and searchStudentById in Solution class. findStudentWithMaximumAge method:     This method will take the Array of the Students objects as input and  returns the Student object having maximum Age.   For this method,the main method should print the student object details with maximum age as it is.    searchStudentById method:     This method will take 2 input parameters.Array of the Students objects and an int value  id.and returns the Student object having the mentioned id  if found, else return null if not found.   For this method ,main method should print the details of Student objects  as it is,if the returned value is not null....

Travel_Agencies

  Problem Statement Create a class TravelAgencies with below attributes: regNo – int agencyName – String pakageType – String price – int flightFacility – boolean Write getters, setters for the above attributes . Create constructor which takes parameter in the above sequence. Create class Solution with main method. Implement two static methods – findAgencyWithHighestPackagePrice and agencyDetailsforGivenIdAndType in Solution class. findAgencyWithHighestPackagePrice method: This method will take array of TravelAgencies objects as an input parameter and return the highest package price from the given array of objects. agencyDetailsForGivenldAndType method: This method will take three input parameters -array of TravelAgencies objects, int parameter regNo and String parameter packageType. The method will return the TravelAgencies object based on below conditions. FlightFacility should be available. The input parameters(regNo and packageType) should matched with the re...

Solving TCS IPA java question.(class Player)

Question:  Create a Class Player with below attributes: id - int country - String side - String price - double Write getters, setters and parameterized constructor as required.  Create class Solution with main method.  Implement static method - searchPlayerForMatch in Solution class. This method will take a String parameter along with the other parameter as array of Player objects. The method will return array of Player where the String parameter appears in the side attribute (with case insensitive  search).   This method should be called from main method and display the id of returned objects in ascending order.  Before calling this method(searchPlayerForMatch) in the main method,  use Scanner object to read values for four Player objects referring the  attributes in the above sequence.  then, read the value for search parameter.  Next call the method searchPlayerForMatch, write the logic to sort the id in ascending order (i...