At least 20 different commands.
Program must run without errors. And if your program uses other files, such as images, be sure to include them when submit
Program must be an original work. (No copying of codes between students.)
Program must include at least 1 loop (for-next and/or do-loop) and at least 1 decision structure (if-else-end if and/or case select).
Program must involve the user (with input statements, etc.).
Program must include at least 1 of either a function or subroutine written by the student. (See Chapter 7.)
Program must include some sort of graphics. (See Chapter 12, displaying a jpeg. image is also acceptable.)
Must have a list of all commands (as comments) at the beginning of the program. List the type of the commands rather than what the commands are being used for (such as “input”, not “asking user for their name”)
Must have comments throughout the program to describe what your program is doing.It is encouraged to have as much comments as possible.
You can use the sample projects posted for ideas, and can use the code as an example of how to do certain things (such as involvement of the mouse, display a color changing title, etc.), but don’t directly copy the sample code.
When using colors, try not to use dark text on a dark background, as this makes it very difficult to read (such as blue text on a black background).
Commands that exist only in combinations do not count as separate commands. This means if-else-end if, for-next, read-data, do-loop, select case-end select, etc. count as only 1 command each. Note that elseif does count as an additional command if used.
Commands that do essentially the same thing do not count as separate commands. Examples of this include input-input prompt-line input, let-option nolet, box circle-box ellipse, etc. The use of these would only count as 1 command used. Note that if the different input statements are used for a specific reason, such as using line input to have the user enter a whole sentence, then they can be counted as different commands (mention this with a comment).
Repeated use of the same command does not count as “separate” commands.
“End” does not count as a command since this is indispensable in every program.
Most commands, functions, etc. listed in the book count. Some commands count but may not be obvious, examples of them are listed below:
End data/more data
Use of substrings (string$[x:y])
Call (a subroutine)
Declare (a function)
Dim (an array)
Print using (“###.##”)
The functions listed in chapter 5 (round(), repeat$(), tab(), val(), pos(), Ucase$(), etc.), and the graphics statements in chapter 12 (set window, plot lines, plot text, set color, flood, box area, box clear, box circle, etc.) all count as commands, using some of these functions or graphics is an easy way to add commands.
When asking for user input, write your program such that the case of the input does not matter (or make your input instructions very clear in what case you are interested in). For example, if you asked a yes/no question, and used a line like “if ans$=’Y'”, this would not accept answers like “Yes”, “y”, “yes”, etc. You can use the following way to address this: look at only the first character of the answer using “ans$[1:1]” and make it uppercase using “Ucase$()”. By doing that your program will accept “YES”, “Yes”, “yes”, “Y”, “y”, etc. as answers.