Created
January 30, 2015 21:00
-
-
Save denysdovhan/5dfb779d8076150fff22 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Оборачиваем весь код в функцыю-замыкание | |
// чтобы изолировать код | |
(function() { | |
'use strict'; // Использовать строгий синтаксис | |
var simpleNumbers = function (N) { // Оглашаем функцыю | |
var simple = 2, // Простое число | |
simples = [1]; // Массив из простых чисел | |
// В условии проверяем или аргумент функцыи неотрицательное число | |
// и есть ли аргумент вообще числом | |
if (N < -1 || typeof N !== 'number') { | |
return null; // если нет, то возвращаем null | |
} | |
// Цыкл пока простые числа меньше N | |
while (simple <= N) { | |
var isSimple = true; // Флажок для проверки есть ли число протым | |
for (var i = 2; i < simple; i++) { | |
// Проверяем число: | |
// Если делиться на какое-либо число, останавливаем цыкл | |
if (simple % i === 0) { | |
isSimple = false; // число не простое | |
break; | |
} | |
} | |
// Если простое, тогда заносим его в масив уже найденых числе | |
if (isSimple) { | |
simples.push(simple); | |
} | |
simple++; // Увеличиваем простое число. | |
} | |
// После того как цыкл отработает, возвращаем масив чисел | |
return simples; | |
}; | |
// Тестовый вывод масива всех простых чисел до 27 в консоль | |
console.log(simpleNumbers(27)); | |
})(); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment