http://www.ntu.edu.sg/home/ehchua/programming/java/j2a_basicsexercises.html Recommended exercises: SumAndAverage CheckerBoard fibonacci Bin2Dec GradeStatistics Another challenge: Write a high-low guessing game; have a person think of the number, and have the computer try to guess it After each guess, the human will tell the computer whether it's higher or lower Another challenge: Animal Farm Create an abstract class called Animal that has a mass and a name -All animals should have a constructor which gives them a mass and a name when they are created -All animals can eat an amount, which increases their mass by amount -All animals can also move a distance, which decreases their mass by distance -Everybody can use getName to get the name of an animal -Everybody can use getMass to get the mass of an animal(edited) -All animals can speak, but each type of animal speaks differently Create a class called Cat that extends Animal -When a cat speak, it prints Meow! Create a class called Dog that extends Animal -When a dog speak, it prints Woof! Create a class called Farm -The Farm has a main method -In the main method, the Farm creates a Cat with a mass of 12.2 named Cloud -In the main method, the Farm creates a Dog with a mass of 15.4 named Spot In the main method, the Farm will print the names of both animals and their masses. -Ex. Spot is a Dog with a mass of 15.4. Then, Cloud will eat 0.2, move 0.8, and speak. Spot will then eat 0.4, move 0.6, and speak. Farm will print the names of both animals and their masses once again. You will probably get weird numbers like 15.200000000001. This is imprecision with floating point numbers, and is normal