- cross-posted to:
- nostupidquestions
- cross-posted to:
- nostupidquestions
I am trying to create a random question generator on perchance.org for practicing responding to french questions. I currently have a generator that selects questions from a list of questions (“outputa”) (https://perchance.org/4ewrtclbl5#edit).
For example, I have the following in my HTML area:
<h1>[title]</h1>
<h2>[title2]</h2>
<h3>[title3]</h3>
<br> Select Random Question <br><br>
<h4>[title4]</h4>
<div> [outputa] </div>
and I have defined the objects (title, title2, etc.) as follows:
title=Random Question Generator
title2=Second Language Evaluation – Oral Language Assessment
title3=French Level B & C
title4=Question:
title5=Des trucs et des astuces:
outputa
//Decriver ou expliquer au present
Où travaillez-vous?
Où vous situez-vous au travail?
Expliquez et précisez le rôle de votre ministère.
Expliquez et précisez le rôle de votre direction.
…
//Raconter au passé
Comment votre travaille a affecté par la pandemie ?
Durant votre carrière, qu’est-ce qui a été le plus satisfaisant jusqu’ici?
…
This works well right now, but I would like to improve the generator to be more helpful. Essentially, within the list of questions, there are a number of different styles of questions (i.e. “Decriver ou expliquer au present”, “Raconter au passé”, etc.). For each style of question, there is a strategy to follow when responding to it. To improve this exam aid, I would like to add some standard text under the random question to identify the type of question and to provide some tips for responding based on the type of question.
I was thinking this could be done by first randomly select ing a style of question from one list, and then based on the style of question selected, I could select a random question of that style, and then print the random question along with the standard text. Is there a straightforward way to do this?
Thank you in advance!!
Hello! You can probably structure your
outputa
with something like:output style tip = Text question1 question2 ... ...
Here’s how to use that:
- Then to get a ‘question’, you can use
[output.selectOne]
. - But, since we want to get the style, we can store that question to a variable like so:
[x = output.selectOne]
then use the.getName
property to get the name of the item that we selected like[x.getName]
. - Essentially,
.selectOne
outputs astyle
list, but Perchance will then evaluate it to a ‘question’ under that style, so we can get the style of that item by getting the name of the list that has that item. - Lastly, we can then access the
tip
under that style with[x.tip]
. This is a ‘property’ of the list and will not be selected when selecting a question. Essentially a local variable under that list.
[x = output.selectOne] - evaluates to -> [x = style] -> [style] -> question [x.getName] -> [style.getName] -> style [x.tip] -> [style.tip] -> tip
So here is a demo of that structure, with the ‘minimal’ template lists. Cheers!
This is incredibly helpful, thank you @VioneT !!
- Then to get a ‘question’, you can use