Geradentest
geradentest.html — HTML, 3 KB (3886 bytes)
Dateiinhalt
<html> <head> <style> div {display:inline-block; border:solid; vertical-align:middle} </style> <script> var aufg,punkt,typ,sx,sy,sz; var r1x,r1y,r1z,r2x,r2y,r2z,o1x,o1y,o1z,o2x,o2y,o2z,scale1,scale2; function NeueAufgabe() { aufg++; var aus="" typ=Math.floor(Math.random()*6); sx=Math.floor(Math.random()*40-20); sy=Math.floor(Math.random()*40-20); sz=Math.floor(Math.random()*40-20); if (typ==5 || typ==4) { scale1=Math.floor(Math.random()*10+1)*(Math.floor(Math.random()*2)*2-1) r1x=Math.floor(Math.random()*40-20); r1y=Math.floor(Math.random()*40-20); r1z=Math.floor(Math.random()*40-20); r2x=r1x*scale1; r2y=r1y*scale1; r2z=r1z*scale1; o1x=sx; o1y=sy; o1z=sz; scale2=Math.floor(Math.random()*10+1)*(Math.floor(Math.random()*2)*2-1) o2x=o1x+scale2*r1x o2y=o1y+scale2*r1y o2z=o1z+scale2*r1z if(typ==4) { o2x=o2x+r1y-r1z o2y=o2y-r1x o2z=o2z+r1x } } else { do { r1x=Math.floor(Math.random()*40-20); r1y=Math.floor(Math.random()*40-20); r1z=Math.floor(Math.random()*40-20); r2x=Math.floor(Math.random()*40-20); r2y=Math.floor(Math.random()*40-20); r2z=Math.floor(Math.random()*40-20); }while (r1x/r2x==r1y/r2y && r1x/r2x==r1z/r2z) scale1= Math.floor(Math.random()*10+1)*(Math.floor(Math.random()*2)*2-1) o1x=sx-scale1*r1x o1y=sy-scale1*r1y o1z=sz-scale1*r1z scale2=Math.floor(Math.random()*10+1)*(Math.floor(Math.random()*2)*2-1) o2x=sx-scale2*r2x o2y=sy-scale2*r2y o2z=sz-scale2*r2z if(typ==3) { o2x=o2x+(r1y*r2z-r1z*r2y) o2y=o2y+(r1x*r2z-r1z*r2x) o2z=o2z+(r1x*r2y-r1y*r2x) } else { typ=0; } } aus=aus+"<h2>Aufgaben: "+aufg+" Punkte: "+punkt+"<h2><hr><div style=\"border:none\">" aus=aus+"g:<div>x<br>y<br>z</div>=<div>"+o1x+"<br>"+o1y+"<br>"+o1z+"</div>+r*<div>"+r1x+"<br>"+r1y+"<br>"+r1z+"</div>" aus=aus+"<br><br>h:<div>x<br>y<br>z</div>=<div>"+o2x+"<br>"+o2y+"<br>"+o2z+"</div>+s*<div>"+r2x+"<br>"+r2y+"<br>"+r2z+"</div>" aus=aus+"</div>" document.getElementById("aufgabe").innerHTML=aus; } function startit() { aufg=0 punkt=0 NeueAufgabe() } function checkit() { var wahl,radio,i,aus; radio=document.getElementsByName("wahl"); for(i=0;i<radio.length;i++) { if (radio[i].checked) { wahl=radio[i].value-0; break; } } if (wahl==typ && (typ!=0 || (document.getElementById("ax").value==sx && document.getElementById("ay").value==sy && document.getElementById("az").value==sz))) { punkt++; document.getElementById("antwort").innerHTML="<h2>Richtig</h2>"; } else { if(punkt>-10){punkt-=2} aus="<h2>leider falsch</h2>"; if(typ==0) { aus=aus+"Schnittpunkt bei ("+sx+","+sy+","+sz+")<br>" aus=aus+"mit r="+scale1+" und s="+scale2+"<br>" } if(typ==3) { aus=aus+"Windschief<br>" } if(typ==4) { aus=aus+"Parallel<br><br> RV von h ist RV von g mal "+scale1+"<br>" } if(typ==5) { aus=aus+"Identisch<br> RV von h ist RV von g mal "+scale1+"<br>" aus=aus+"SV von h liegt auf g für r="+scale2+"<br>" } document.getElementById("antwort").innerHTML=aus; } NeueAufgabe(); } </script> </head> <body> <div id="antwort" style="border:none"></div><hr> <div id="aufgabe" style="border:none"></div><br> Die Geraden sind: <form> <input type=radio name="wahl" value="5" checked> Identisch<br> <input type=radio name="wahl" value="4"> Parallel<br> <input type=radio name="wahl" value="3"> Windschief<br> <input type=radio name="wahl" value="0"> Schneiden einander mit Schnittpunkt <br><div> x:<input type=text id="ax"><br>y:<input type=text id="ay"><br>z:<input type=text id="az"></div> <hr> <input type=button value="Absenden" onClick="checkit()"> </form> <script> startit(); </script> </body> </html>