[JS] Numere prime
Last Updated: Mar 05 2020 23:05, Started by
AlexandruSD
, Mar 04 2020 22:47
·
0
#1
Posted 04 March 2020 - 22:47
Salut, chiar dacă nu este o problemă în special de scripting, ci una de algoritmica, aș vrea și eu puțin ajutor în rezolvarea acestei probleme. Vă mulțumesc frumos.
Enunțul este următorul: Se citesc N numere naturale. Să se calculeze și afișeze câte numere prime s-au introdus. Se va scrie o funcție separată pentru număr prim. Am încercat codul, dar nu rulează exact ce trebuie: <!DOCTYPE html> <html> <body> <script> function nrPrime(N){ var N=Number(prompt("N: ")); var contor=0; for(var i=1; i<=N; i++){ nr=Number(prompt("Nr: ")); if(nr%i==0)contor++;} alert("S-au introdus: "+contor+" numere prime.");}//nrPrim() nrPrime(); </script> </body> </html> |
#2
Posted 05 March 2020 - 11:35
#3
Posted 05 March 2020 - 12:55
Nu am multe cunoștințe in programare, am scris funcția aceasta:
function nrPrime(N){ var N=Number(prompt("N: ")); var contor=0; for(var i=1; i<=N; i++){ nr=Number(prompt("Nr: ")); if(nr%i==0)contor++;} alert("S-au introdus: "+contor+" numere prime.");}
Edited by MarianG, 05 March 2020 - 13:49.
|
#4
Posted 05 March 2020 - 13:11
O functie care sa testeze daca un numar este prim ar trebui sa arate cam asa:
function isPrim(n) { for (var i=2; i<=Math.sqrt(n); i++) { if (n%i==0) { return false; } } return true; } Si testezi cu functia asta fiecare numar introdus, daca returneaza true cresti acel contor. In loc de linia if(nr%i==0)contor++;ar trebui sa scrii if(isPrim(nr)) contor++; Edited by sergiu_psc, 05 March 2020 - 13:13. |
#5
Posted 05 March 2020 - 13:47
function nrPrime(N){ var N=Number(prompt("N: "));de ce N si nu altceva ? |
#7
Posted 05 March 2020 - 23:05
sergiu_psc, on 05 martie 2020 - 13:11, said:
O functie care sa testeze daca un numar este prim ar trebui sa arate cam asa: function isPrim(n) { for (var i=2; i<=Math.sqrt(n); i++) { if (n%i==0) { return false; } } return true; } Si testezi cu functia asta fiecare numar introdus, daca returneaza true cresti acel contor. In loc de linia if(nr%i==0)contor++;ar trebui sa scrii if(isPrim(nr)) contor++; Mersi frumos, am înțeles acum faza cu funcția, am modificat, dar văd ca nu se deschide nimic în web, îmi poți spune unde am greșit?.. <!DOCTYPE html> <html> <body> <script> function nrPrime(n){ for(var i=2; i<=Math.sqrt(n); i++){ if(n%i==0){return false;} } retur true;}//nrPrime(n) var N=Number(prompt("N: ")); for(var i=1; i<=N; i++){ var nr=Number(prompt("Nr: ")); if(nrPrime(nr))contor++;} alert("S-au introdus: "+contor+" numere prime."); </script> </body> </html> |
Anunturi
Bun venit pe Forumul Softpedia!
▶ 0 user(s) are reading this topic
0 members, 0 guests, 0 anonymous users