This project will introduce the database access using the ADO.NET
classes. You will create a multiple choice quiz that will
randomly select questions and answers from a database of
information.
Do the following:
Choose 50 vocabulary words in some foreign language.
If you are not familiar with any foreign language, you can make
up 50 words, or choose words from your native language
(preferably obscure ones).
Create a database table using Microsoft Access that contains
30 definitions for (up to) 30 of the 50 vocabulary words. The
definition should be in English. This table should have at
least three fields: One for the definitions, one for the primary
key for the definition, and one that contains the key for the
correct answer. You may make more than one table entry for
a particular word if a word can have more than one definition.
Create another table that contains each of your 50 words.
This table should have at least two fields: One for the word,
and another for the primary key for the word.
You will make a simple "Flash Card" type program. This
program will test the user on his/her vocabulary knowledge.
Your program should have a menu with three commands: "New Quiz,"
"About," and "Exit." The "About" and "Exit" commands
should show an About Dialog, and exit the program respectively.
The "New Quiz" command should clear any statistics for the
current game and start a new one.
When your program starts it
should automatically start a new quiz. Each quiz should
proceed as follows:
1) There will be 10 questions in a quiz.
2) Each question will show a randomly selected definition and a
randomly selected set of (at least 4) answers (one, of course,
will be the correct answer).
3) You will present the questions one by one to the user and
record their answers. At the end of the quiz you will show
their score.
Your form should consist of several label
controls to show the definition and the statistics. It
should also have a set of option/radio buttons for each answer.
It should also have a push button labeled "Next Question" which,
when pressed should proceed to the next question.
The
controls that show the questions should be hidden when not in a
test. The "Next Question" button should be grayed out when not
in a test, and its text should be changed to "Finish" when at
the last question.
The statistics you need to gather are
these: Keep a running tally of all questions answered and
all correct answers since the program started, and keep a
running tally of all questions answered and all correct answers
since the beginning of the current quiz.
At the end of each
quiz, display a message box which will give their score for the
quiz complete with a letter grade and a percentage.
Hints (You may choose to do things differently, but
these suggestions will simplify the project):
A procedure that reads the database and collects all the
questions and answers at the beginning of each new quiz would be
helpful.
You may want to use arrays store your questions and
answers.
When you are done:
When you have uploaded your project, please fill out the form below
to let me know.
Hours. (For example: 1.5 or 2)
Magic Box: (Questions, feedback, suggestions, short thought, short joke, ...)
By clicking the "Submit"
button you verify that you have
handed in your program.