JSFiddle - React, Tailwind, and code Playground

by Evgeniy Lukovsky

HTML

<div ng-app="myApp">
    <div ng-controller="controller">
        <dl> <dt>currentNum</dt>

            <dd>
                <input type="text" placeholder="something" ng-model="currentNum" />
            </dd> <dt>Filter</dt>

            <dd>
                <input type="text" placeholder="something" />
            </dd>
            <p ng-model="currentNum"></p>
            <ul>
                <li ng-repeat="prime in primeNumbers">{{prime}}</li>
            </ul>
    </div>
</div>

JavaScript

'use strict';

angular.module('myApp', []).
filter('objFilter', function () {

});
//Пожалуйста напишите программу на Assembler, которая считает цифры от 2 до 997. Используйте для узнавания простых чисел Решето́ Эратосфе́на. При этом из последовательности натуральных чисел одного интервала вычеркиваются кратные из ранее опеределённых цифр начиная с начала и поочереди
/* Controllers */

function controller($scope) {
    var MAX_NUM = 997;
    $scope.numbers = [];
    $scope.primeNumbers = [];
    $scope.currentNum = 2;
    fill($scope.numbers);
    reduceAll($scope.numbers);

    function fill(numbers) {
        for (var i = 0; i < MAX_NUM + 1; i++) {
            numbers.push(i);
        }
    }

    function iteration(numbers, currentNum) {
        for (var i = 2 * currentNum; i < MAX_NUM + 1; i += currentNum) {
            numbers[i] = 0;
        }
    }

    function reduceAll(numbers) {
        for ($scope.currentNum = 2; $scope.currentNum < MAX_NUM + 1; $scope.currentNum++) {
            if (numbers[$scope.currentNum] === 0) {
                continue;
            }
            $scope.primeNumbers.push($scope.currentNum);
            iteration(numbers, $scope.currentNum);
        }
    }
}