In: Computer Science
write Java program has two classes ,( using Inheritance )
first class set ( id , name ) and method output
second class ( id , name , Mark 1 , Mark 2 , Mark 3 )
method total , average , grade , results ( if the student pass or not ) , and output method
The program is as follows:
/******************************************************************************
Online Java Compiler.
Code, Compile, Run and Debug java program online.
Write your code in this editor and press "Run" button to execute
it.
*******************************************************************************/
import java.util.*;
class Student
{
int id;
String name;
public void setName(String name) //setter method
for name
{
this.name=name;
}
public void setID(int id) //setter method for
id
{
this.id=id;
}
public void getDetails() // method to retrieve
the student details
{
System.out.println("*******Student Details*******");
System.out.println("Student ID = "+id);
System.out.println("Student Name = " +name);
}
}
class StudentMarks extends Student
{
float mark1;
float mark2;
float mark3;
public void setMarks(float m1,float m2,float
m3)
{
mark1=m1;
mark2=m2;
mark3=m3;
}
public float total()
{
return
mark1+mark2+mark3;
}
public float average()
{
float avg=
(mark1+mark2+mark3)/3;
return avg;
}
public void grade() // grading is done
individually for each subject
{
int i=1;
float marks = 0;
while(i<=3)
{
System.out.print("Subject " + i + ": ");
if (i==1)
{
marks = mark1;
}
else if (i==2)
{
marks = mark2;
}
else
{
marks = mark3;
}
if(marks<40)
{
System.out.println("Grade F");
}
else if(marks>=40 && marks<60)
{
System.out.println("Grade D");
}
else if(marks>=60 && marks<70)
{
System.out.println("Grade C");
}
else if(marks>=70 && marks<80)
{
System.out.println("Grade B");
}
else if(marks>=80 && marks<90)
{
System.out.println("Grade A");
}
else
{
System.out.println("Grade A+");
}
i++;
}
}
public void results() // results is displayed
individually for each subject
{
if(mark1 < 40)
{
System.out.println("Subject 1: Fail");
}
else
System.out.println("Subject 1: Pass");
if(mark2 < 40)
{
System.out.println("Subject 2: Fail");
}
else
System.out.println("Subject 2: Pass");
if(mark3 < 40)
{
System.out.println("Subject 3: Fail");
}
else
System.out.println("Subject 3: Pass");
}
public void getDetails()
{
super.getDetails(); //
calling the base class getDetails() function to print student name
and id
System.out.println("Subject 1 Marks: " +mark1);
System.out.println("Subject 2 Marks: " +mark2);
System.out.println("Subject 3 Marks: " +mark3);
}
}
public class Main
{
public static void main(String[] args) {
Scanner sc = new
Scanner(System.in);
float m1,m2,m3;
StudentMarks s1 = new
StudentMarks();
System.out.println("Enter Student Name: ");
String
name=sc.nextLine();
s1.setName(name);
System.out.println("Enter Student ID: ");
int id=sc.nextInt();
s1.setID(id);
System.out.println("Enter
Student Marks in 3 subjects: ");
m1=sc.nextFloat();
m2=sc.nextFloat();
m3=sc.nextFloat();
while(m1<0 || m1>100 ||
m2<0 || m2>100 || m3<0 || m3>100){ // if marj=ks is
less than 0 or greater than 100, it has to be renered
System.out.println("Enter valid marks!!!");
m1=sc.nextFloat();
m2=sc.nextFloat();
m3=sc.nextFloat();
}
s1.setMarks(m1,m2,m3);
s1.getDetails();
float total=
s1.total();
System.out.println("Total
marks = " + total + "/300");
float avg =
s1.average();
System.out.println("Average
marks = " + avg);
s1.grade();
s1.results();
}
}
Output: