Salutare!
Cum ar trebui scris un cod pentru a genera un numar de genul: 0729 adica un numar din 4 cifre diferite (de la 0 la 9)?
Mutumesc frumos!
O zi buna sa dea Domnu'!
Generare numere aleatoare in JavaScript
-
- Mesaje:2
Generare numere aleatoare in JavaScript
MarPlo
Mesaje:4343
Salut
1. Functia randomNr() din urmatorul exemplu returneaza un numar aleator intre un minim si maxim dat.
Pote returna numere cu un numar diferit de caractere.
2. Functia randomNrDigits() din urmatorul exemplu returneaza un numar aleator, cu un numar de caractere specificat.
Numarul returnat poate avea cifre care se repeta.
3. Functia randomNrUniqueDigits() din urmatorul exemplu returneaza un numar aleator cu un numar de caractere specificat.
Numarul returnat va contine cifre care nu se repeta.
1. Functia randomNr() din urmatorul exemplu returneaza un numar aleator intre un minim si maxim dat.
Pote returna numere cu un numar diferit de caractere.
Cod: Selectaţi tot
<script>
//Returns a random integer between min (inclusive) and max (inclusive)
function randomNr(min, max){
return Math.floor(Math.random() * (max - min + 1)) + min;
}
//Test
var nr_al = randomNr(1, 9999);
alert(nr_al); //78 /355 /7098
</script>
2. Functia randomNrDigits() din urmatorul exemplu returneaza un numar aleator, cu un numar de caractere specificat.
Numarul returnat poate avea cifre care se repeta.
Cod: Selectaţi tot
<script>
//Returns a random integer with a specified number of digits (nd)
function randomNrDigits(nd){
var n0 =1;
for(var i=1; i<nd; i++) n0 +='0';
return Math.floor((1*n0) + Math.random() * (9*n0));
}
//Test
var nr_al = randomNrDigits(4);
alert(nr_al); //3424
</script>
3. Functia randomNrUniqueDigits() din urmatorul exemplu returneaza un numar aleator cu un numar de caractere specificat.
Numarul returnat va contine cifre care nu se repeta.
Cod: Selectaţi tot
<script>
//Returns a random integer with digits that not repeat, with specified number of digits (nd)
function randomNrUniqueDigits(nd){
var ar_nr =[0,1,2,3,4,5,6,7,8,9];
for(let i = ar_nr.length -1; i >0; i--){
let j = Math.floor(Math.random() * (i + 1));
[ar_nr[i], ar_nr[j]] = [ar_nr[j], ar_nr[i]];
}
return ar_nr.splice(1, nd).join('')*1;
}
//Test
var nr_al = randomNrUniqueDigits(4);
alert(nr_al); //5940
</script>
constantin
Mesaje:2
Multumesc mult! Si daca am ajuns in ultima zi a anului 2017 eu iti urez din toata inima:
La multi ani cu sanatate!
La multi ani cu sanatate!