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
https://metacpan.org/source/TOBYINK/Ask-0.007/examples/synopsis.plmy $answer = single_choice( text => "If a=1, b=2. What is a+b?", choices => [ [ A => 12 ], [ B => 3 ], [ C => 2 ], [ D => 42 ], [ E => "Fish" ], ], );
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!"); }
|
---|
In Section
Seekers of Perl Wisdom