Talk about reminiscence... I'm over here in QuickBASIC still
Either way... the problem lies with having 3 If statements and one EndIf statement. It probably flags at the last line because of this? That's because it should expect the endifs before the end of the loop.
So, I will own up to my previous mistake...
Sorry!
Also with a Do... Loop like you have it will be so much better if you add a few of the following commands.
Just read the comments:
`Creates new seed for RND numbers
Randomize Timer()
`A type of loop that will exit on a condition
Repeat
Adjective = RND(4)
`Condition to exit for... and yes rnd numbers can be zero
Until Adjective > 0
`Times 2
Repeat
Noun = RND(4)
Until Noun > 0
`Main Loop
Do
Print "Hit Key": Wait KEY
Print "The " ;
` No need for that old ElseIf command nor If... EndIf blocks since for each if only one thing happens
If Adjective = 1 then Print "aback "
If Adjective = 2 then Print "wistful "
If Adjective = 3 then Print "ruthless "
If Adjective = 4 then Print "secretive "
If Noun = 1 then Print "carpenter"
If Noun = 2 then Print "plantation"
If Noun = 3 then Print "railway"
If Noun = 4 then Print "appliance"
Wait KEY
CLS
`Get new seeds for RND numbers EVERY loop
Randomize Timer()
`Get more numbers within loop
Repeat
Adjective = RND(4)
Until Adjective > 0
Repeat
Noun = RND(4)
Until Noun > 0
`End of loop
Loop
If at first you dont succeed, LOWER YOUR STANDARDS.