úlohy s vyhodnocením správnosti

Pražanová Lenka shared this question 5 months ago
Answered

Chtěla jsem v GeoGebře vytvořit aplikaci, která by uměla vyhodnotit správnost konstrukční úlohy. Nemohu přijít na to, jak vyhodnocení nastavit a jestli to vůbec nějak jde.

Myslela jsem, že by to mohlo jít tak, že sestrojím správné řešení, které skyju a přes Boolovskou hodnotu nastavím porovnání s řešením a zobrazením nápisu SPRÁVNĚ. Ale narážím neustále na jeden problém. Když ale sestrojím správné řešení jako žák a dám pojmenovat výsledný kontrolní bod podle zadání (např. bod C), tak se ve správném skrytém řešení tento bod C přejmenuje na C_1 a upraví se taky Boolovská hodnota a bod C, i když je správně, nevyhodnotí jako OK (protože se v tuto chvíli nejmenuje C_1). Stačilo by, aby v nastavení kontroly (Boolovské hodnotě) nedošlo k přejmenování. Ale nevím, jak toho docílit. Možná to vůbec nejde.

Comments (9)

photo
1

Please post your .ggb file

photo
1

Dobrý den, děkuji za ochotu mi pomoci.

Sestrojila jsem jednoduchý příklad na trojúhelník. Ale vyhodnocení při správném řešení se nezobrazí. Pokud bych znala princip, jak by fungovala kontrola, tak bych žákům dávala složitější příklady. Pokud by se to povedlo, tak by mě ještě zajímalo, jak to udělat, kdyby úloha měla více řešení.

Děkuji moc za pomoc.

Pražanová Lenka

photo
photo
1

Es bräuchte einen Befehl IsExists("<objektname>").

Mit JavaScript anstelle von GGB-Script ist mehr möglich. Aber dieses Thema (Kontrolle der Konstruktion) kann nur sehr bedingt und teilweise gelöst werden.


Nicht immer (siehe Einschränkungen für Object() im Manual), aber in Deinem Beispiel trotzdem, funktioniert es wie im Anhang (weil C=(?,?) im Konstruktionsprotokoll vor kC definiert ist).

Beachte:

  • Object("C") --> in kC / übrigens, besser wäre: kC=Distance(Object("C"),C_s) < 10^-5
  • C=(?,?) --> also undefiniert


(Im Anhang: Konstuiere den Punkt D mit dem Werkzeug und benenne ihn um nach C)

photo
1

Vielen Dank :-)

Und ich sollte noch eine Frage haben.

Und wenn der Job mehr Lösungen hatte?

photo
1

kC=<condition1> || <condition2>

Anmerkung: die beiden Zeichen || sind zusammen gleich ∨ gleich oder

photo
1

Vielen Dank.Ich möchte immer noch fragen, dass, wenn die Aufgabe mehr Lösungen aufweist, und als ordnungsgemäßes Lösen von Beispielen, muss der Pupil alle Lösungen finden. Die Inschrift erscheint also richtig, bis alle korrekten Lösungen gefunden werden. Es wird wahrscheinlich in der Inschriftansicht richtig gelöst, oder?

photo
1

Falls 2 Lösungen (mit den zu bennenden Punkten C und D)

Es existieren die beiden Punkte C=(?,?) und D=(?,?) vor den folgenden Bedingugen


Variante1: der Schüler muss beide Lösungen angeben

kCD_1=Distance(Object("C"),C_s)<10^-5 && Distance(Object("D"),D_s)<10^-5

kCD_2=Distance(Object("D"),C_s)<10^-5 && Distance(Object("C"),D_s)<10^-5

kCD = (kCD_1 || kCD_2) && Object("C") != Object("D") <-- kCD verwendet in codition to show object

------------------------------

Variante2: Der Schüler muss mindestens eine der beiden Varianten angeben.


kCD_1=Distance(Object("C"),C_s)<10^-5 || Distance(Object("C"),D_s)<10^-5

kCD_2=Distance(Object("D"),C_s)<10^-5 || Distance(Object("D"),D_s)<10^-5

kCD = (kCD_1 || kCD_2) && Object("C") != Object("D") <-- kCD verwendet in codition to show object

-----------------------------

Note 1: variante 2 nicht getestet

Note 2: bei mehr als 3 Lösungsmöglichkeiten ist vermutlich eine Listenverarbeitung, die alle Kombinationen berücksichtigt, sinnvoll.

photo
1

Vielen Dank. Ich werde es versuchen.

photo
© 2021 International GeoGebra Institute