Am I perfect (number)?
Java, 255 270 bytes (Still FF in base 17)



class C{public static void main(String[]a){int i=new Integer(a[0]),k=0,l=0;a[0]=" ";for(;++k&lt;i;)if(i%k&lt;1){l+=k;a[0]+=k+" ";}}System.out.print("I am "+(l==i?"":"not ")+"a perfect number, because "+a[0].trim().replace(" "," + ")+" = "+l+(l==i?" == ":l&lt;i?" &lt; ":" &gt; ")+i);}}


And a more readable version:

class C {
    public static void main(String[] a) {
        int i = new Integer(a[0]), k = 0, l = 0;
        a[0] = " ";
        for(; ++k&lt;i ;){
            if (i % k == 0) {
                l += k;
                a[0] += k + " ";
            }
        }
        System.out.print("I am " + (l == i ? "" : "not ") + "a perfect number, because " + a[0].trim().replace(" "," + ") + " = " + l + (l == i ? " == " : l &lt; i ? " &lt; " : " &gt; ") + i);
    }
}


Previously didn't work for odd numbers, so I had to tweak a few things. At least I got lucky with the byte count again. :)