GeoGebra

JSexPENTE

Jump to: navigation, search

Retour


Un exemple disséqué :

Exécuter Pente d'une droite


<html> <head> <title>Pente de droite</title>

<script type="text/javascript">

au lancement, je définis le tirage au hasard de deux nombres , nommés nh1 et nh2,

grâce à la commande random, nh1 entre -6 et 5 et nh2 entre 1 et 5

les // dans un script permettent de mettre un commentaire, ce qui suit sur la ligne est ignoré

function hasard1()
{ 
// tirer un nombre au hasard
var nh1 = 0;
nh1=Math.floor(-12*Math.random()+6);  // entre -6 et 5
return nh1;}
function hasard2()
{
var nh2 = 0;
nh2=Math.floor(5*Math.random()+1);  // entre 1 et 5
return nh2;}


nh2 sera le dénominateur de mon coefficient directeur, s'il est différent de 3, je n'ai pas voulu me prendre la tête dans ce galop d'essai avec un paquet de tests je veux simplement avoir à coup sûr un coefficient directeur décimal


je tire deux nombres nh1, l'un comme numérateur de mon coefficient directeur, l'autre comme ordonnée à l'origine (pourquoi l'ai-je appelé t et non p ?) (et pourquoi ai-je appelé m le numérateur de mon coefficient directeur, que j'appelle ensuite aussi m ?)

function creation(){
document.reponse.me.value=""
m = hasard1();
t = hasard1();
denom = hasard2();
if (denom == 3) denom = 1; // pente décimale
m = m/denom;
DessinDroite();}


Je fais dessiner la droite (D), définie comme Droite[A,B] mais non affichée dans le fichier .ggb,

en redéfinissant les points A d'intersection avec l'axe des ordonnées A=(0,t) et B=( \Delta x , t + \Delta y)

function DessinDroite(){
var applet = document.applets[0];
applet.evalCommand("A = (0,"+t+")");
applet.evalCommand("B = ("+denom+","+(t+m*denom)+")");
applet.setVisible('A', true);
applet.setVisible('B', true);}
applet.setVisible('D', true);}

ici vient la fonction d'analyse de la réponse de l'élève, le "m" élève "me" est lu dans le formulaire nommé reponse

action primaire, l'élève a donné la bonne réponse, i.e. me=m, on lui dit "Exact", il n'a pas donné la bonne réponse, on le renvoit à ses calculs par "Revoir ta réponse"

function testme(){
me=document.reponse.me.value;
if(m==me) alert("Exact !!");
else alert("Revoir ta réponse.");}

</script>

</head>

au lancement de mon fichier htm, on générera la construction d'une droite aléatoire

<body onload="creation()" >

<table border="0" width="970">

<tr>

<td>

<applet code="geogebra.GeoGebraApplet" codebase="."

archive="http://www.geogebra.org/webstart/geogebra.jar" height="520" width="480">

<param name="filename" value="EQDROITE.GGB">

<param name="framePossible" value="false">

</applet> </td> <td>

Ici, la partie importante, le formulaire,

entre deux balises "form", nommé reponse

avec son champ de réponse du "m" élève me

et l'appel à la fonction d'analyse "testme"

il est impératif que les noms soient identiques entre le formulaire et la fonction d'analyse de la réponse

<form name="reponse" method="get" action="eqdroiteTEST.htm">
<font color="blue"><p>Donne la pente de la droite. (D)<br> </p> pente =
<input size="8" maxlength="10" name="me"  type="text"></font><br><br>
<input type="button"  value="Tester ta réponse" onclick="testme();">
</form>

<p> Si tu veux te tester de nouveau sur une autre droite, clique
sur le bouton "Actualiser" de ton navigateur.</p> </td> </tr> </table>

<span style="font-size:small">

<a href="mailto:NLambert@ac-nancy-metz.fr?subject=eqdroite/GeogebraWiki" title="Merci de me faire parvenir toute remarque.">NLambert@ac-nancy-metz.fr</a>, 08/03/2006,Créé avec <a href="http://www.geogebra.org" target="_blank" >GeoGebra</a></span> </body> </html>


Retour