Modul testů (QUIZ)

Modul testů (QUIZ)

autor Michal Michna -
Počet odpovědí: 3
Dobrý den,
jsem tu nově příchozí, avšak měl bych celkem náročný dotaz. Moodle používám již cca týden a tak je znalost dané problemtatiky zatím mlhavá. Jedná se o úpravu vyhodnocování testů v modulu quiz. Potřeboval bych poradit (nebo správně navést) v jakém skriptu (případně řádku) dochází k vyhodnocování otázek ve smyslu:

výsledný počet bodů za otázku = procenta dosažených správných odpovědích * počet bodů za otázku.

Konkrétně se mi jedná o to, pokud má otázka několik správných odpovědí, tak pro získání daného počtu bodů za otázku je nutné mít označeny všechny správné odpovědi. Pokud je nějaká odpověď špatně a nebo nejsou označeny všechny správné - počet dosažených bodů je 0.

Zatím jsem ve svém studiu systému moodle došel k závěru, že nejjednodušší bude nastavit pro správné otázky takovou hodnotu, aby v celkovém součtu dávaly 100%. Za špatnou otázku se bude suspendovat třeba 50%.

Do skriptu který pak vyhodnocuje otázku by se přidala podmínka, pokud dosažený součet počet není 100 procent, přiděl 0 bodů. Pokud je 100% přiřaď plný počet bodů za otázku.

Budu moc rád za jakékoliv návrhy a nápady. Případně by bylo dobré tuto volbu navrhnout do další verze systému.





Počet hodnocení: -
V odpovědi na Michal Michna

Re: Modul testů (QUIZ)

autor David Mudrák -
Obrázek: Moodle HQ Obrázek: Obzvláště nápomocní moodlisté Obrázek: Překladatelé Obrázek: Vývojáři
Zdravíčko, Michale - vítejte mezi Moodlisty mrknout

Potvrzuji to, na co jste sám přišel - ve stávajících verzích tato varianta "všechno nebo nic" neexistuje. Tim Hunt, autor a maintainer modulu Quiz, nevylučuje, že by se taková věc v budoucnu objevila. Momentálně však nedisponuje ani časem, ani dostatečnou vůlí tento typ testové úlohy napsat - viz jeho vyjádření.
Implementaci modulu Quiz do podrobna neznám, takže vás nenavedu z hlavy. Nicméně příslušná logika vyhodnocování by měla ležet někde v /question/type/multichoice

--mudrd8mz
V odpovědi na David Mudrák

Re: Modul testů (QUIZ)

autor Michal Michna -
Děkuji za typ. Už jsem to zprovoznil. Stačí do skriptu

question/type/multiplechoice/questiontype.php na řádek 370 vložit tento kód:

//======================================================================
// Uprava vyhodnocovani vsechno nebo nic
// tentyz kod umisten v question/questiontype.php
// Provedeno: Michal Michna - 19.5.2008

if($state->raw_grade < $question->maxgrade){
$state->raw_grade=0;
}
else{
$state->raw_grade = $question->maxgrade;
}
//======================================================================

pokud neni dosazeno 100 pocet procent pro danou otazku tak je bodovy zisk 0, v opacnem pripade je zisk plny pocet bodu.

Zatím jsem si nevšiml žádných vedlejších účinků a funguje to uvedeným způsobem.

S pozdravem Michal Michna