Java
Slip23
Q.1) Write a java program to accept the details of n Cricket Players from user (Player code, name, runs, innings- played and number of times not out). The program should contain following menus:
-Display average runs of a single player.
-Display average runs of all players. (Use array of objects, Method overloading and static keyword) [Marks 30]
Solution
import java.io.*;
class Player
{
String Name;
int TotalRuns, TimesNotOut, InningsPlayed,pcode;
float Avg;
static BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
void getData()
{
try
{
System.out.print("\nEnter Player Code: ");
pcode=Integer.parseInt(br.readLine());
System.out.print("Enter Player Name: ");
Name = br.readLine();
System.out.print("Enter Total Runs: ");
TotalRuns = Integer.parseInt(br.readLine());
System.out.print("Enter Times Not Out: ");
TimesNotOut = Integer.parseInt(br.readLine());
System.out.print("Enter Innings Played: ");
InningsPlayed = Integer.parseInt(br.readLine());
}
catch(Exception e)
{
System.out.println(e);
}
}
void putData()
{
System.out.println(pcode + "\t"+ Name+"\t"+TotalRuns+"\t"+TimesNotOut+"\t"+InningsPlayed+"\t"+Avg);
}
void getAvg()
{
Avg= TotalRuns / (InningsPlayed - TimesNotOut);
}
static void getAvg(Player p[],int n)
{
for (int i=0;i<n;i++)
{
int diff = p[i].InningsPlayed - p[i].TimesNotOut;
if( diff == 0)
diff = p[i].InningsPlayed;
p[i].Avg=p[i].TotalRuns / diff;
}
for (int i=0;i<n;i++)
{
p[i].putData();
}
}
}
public class Cricket1
{
static BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
public static void main(String args[])
{
int n=0,ch;
Player p[] = new Player[10];
int cnt = 0;
try
{
do
{
System.out.println("\n\n1.Enter details of players. ");
System.out.println("2.Display average runs of a single player ");
System.out.println("3.Display average runs of all players. ");
System.out.println("4.Exit");
System.out.print("Enter your choice :");
ch = Integer.parseInt(br.readLine());
switch(ch)
{
case 1:
System.out.print("Enter No.of Players: ");
n = Integer.parseInt(br.readLine());
if(cnt == 10 || cnt + n > 10)
{
System.out.println("Max capacity is only 10 players");
break;
}
for(int i=cnt; i<cnt+n; i++)
{
p[i] = new Player();
p[i].getData();
}
cnt = cnt + n;
break;
case 2:
if(cnt == 0)
{
System.out.println("\n\tNo players found");
break;
}
System.out.print("Enter Player Code For Avg Calculation :");
int m=Integer.parseInt(br.readLine());
boolean flag = false;
for(int i=0; i<cnt; i++)
{
if(p[i].pcode==m)
{
flag = true;
p[i].getAvg();
p[i].putData();
}
}
if(!flag)
System.out.println("Player not found");
break;
case 3:
if(cnt == 0)
{
System.out.println("\n\tNo Players found");
break;
}
System.out.println("Average Of All The Players");
Player.getAvg(p,cnt);
break;
case 4 :
break;
default:
System.out.println("Wrong Input(Try again)");
}
}while(ch != 4);
} catch(Exception e)
{
System.out.println(e);
}
}
}
Tags:
java