Programming C, C++, Java, PHP, Ruby, Turing, VB
Computer Science Canada 
Programming C, C++, Java, PHP, Ruby, Turing, VB  

Username:   Password: 
 RegisterRegister   
 My Quiz
Index -> Programming, Turing -> Turing Submissions
View previous topic Printable versionDownload TopicRate TopicSubscribe to this topicPrivate MessagesRefresh page View next topic
Author Message
qmanjr5




PostPosted: Tue May 18, 2010 10:34 am   Post subject: My Quiz

Here it is, some of my quiz that I made a few months ago and haven't gotten around to finishing or posting on here

Turing:

%Miscellanius
import GUI
Draw.FillBox (0, 0, maxx, maxy, black)
Text.Colour (brightgreen)
Text.ColourBack (black)

%Variables and values
var score : int := 0
var answer1 : string := "3"
var answer2 : string := "33000000"
var answer3 : string := "Barack Obama"

%Procedures and processes
process applause
    Music.PlayFile ("applause.MP3")
end applause

process boo
    Music.PlayFile ("boo.MP3")
end boo
process thinking

    Music.PlayFile ("thinking.MP3")
end thinking

procedure correct
    fork applause
    cls
    score += 1
    put "YAY! :) You got it right. Your score has been increased by 1"
    put "Press any key to continue"
    Input.Pause
    cls
end correct

procedure incorrect
    fork boo
    cls
    score -= 1
    put "Oh no :( You got it wrong. Your score has been decreased by 1"
    put "Press any key to continue"
    Input.Pause
    cls
end incorrect

procedure currentscore
    put "Your current score is ", score, ". Next question."
    put "Press any key to continue"
    Input.Pause
end currentscore

procedure finished
    put "CONGRATULATIONS! You've finished. Your final score was ", score, ". Good job."
end finished

%Maintest
procedure Maintest
    cls
    put "Hello, welcome to my quiz."
    put "First question"
    put "What is 1+1? (ex. 3 [No letters])"
    fork thinking
    get answer1 : *
    if answer1 = "2" then
        correct
    else
        incorrect
    end if
    currentscore

    put "Question two."
    put "What is the population of Canada? (Ex. 1000000 [No comma's, or letters])"
    fork thinking
    get answer2 : *
    if answer2 = "33000000" then
        correct
    else
        incorrect
    end if
    currentscore

    put "Question 3"
    put "Who is the president of the united states of america? (Case Sensitive [Full Name])"
    fork thinking
    get answer3 : *
    if answer3 = "Barack Obama" then
        correct
    else
        incorrect
    end if
    currentscore
end Maintest

%More
procedure start
    cls
    put "Press any key to start"
    Input.Pause
    Maintest
end start

procedure exittest
    quit
end exittest

procedure Instructions
    put "Insert instructions here"
end Instructions

%Menu
put "What do you want to do?"
var button1 : int := GUI.CreateButton (25, 25, 0, "Start the quiz", start)
var button2 : int := GUI.CreateButton (125, 25, 0, "Exit the game", exittest)
var button3 : int := GUI.CreateButton (225, 25, 0, "Instructions", Instructions)
loop
    exit when GUI.ProcessEvent
end loop
Sponsor
Sponsor
Sponsor
sponsor
chrisbrown




PostPosted: Tue May 18, 2010 10:47 am   Post subject: RE:My Quiz

It's nice to see some use of procedures rather than a hundreds of lines of mostly cut & paste, but since I see you appreciate the need for good code organization:
code:
var answer1 : string :=  "3"
var answer2 : string := "33000000"
var answer3 : string := "Barack Obama"

Use arrays for both questions and answers, and a for loop in Maintest to improve further (if you plan on doing so).
SNIPERDUDE




PostPosted: Tue May 18, 2010 1:17 pm   Post subject: RE:My Quiz

Arrays in for loops can significantly decrease code length.
I think this is the first time I've seen someone post a quiz programme with procedures here (at least the Turing forum, I don't really read too much of the rest)
qmanjr5




PostPosted: Thu May 20, 2010 10:29 am   Post subject: Re: RE:My Quiz

chrisbrown @ Tue May 18, 2010 10:47 am wrote:
It's nice to see some use of procedures rather than a hundreds of lines of mostly cut & paste, but since I see you appreciate the need for good code organization:
code:
var answer1 : string :=  "3"
var answer2 : string := "33000000"
var answer3 : string := "Barack Obama"

Use arrays for both questions and answers, and a for loop in Maintest to improve further (if you plan on doing so).


Yeah, I can't stand it if I can't organize my code somewhat Razz
And I've yet to learn arrays, I'll go do that right now.
qmanjr5




PostPosted: Thu May 20, 2010 10:30 am   Post subject: Re: RE:My Quiz

SNIPERDUDE @ Tue May 18, 2010 1:17 pm wrote:
Arrays in for loops can significantly decrease code length.
I think this is the first time I've seen someone post a quiz programme with procedures here (at least the Turing forum, I don't really read too much of the rest)


I've yet to learn a language where I didn't create a quiz, the first thing I make.
qmanjr5




PostPosted: Thu May 20, 2010 10:42 am   Post subject: Re: RE:My Quiz

chrisbrown @ Tue May 18, 2010 10:47 am wrote:
It's nice to see some use of procedures rather than a hundreds of lines of mostly cut & paste, but since I see you appreciate the need for good code organization:
code:
var answer1 : string :=  "3"
var answer2 : string := "33000000"
var answer3 : string := "Barack Obama"

Use arrays for both questions and answers, and a for loop in Maintest to improve further (if you plan on doing so).

I read the arrays tutorial...

I have a headache now Crying or Very sad
Display posts from previous:   
   Index -> Programming, Turing -> Turing Submissions
View previous topic Tell A FriendPrintable versionDownload TopicRate TopicSubscribe to this topicPrivate MessagesRefresh page View next topic

Page 1 of 1  [ 6 Posts ]
Jump to:   


Style:  
Search: