Question:
Create the class PrimeManagement with the below attributes:
primeId-int
userProfileName-String
subscriptionType-String
subscriptionPrice-double
noOfProfiles-int
The above attributes should be private,write getter and setter and
parameterized constructor as required.
Create class MyClass with main method.
Implement a static method-findAvgPriceByType in MyClass class.
findAvgPriceByType method:
This method will take two input parameters-array of PrimeManagement
objects and String parameter.This method will return average Subscription
price (as int value) from array of PrimeManagement objects for given
subscription type(String parameter passed) and whose noOfProfiles is greater
than 3.
If no PrimeManagement with above condition is present in array of
PrimeManagement objects,then the method should return 0.
The main method should print the returned average subscription price
of PrimeManagement as it is ,if the returned value is greater than 0,or it
should print "There are no such prime Management"
testcase1:
1005
Mani
monthly
100
4
1001
Sathish
monthly
300
2
1007
john
yearly
500
5
1003
joe
monthly
400
5
monthly
output :250
testcase2:
input:
1005
Mani
monthly
100
4
1001
Sathish
monthly
300
2
1007
john
monthly
500
5
1003
joe
monthly
400
5
Yearly
output:There are no such prime Management.
Code:
import java.util.Scanner;
public class Solution {
public static void main(String[] args) {
PrimeManagement[] primeManagements=new PrimeManagement[4];
Scanner sc=new Scanner(System.in);
for (int i = 0; i <4 ; i++) {
int a=sc.nextInt();sc.nextLine();
String b=sc.nextLine();
String c=sc.nextLine();
double d=sc.nextDouble();
int e=sc.nextInt();sc.nextLine();
primeManagements[i]=new PrimeManagement(a,b,c,d,e);
}
String type=sc.nextLine();
int avg=findAvgPriceByType(primeManagements,type);
if(avg>0)
{
System.out.println(avg);
}
else
{
System.out.println("There are no such prime Management");
}
}
public static int findAvgPriceByType(PrimeManagement[] primeManagements,String type)
{
int ans=0;
int count=0;
for (int i = 0; i <primeManagements.length ; i++) {
if(primeManagements[i].getSubscriptionType().equalsIgnoreCase(type) && primeManagements[i].getNoOfProfiles()>3)
{
count+=1;
ans+=primeManagements[i].getSubscriptionPrice();
}
}
if(count>0)
{
return ans/count;
}
return 0;
}
}
class PrimeManagement{
private int primeId;
private String userProfileName;
private String subscriptionType;
private double subscriptionPrice;
private int noOfProfiles;
//constructor
public PrimeManagement(int primeId, String userProfileName, String subscriptionType, double subscriptionPrice, int noOfProfiles) {
this.primeId = primeId;
this.userProfileName = userProfileName;
this.subscriptionType = subscriptionType;
this.subscriptionPrice = subscriptionPrice;
this.noOfProfiles = noOfProfiles;
}
//getters and setters
public int getPrimeId() {
return primeId;
}
public void setPrimeId(int primeId) {
this.primeId = primeId;
}
public String getUserProfileName() {
return userProfileName;
}
public void setUserProfileName(String userProfileName) {
this.userProfileName = userProfileName;
}
public String getSubscriptionType() {
return subscriptionType;
}
public void setSubscriptionType(String subscriptionType) {
this.subscriptionType = subscriptionType;
}
public double getSubscriptionPrice() {
return subscriptionPrice;
}
public void setSubscriptionPrice(double subscriptionPrice) {
this.subscriptionPrice = subscriptionPrice;
}
public int getNoOfProfiles() {
return noOfProfiles;
}
public void setNoOfProfiles(int noOfProfiles) {
this.noOfProfiles = noOfProfiles;
}
}
Comments
Post a Comment