Ĉi tio estas maŝine tradukita teksto kiu povas enhavi erarojn!
Malfacileco: 
Kreu kviz-ludon kiu demandas demandojn kun respondo-opcioj, kaj la uzanto devas respondi la demandojn.
La respondo-opcioj povas ekzemple esti (A/B/C/D), aŭ io alia se tio taŭgas.
Se la ludanto respondas ĝuste, ili ricevu unu poenton. Kalkulu la poentaron post iom da tempo kaj eldonu la rezultaton fine!
Iom pri kiel tio povus esti farata
Dictionaries
Por teni kontrolon pri la demandoj en Python, eble estas saĝe uzi “Dictionary”. Vi povas legi pri vortaroj ĉi tie ĉe w3schools.
Vortaro estas datastrukturo (Wikipedia) kiu povas enhavi diversajn elementojn.
Start-kodo por demandoj (vi povas kopii-glui)
questions = [
{
"question": "Kio estas la ĉefurbo de Norvegio?",
"answers": ["A. Bergen", "B. Oslo", "C. Trondheim", "D. Stavanger"],
"correct_answer": "B"
},
{
"question": "Kiom alta estas Mt. Everest?",
"answers": ["A. 2469m", "B. 9330m", "C. 8848m", "D. 5895m"],
"correct_answer": "C"
},
{
"question": "Kiu planedo estas konata kiel 'la ruĝa planedo'?",
"answers": ["A. Venuso", "B. Marso", "C. Jupitero", "D. Platon"],
"correct_answer": "B"
},
{
# sekva demando
},
# pli da demandoj malsupre...
]
Poste uzu for-ciklon kiu elprenas valorojn el ĉi tio.
Alia maniero fari tion
Eble vi povas uzi range ĉi tie por elpreni la demandojn:
for i in range(len(questions)):
current_question = questions[i]
[0], tiel signifas, ke vi elprenas la unuan elementon, do, la unuan demandon. Poste vi povas uzi current_question["question"] por elpreni apartan valoron.
La variablo estas uzata por teni kontrolon pri kiu demando ni estas.
Ĉi tion vi devas inkludi:
- ✅ Estu almenaŭ 7 demandoj en la listo.
- Jen povas esti utile krei konkurson, kiu temas pri specifa temo.
- ✅ Uzu variablon por teni spuron de la rezulto.
- ✅ Uzu
for-ciklon por trairi la liston de demandoj. - ❗ Volonte eldonu ĉu la respondo estis ĝusta aŭ falsa kiam la uzanto respondas!
- ✅ Kiam la ludo finiĝis, vi devas eldoni kiun rezulton la ludanto ricevis.
Tips til framgangsmåte
- Vi devas uzi
input()por ricevi el la uzanto.- Sugero: komparu tion kun
correct_answer
- Sugero: komparu tion kun
- Pliigu la poenton je 1 post kiam vi kontrolis ĉu la respondo estas ĝusta.
Ekstra!
- Permesas, ke la demandoj aperu en alea ordono ĉiufoje, kiam vi ludas!
Indiko:
Vi povas fari tion per la sekva maniero:
import random
random.shuffle(questions)
- Modifu la elspecon tiel ke ĝi elspeku jene:
Vi ricevis 5 / 7 poentojn!- Sugero: Vi devas uzi
len(questions)por trovi kiom da demandoj ekzistas.
- Eble ankaŭ aldonu manieron doni agrablan mesaĝon se vi ricevis pli ol certa kvanto da poentoj!
Ekstra aleatore - Malfacila!
- Se vi volas, vi ankaŭ povas fari tiel ke la respondo-opcioj ankaŭ aperu en aleatora ordo.
- Vi devas aŭtomatigi la manieron per kiu vi elspekas la respondo-opciojn.
- Anstataŭ “hard-codi”
A,B,Ckaj tiel plu, ĉi tio povas esti aŭtomatigita!
- Modifu vian kodon por uzi funkciojn por fari la kodon pli ordigita!
Ekzemploj de funkcioj:
print_question(question)- elprintas la demandon kaj la respondo-opciojn
check_valid_answer(question, user_answer)- redonas
TrueaŭFalseĉi tie bazite ĉu ĝi estas valida. - ĉi tiu funkcio eble inkluzivas la logikon por permesi al la ludanto respondi denove se la respondo estas invalida.
- redonas
check_correct_answer(question, user_answer)- redonas
TrueaŭFalseĉi tie bazite ĉu la respondo estas ĝusta aŭ ne.
- redonas
- Fiksu la programon tiel, ke ĝi ne kraŝu se vi enigas nevalidan respondon, do se ĝi ne estas
A, B, C, D. - Permesu al la uzanto respondi denove se tio okazas.
- Modifu la “dictionary”-on por inkludi kampon, kiu havas klarigon pri la kialo, kial la respondo estas ĝusta.
- Elprintu tion kiam la uzanto respondas erare.
- 💾 Modifu la kodon por legi la demandojn de la kvizo el “.json”-dosiero.
- Kreu pli da kvizojn uzante plurajn “.json”-dosierojn, unu por ĉiu kvizo.
- Vi povas lasi la ludanton elekti ĉi tiun kiam la ludo komenciĝas!
✏️🔥 Kreu vian propran kvizon! - Malfacila!
- Kreu reĝimon en via programo, kie vi povas krei propran kvizon.
- ✅ Vi povas poste konservi ĉi tiun kvizon al “.json”-dosiero.
- Modifu la elekto-kodon por aŭtomate (🧙♂️) elpreni ĉiujn kvizojn, kiuj ekzistas en dosierujo.
- Por tio, vi povas modifi la JSON-on al dictionary, kiu havas kampon “quiz_name” ĉe la supro de la kvizo. Ĉi tio estas elprintita kiam la ludanto devas elekti, kiun kvizon ludi.