A school is giving away merit certificates for the students who have scored 90 percentage and above in class 10. The following program is based on the specification given below. Fill in the blanks with appropriate Java statements. class name : Student Member variables: String name, double per, String cer Member methods: void input(), void merit(), void display(), void main() import java.(i) __________ .*; class Student { String name; double per; String cer; void input() { Scanner obj = new Scanner(System.in); System.out.println("Enter name, Percentage"); name = obj.next(); per = (ii) __________ } void merit() { if( (iii) __________ ) cer = "AWARDED"; else cer = (iv) __________ } void (v) __________ { System.out.println(name); System.out.println(per); System.out.println(cer); } void main() { Student s = new (vi) __________ s.input(); s.merit(); s.display(); } }
Fill in blank (ii): per = __________
Topic: Reading a double with Scanner
Try it
Pick an option and check your answer. The full worked answer is below either way.
Answer
(a) obj.nextDouble();.
Two things must be right. The variable per is declared double, so the method must be nextDouble() and not nextFloat() — which would return a float and not compile into a double without a cast. And Scanner methods are non-static, so they must be called through the OBJECT: obj.nextDouble(), not bare nextDouble(). Option (b) omits the object and would not compile.
obj.nextDouble();.