+ Ответить в теме
Показано с 1 по 3 из 3

Тема: не могу понять как работает javascript

  1. #1
    dummy golferum is on a distinguished road
    Регистрация
    02.08.2013
    Сообщений
    3
    Вес репутации
    0

    По умолчанию не могу понять как работает javascript

    <script>
    nextPrime:
    for(var i=2; i<10; i++) {

    for(var j=2; j<i; j++) {
    if ( i % j == 0) continue nextPrime; // КАК ЭТО УСЛОВИЕ НЕ ПРОПУСКАЕТ ЧЕТВЕРКУ
    }

    alert(i); // простое
    }

    </script>

    скрипт создан, чтобы выводить простые числа из диапозона 2..10, но не могу понять как он работает, ведь условие выполняется, 4%2 == 0? как он ее отсеевает?

  2. По умолчанию

     
    Хотите избавиться от рекламы? Зарегистрируйтесь
  3. #2
    dummy golferum is on a distinguished road
    Регистрация
    02.08.2013
    Сообщений
    3
    Вес репутации
    0

    Red face Re: не могу понять как работает javascript

    Аа, догнал, метка закрывает весь цикл вместе с alert, поэтому не выводит... Хитро сделано, я просто задачу в инэте нашел, решил я ее подругому, а именно вот так
    <script>
    var i,j,cop;

    for (i = 2; i<30; i++)
    {
    cop=0;
    for (j = 1; j<30; j++)
    {if (i%j == 0) {cop++}};
    if (cop == 2) {alert(i); continue} else continue;
    };

    </script>
    использую переменную как копилку, чтобы подсчитывать количество делений числа, если не равно двум, то оно не простое, потому что простое делится только на себя или 1. Это плохой стиль программирования?))

  4. #3
    Moderator Куратор
    system architect
    Хыиуду has a spectacular aura about Хыиуду has a spectacular aura about
    Регистрация
    06.03.2005
    Адрес
    Москва
    Сообщений
    2,388
    Вес репутации
    25

    По умолчанию Re: не могу понять как работает javascript

    Цикл совершенно спокойно можно начинать с двух: for (j=2; j<i; j++)
    И проверять на if (cop==1). Потому что на единицу и так любое число делится.
    Хотя в таком раскладе можно обойтись и без этого cop
    { if (i%j==0) continue;
    alert (i);
    }
    Искусство программирования - заставить компьютер делать все то, что вам делать лень.
    Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.

+ Ответить в теме

Похожие темы

  1. массивы.не могу понять какая ошибка...(
    Б4-3. Дана матрица 5х5. Для данного натурального М найти сум- му тех элементов матрицы, сумма индексов которых равна М. При выполнении заданий...
    от A_L_E_N_K_A в разделе Ассемблер
  2. не могу понять с какой стороны грамотно подступиться...
    Помогие переделать строчку данного кода под стандарт дом. В фрейме просто содержиться текст. Я что-то никак не могу понять — ведь фрейм же не...
    от WEB_bobby в разделе JScript, VBScript, DHTML...
  3. Не могу понять
    подскажите, что не так,:( :confused: Дана последовательность целых чисел. Найти наибольший и наимень¬ший из номеров ее членов, попавших в заданный...
    от EgorX в разделе Delphi и Pascal
  4. Помогите,не могу понять.
    procedure TForm1.FormCreate(Sender: TObject); var put:string; begin put:=edit1.text; assignFile(f1,put); assignFile(f2,'c:\1.txt'); reset(f1);...
    от oif в разделе Delphi и Pascal
  5. Не могу понять код чужого скрипта
    Вот скрипт: http://www.lemonhost.net/features/whois/mwhois.php Вот его код: <?php // include the config file require "config.php";
    от Ice_sCream в разделе Perl, PHP, ASP ...

Метки этой темы

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения