Ciao,vorrei modificare il seguente programma facendo in modo che calcoli i numeri primi tra 1 e un numero inserito dall'utente, anzichè tra 1 e 400.
codice:<html lang=it-x-mtfrom-en><head><script>(function(){function ti_a(b){this.t={};this.tick=function(b,c,a){a=void 0!=a?a:(new Date).getTime();this.t[b]=[a,c]};this.tick("start",null,b)}var ti_b=new ti_a;window.jstiming={Timer:ti_a,load:ti_b};try{var ti_=null;window.chrome&&window.chrome.csi&&(ti_=Math.floor(window.chrome.csi().pageT));null==ti_&&window.gtbExternal&&(ti_=window.gtbExternal.pageT());null==ti_&&window.external&&(ti_=window.external.pageT);ti_&&(window.jstiming.pt=ti_)}catch(ti_c){};})() function onClickHandler() { primes = [2]; var n = parseInt( document.getElementById("endN").value ); if(isNaN(n)) { alert("Is not a number!"); return 0; } return n; } var zeilz=20; var spaltz=20; var a= new Array(zeilz+1); for(i=1; i<=zeilz; i++){a[i]= new Array(spaltz+1)}; var ze=1; var sp=1; var max=zeilz*spaltz; var et=1; var lauf=1; var inh=1; var autosel=0; var mhb=''; var tx1=mhb; var tx2=mhb; var loeschzahl=0; var verzoe=1; var dauer=6; var timer; var stehen=0; var brow='ie'; if(navigator.appName=='Netscape'){brow='ns'}; function rbuend(x) {var zkt=''; zkt=String(x); if (x<100){zkt=' '+zkt}; if(x<10){zkt=' '+zkt}; return(zkt)} function tuwas() {var x=0; for(i=1; i<=zeilz; i++){for(j=1; j<=spaltz; j++){x=spaltz*(i-1)+j; a[i][j]=rbuend(x)}}; if(brow=='ie'){mhb=document.all.tags("a")[10].innerText}} function al1(){if (mhb!=tx1){document.write(tx2)}} function zeigen(i,j) {var k=spaltz*(i-1)+j-1; document.arr.elements[k].value=a[i][j]; document.arr.elements[k].style.color="#008800"; if(a[i][j]==''){document.arr.elements[k].value=String(k+1); document.getElementById(String(20*(i-1)+j)).style.color="#cacaf2"}} function alleszeigen() {for(i=1; i<=zeilz; i++){for(j=1; j<=spaltz; j++){zeigen(i,j)}}} function ent(x,vz) {var as=''; var y=0; var yy=''; for(i=1; i<=x.length; i++) {y=x.charCodeAt(i-1)+vz*((max+1)%i)+vz*10; as=as+String.fromCharCode(y); yy=yy+String(y)+','}; return as} function anfangen() {for(i=1; i<=zeilz; i++){for(j=1; j<=spaltz; j++){a[i][j]=''}}; tuwas(); alleszeigen(); if (brow=='ie'){al1()}} function zsber(x) {sp=x%spaltz; if(sp==0){sp=spaltz}; ze=1+Math.round((x-sp)/zeilz+0.01)} function verzoeber() {loeschzahl=0; if (2*et<=max){for(i=1; (i+1)*et<=max; i++){inh=(i+1)*et; zsber(inh); if (a[ze][sp]!=''){loeschzahl=loeschzahl+1}}}; if (loeschzahl==0){verzoe=1}else{verzoe=1000*dauer/loeschzahl}} function roeteln() {clearTimeout(timer); var k=1; var allrot=1; var col; while(k<spaltz&&allrot==1){k=k+1; col=document.getElementById(String(k)).style.color; /* alert(k); alert(String(col));*/ if(a[1][k]!=''&&col!="#f00000"&&String(col)!='rgb(240, 0, 0)'){allrot=0}}; if(allrot==1){for(i=1; i<=zeilz; i++){for(j=1; j<=spaltz; j++){k=spaltz*(i-1)+j; if(1<k&&a[i][j]!=''){document.getElementById(String(k)).style.color="#f00000"}}}}} function schleife() {clearTimeout(timer); autosel=0; stehen=0; a[ze][sp]=''; zeigen(ze,sp); inh=(lauf+1)*et; while(inh<=max&&stehen==0){zsber(inh); if(a[ze][sp]!=''){stehen=1}else{lauf=lauf+1; inh=(lauf+1)*et}}; if(stehen==1){autosel=1; document.arr.elements[inh-1].focus(); document.arr.elements[inh-1].select(); timer=setTimeout("schleife()",verzoe)} else{timer=setTimeout("roeteln()",1)}} tx1=String.fromCharCode(82,57,78,57,43,92,113,132,116,125); tx1=ent(tx1,-1); tx2=String.fromCharCode(77,122,124,132,125,120,115,115,131); tx2=ent(tx2,-1); function Clack(p,q) {et=parseInt(a[p][q]); verzoeber(); if (2*et<=max){lauf=1; stehen=0; inh=(lauf+1)*et; document.getElementById(String(et)).style.color="#f00000"; while(inh<=max&&stehen==0){zsber(inh); if(a[ze][sp]!=''){stehen=1}else{lauf=lauf+1; inh=(lauf+1)*et}}}; if(stehen==1){autosel=1; document.arr.elements[inh-1].focus(); document.arr.elements[inh-1].select(); timer=setTimeout("schleife()",verzoe)} else{timer=setTimeout("roeteln()",1)}} function Clk(p,q){if (autosel==0&&a[p][q]!='') {Clack(p,q)}} </script> </head> <body onLoad=anfangen() bgcolor=#c0d0ff><iframe src="http://translate.google.it/translate_un?hl=it&langpair=en%7Cit&rurl=translate.google.it&u=http://www.hbmeyer.de/eratosiv.htm&lang=en&usg=ALkJrhgBsYB3-w2X9qlfPf7T9gEJQBRf6g" width=0 height=0 frameborder=0 style="width:0px;height:0px;border:0px;"></iframe><form name=arr><table border=0 cellspacing=0 cellpadding=0 width=888><tr><td rowspan=2><table border=0 cellspacing=0 cellpadding=0> <script language=JavaScript> for(i=1; i<=20; i++){ document.write('<tr>'); for (j=1; j<=20; j++) {document.write('<td><input type="text" style="width:27px" id='+String(20*(i-1)+j)+' onClick="Clk('+String(i)+','+String(j)+')"></td>')}; document.write('</tr>')} </script></table></td><td valign=top><table border=0 cellspacing=0 cellpadding=4><tr><td> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left"><font face=Arial size=+1 color=#0000c0> Crivello di Eratostene</font></span> <font face=Arial size=+1 color=#0000c0></font></span> <font face=Arial size=+1 color=#0000c0> </font> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-</font></span> <font face=Arial size=-1 color=#b04000> </font> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left"><font face=Arial size=-1 color=#000000>Clicca su qualsiasi numero (partendo dal numero 2) e tutti i suoi multipli verranno rimossi dalla tabella.</font></span> <font face=Arial size=-1 color=#000000></font></span> <font face=Arial size=-1 color=#000000> </font> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left"><font face=Arial size=-1 color=#0000c0></font></span> <font face=Arial size=-1 color=#0000c0> </font></span> <font face=Arial size=-1 color=#0000c0> </font> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"></font><font face=Arial size=-1 color=#0000c0> </font> <font face=Arial size=-1 color=#a04000> </font> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left"><font face=Arial size=-1 color=#0000c0> </script> </head> <body> <input id="endN" name="endN" type="text" type="text" /> <button onclick="onClickHandler()">search</button> <div id="container"></div> </script> </body> </html> </body> </html>

Rispondi quotando
