Цикл for и изменение переменных
Напишите функцию isPrime. Она принимает число и возвращает true если число является простым, и false в ином случае.
Простое число — целое положительное число, имеющее ровно два различных натуральных делителя — единицу и самого себя. Например, 7 — простое число, потому что делится без остатка только на 1 и на себя. 2017 — другое простое число. Используйте цикл for и арифметические мутаторы. isPrime(1); // false isPrime(7); // true isPrime(10); // false
1 const isPrime = (num) =>{
2 let num1 = num
3 for(let counter = 2; num1 !== 0; counter++){
4 num1 %= counter
5 }
6 if ( counter === num) {
7 return true;
8 } else {
9 return false;
10 }
11
12 }
13 isPrime(2);
https://goo.gl/saJZJU в 6 строке пишет что counter не определен
const isPrime = (num) =>{
2 let num1 = num
3 for(let counter = 2; num1 !== 0; counter++){
4 num1 %= counter
5 let counter1 = counter;
6 }
7 if ( counter1 === num) {
8 return true;
9 } else {
10 return false;
11 }
12
13 }
14 isPrime(2);
пытался добавить переменную counter1 которая копирует counter и вытаскивает значение последнего делителя но все равно пишет что counter1 не определен const isPrime = (num) =>{ let num1 = num for(let counter = 2; num1 !== 0; counter++){ num1%= counter if ( counter === num) { return true; } if (num1 === 0){ return false; } } } Добавил условия внутрь цикла вроде работает, но проверку не проходит https://ru.hexlet.io/courses/introdu.../exercise_unit Run failed! Check and fix errors above! |
const isPrime = (num) =>{
if (num === 1 && num === 0){
return false;
}
let result = 1;
let counter1 = 1;
for(let counter = 2; result !== 0; counter++){
result = num % counter;
counter1 = counter;
}
if ( counter1 === num) {
return true;
}
else {
return false;
}
}
https://goo.gl/X9ZgU5 вроде все работает isPrime(1); // false isPrime(7); // true isPrime(10); // false но тестер на https://ru.hexlet.io/courses/introdu...unit#community не пускает говорит что зацикливание |
А вы попробуйте без аргументов вызвать функцию!
поставьте значение по умолчанию или
const isPrime = (num = 0) =>{
|
насчет 0 и 1 есть условие в первой строке возвращать false
|
Вы кажется не поняли, запустите функцию без числа.
|
| Часовой пояс GMT +3, время: 22:53. |