Beefy Boxes and Bandwidth Generously Provided by pair Networks
laziness, impatience, and hubris
 
PerlMonks  

Re: How could I create a command line quiz?

by Anonymous Monk
on Mar 10, 2020 at 22:31 UTC ( #11114107=note: print w/replies, xml ) Need Help??


in reply to How could I create a command line quiz?

Now I'm not necessarily interested in the answer, but more if I'm thinking about this problem in the correct way. After chewing on this issue for a week, I'm thinking along the lines of hashes being more appropriate since a quiz question can be associated with an answer. Any advice please?

Congratulations, your journey has begun

This is how you should think about it

first Think of verbs

StartQuiz( $quizfile, $userfile ); ... sub StartQuiz { my( $quizfile, $userfile ) = @_; for my $question ( Questions( $quizfile ) ){ my $answer = GetAnswer( $question ); SaveAnswer( $userfile, $question, $answer ); } }

first Think of verbs

Write a few of these loops before thinking about data structures

More ideas

Term::Interact prompting loop idea, https://metacpan.org/source/TOBYINK/Ask-0.007/examples/multiple-choice.pl

my $answer = single_choice( text => "If a=1, b=2. What is a+b?", choices => [ [ A => 12 ], [ B => 3 ], [ C => 2 ], [ D => 42 ], [ E => "Fish" ], ], );
https://metacpan.org/source/TOBYINK/Ask-0.007/examples/synopsis.pl
if ($ask->question(text => "Are you happy?") and $ask->question(text => "Do you know it?") and $ask->question(text => "Really want to show it?")) { $ask->info(text => "Then clap your hands!"); }

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://11114107]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others wandering the Monastery: (4)
As of 2022-05-22 11:58 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    Do you prefer to work remotely?



    Results (80 votes). Check out past polls.

    Notices?