Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 09.06.2022, 21:33
Профессор
Отправить личное сообщение для NovichokJS Посмотреть профиль Найти все сообщения от NovichokJS
 
Регистрация: 25.04.2022
Сообщений: 159

ребята, а можно мастер-класс? Сможете решить это с помощью метода reduce?)

const getPrimes = n => {
    const a = [];
    for (let i = 1; i <= n; i++) {
        let ok = true;
        for (let j = 1; j < a.length; j++) {
            if (i % a[j] === 0) {
                ok = false;
            }
        }
        if (ok === true) a.push(i);
    }
    return a;

}
Ответить с цитированием
  #12 (permalink)  
Старый 09.06.2022, 21:51
Аватар для Alexandroppolus
Профессор
Отправить личное сообщение для Alexandroppolus Посмотреть профиль Найти все сообщения от Alexandroppolus
 
Регистрация: 25.10.2016
Сообщений: 1,012

Сообщение от NovichokJS
без флага let ok = true, никак нельзя?
const getPrimes = n => {
    const a = [];
    lab: for (let i = 1; i <= n; i++) {
        for (let j = 1; j < a.length; j++) {
            if (i % a[j] === 0) {
                continue lab;
            }
        }
        a.push(i);
    }
    return a;
}


https://learn.javascript.ru/while-fo...break-continue
Ответить с цитированием
  #13 (permalink)  
Старый 09.06.2022, 21:55
Профессор
Отправить личное сообщение для NovichokJS Посмотреть профиль Найти все сообщения от NovichokJS
 
Регистрация: 25.04.2022
Сообщений: 159

Сообщение от Alexandroppolus Посмотреть сообщение
const getPrimes = n => {
    const a = [];
    lab: for (let i = 1; i <= n; i++) {
        for (let j = 1; j < a.length; j++) {
            if (i % a[j] === 0) {
                continue lab;
            }
        }
        a.push(i);
    }
    return a;
}


https://learn.javascript.ru/while-fo...break-continue
понять бы как работает в строке 3 это
lab:
Ответить с цитированием
  #14 (permalink)  
Старый 09.06.2022, 21:59
Профессор
Отправить личное сообщение для NovichokJS Посмотреть профиль Найти все сообщения от NovichokJS
 
Регистрация: 25.04.2022
Сообщений: 159

по ссылке, которую вы дали, не нахожу чтобы понять что такое метка lab; и как оно работает
Ответить с цитированием
  #15 (permalink)  
Старый 09.06.2022, 22:44
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

Сообщение от NovichokJS
с помощью метода reduce?)
и какой массив будем перебирать?
Ответить с цитированием
  #16 (permalink)  
Старый 09.06.2022, 22:47
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

Сообщение от NovichokJS
что такое метка lab; и как оно работает
без lab continue прыгнуло бы на j++, а с lab на i++.
Ответить с цитированием
  #17 (permalink)  
Старый 09.06.2022, 23:00
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109


const getPrimes = length => {
            return Array.from({
                length
            }, (_, i) => ++i).reduce((a, b) => {
                let max = Math.floor(Math.sqrt(b));
                if (a.slice(1, max).every(e => b % e)) a.push(b);
                return a
            }, [])
        }
    console.log(getPrimes(120))
Ответить с цитированием
  #18 (permalink)  
Старый 09.06.2022, 23:13
Профессор
Отправить личное сообщение для NovichokJS Посмотреть профиль Найти все сообщения от NovichokJS
 
Регистрация: 25.04.2022
Сообщений: 159

Сообщение от рони Посмотреть сообщение

const getPrimes = length => {
            return Array.from({
                length
            }, (_, i) => ++i).reduce((a, b) => {
                let max = Math.floor(Math.sqrt(b));
                if (a.slice(1, max).every(e => b % e)) a.push(b);
                return a
            }, [])
        }
    console.log(getPrimes(120))
ооогоо))) думал полегче будет)
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как найти простые числа в массиве? Brava Общие вопросы Javascript 10 13.09.2021 11:39
Простые числа, не превосходящие заданного числа. jutochka123 Общие вопросы Javascript 2 30.09.2017 13:05
JS задача. Взаимно простые числа sashok Общие вопросы Javascript 5 23.11.2014 10:16
Есть числа от (0 до 100) что бы все эти числа были заменины в итоге например 110 impi Общие вопросы Javascript 4 08.10.2014 08:30
число 76.4705882.. сделать 76.47? (числа всегда разные) TongaG Ваши сайты и скрипты 3 19.01.2010 07:35