| 1. |
Design a class Perfect to check if a given number is a perfect number or not. [A number is said to be perfect if sum of the factors of the number excluding itself is equal to the original number]Example : 6 = 1 + 2 + 3 (where 1, 2 and 3 are factors of 6, excluding itself) Some of the members of the class are given below :Class name : PerfectData members/instance variables num : to store the numberMethods/Member functions : Perfect (int nn) parameterized constructor to initialize the data member num=nnint sum_of_factors (int i) : returns the sum of the factors of the number(num), excluding itself, using recursive techniquevoid check ( ) : checks whether the given number is perfect by invoking the function sum_of_factors ( ) and displays the result with an appropriate messageSpecify the class Perfect giving details of the constructor ( ), int sum_of_factors(int) and void check ( ). Define a main ( ) function to create an object and call the functions accordingly to enable the task. |
|
Answer» import java. io. *; class Perfect { int num; Perfect (int nn) { num = nn; } int sum_of_factors (int i) { if (num = = i) return (sum_of_factors (i/2)); else if (i = = 1) return (1); else if (num % i = = 0) return (i + sum_of_factors (i – 1)); else return (sum_of_factors (i – 1)); } void check ( ) { if (num = = sum_of_factors (num)) System. out. println (" Perfect Number"); else System. out. println ("Not Perfect Number"); } public static void main (String args [ ] ) { system. out. println ("Enter one number"); BufferedReader br = new BufferedReader (new InputStreamReader (System.in)); int n = Integer parseInt (br. readLine( )); Perfect ob = new Perfect (n); ob. check ( ); } } |
|