//Tony Piechowskiimport java.lang.String;
public class FunNumber {
private int myNum; public FunNumber(int n) { myNum = n; }
public FunNumber(String n) { myNum = Integer.parseInt(n); }
public int numDigits(){ String num = "" + myNum; return num.length(); }
public int sumDigits(){ int num = myNum; int answer = 0; while(num > 0) { answer += num % 10; num = num / 10; } return answer; }
public boolean isPerfect(){ int answer = 0; int ent = 1; while(ent < myNum /2) { answer += ent; ent++; } return (myNum == answer); }
public FunNumber reverseNum() { double a = myNum; StringBuffer s = new StringBuffer(); while ( a != 0){ double b = a / 10; double b1 = (int )b; double c = Math.round((b-b1) * 10); s.append((int) c); a = (int)b; } return new FunNumber (s.toString()); }
public String toString() { return new String ("My fun number is " + myNum); }
public static void main(String[] args) { FunNumber f = new FunNumber(496); FunNumber f2 = f.reverseNum(); System.out.println("The perfection of the number is: " + f.isPerfect()); System.out.println("The sum of all the digits is: " + f.sumDigits()); System.out.println("The number of all the Digits is: " + f.numDigits()); System.out.println(f2.toString()); }}