QBasic was my first experience with programming. I was nine-years old (fourth grade) and we had a 386DX with MS-DOS and Windows 3.1.
I remember having fun hacking the code for Nibbler and Gorillas changing colors and constants and such.
So the most useful and complex program I made was a menu driven application which quizzed the user on math problems: there were ascending numeric levels of difficulty the user could choose from and I remember literally hardcoding 100 arithmetic problems checking the users response and telling them whether they got it wrong or not.
Not sure if I still have that code laying around, I think I might, I'll check tonight and post if I find it!
...alright! I found some stuff. This snippet is part of a file named "TEST1.BAS" and looks like an early version of the program described above. I believe I had a more complete version but it was lost when our hard drive crashed and we weren't able to recover all files.
CLS
PRINT
PRINT " menu"
PRINT "--------------"
PRINT "1. level 1"
PRINT "2. level 2"
PRINT "3. level 3"
PRINT "4. level 4"
PRINT "5. level 5"
PRINT "6. level 6"
PRINT "7. level 7"
PRINT "8. level 8"
PRINT "9. level 9"
PRINT "10. level 10"
PRINT "11. OTHER"
PRINT
INPUT "Your selection: ", choice%
PRINT
IF choice% = 1 THEN
CLS
DO
INPUT "what is 4 + 4 ? ", num
LOOP UNTIL num = 8
PRINT
PRINT "correct"
DO
INPUT "what is 8 - 6 ? ", num
LOOP UNTIL num = 2
PRINT
PRINT "correct"
DO
INPUT "what is 8 + 7 ? ", num
LOOP UNTIL num = 15
PRINT
PRINT "correct"
DO
INPUT "what is 9 - 4 ? ", num
LOOP UNTIL num = 5
PRINT
PRINT "correct"
DO
INPUT "what is 6 + 5 ? ", num
LOOP UNTIL num = 11
PRINT
PRINT "correct"
END IF
IF choice% = 2 THEN
CLS
DO
INPUT "what is 11 + 6 ? ", num
LOOP UNTIL num = 17
PRINT
PRINT "correct"
DO
INPUT "what is 21 - 5 ? ", num
LOOP UNTIL num = 16
PRINT
PRINT "correct"
DO
INPUT "what is 2 * 2 ? ", num
LOOP UNTIL num = 4
PRINT
PRINT "correct"
DO
INPUT "what is 14 + 8 ? ", num
LOOP UNTIL num = 22
PRINT
PRINT "correct"
DO
INPUT "what is 17 - 5 ? ", num
LOOP UNTIL num = 12
PRINT
PRINT "correct"
END IF
IF choice% = 3 THEN
END IF
IF choice% = 4 THEN
END IF
IF choice% = 5 THEN
END IF
IF choice% = 6 THEN
END IF
IF choice% = 7 THEN
END IF
IF choice% = 8 THEN
END IF
IF choice% = 9 THEN
END IF
IF choice% = 10 THEN
END IF