CS 175/286 - Homework 7

Your task is to write an iOS application that is just like Homework 1, except (1) don't randomize the buttons (2) when a button is clicked, use an alert to tell the user whether the answer was right or wrong.

Make a domain-level class Question that encapsulates the question. Set up the question object, then have the UI read from the question object and use it to determine whether the answer is correct.

To test that feature, make three Question objects. When the program starts, randomly attach one of them to the controller class. When the program is executed multiple times, different questions should appear.

Line up the buttons and labels nicely. This is described in chapter 4 of your textbook.

You check in a project that solves the assignment together with a report in a file report.txt. Everything should be in a hw07 directory.

In the report, answer the following questions.

  1. How did you design the Question class? Why did you choose the constructors, methods, and properties that you provided?
  2. How did you line up the buttons and labels? Describe the procedure in detail. Which hints from chapter 4 were most useful?

Make sure you push multiple stages. First make a blank app so you have the outline for an iOS project and push that. (Note: Be sure not to tell XCode to manage your project with git, since you are managing the parent of the hw07 directory already.) Then design the Question class and push. Then do the rest and push as often as you like.

Tip: It is in your interest to do as much as you can before the exam.