(Обновление: теперь исправлено! Работает JSFiddle: https://jsfiddle.net/ayd0Lx3t/30/)
Я пытаюсь сгенерировать случайное число между 3 и 9, которое не имеет никаких коэффициентов с 12:
function gcdfunction(a, b) { // THIS FUNCTION GENERATES THE GREATEST COMMON DIVISOR BUT I'M GETTING A CONSOLE ERROR THAT { IS AN UNEXPECTED TOKEN
var gcd;
if ( ! b) {
return a;
}
return gcd(b, a % b); // I'M ALSO GETTING AN ERROR THAT THIS IS UNDEFINED
};
function randomBetween (min, max) { //THIS FUNCTION GENERATES A RANDOM NUMBER BETWEEN A GIVEN MIN & MAX
var ceiling = max + 1;
return Math.floor(Math.random() * (ceiling - min)) + min;
}
function GenerateRandomNumber3to9Excluding (min, max, b) {
var random;
var gcd;
do {
random = randomBetween(min, max);
gcd = gcdfunction(random, b); // THIS IS INTENDED TO CALL THE GCDFUNCTION DEFINED ABOVE
} while((gcd > 1)); // IF THE GCD > 1, IT GENERATES ANOTHER RANDOM NUMBER
alert(random);
}
var GenerateRandomNumber3to9No2 = GenerateRandomNumber3to9Excluding
(3,9,12);
Вот ссылка: https://jsfiddle.net/ayd0Lx3t/23/
Я чувствую, что есть несколько быстрых решений, что я просто невидя; любой совет будет высоко ценится. Спасибо!