Форум программистов, компьютерный форум, киберфорум
JavaScript
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
 Аватар для SaweR
29 / 29 / 4
Регистрация: 29.09.2009
Сообщений: 177

Смысл исходного кода

28.09.2012, 16:51. Показов 603. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет. Поясните, пожалуйста, что делает функция nzero(n):
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
function nzero(n) {
  if(n < 1) {
    return "";
  }
  var t = nzero(n >> 1);
  if((n & 1) == 0) {
    return t + t;
  }
  else {
    return t + t + "0";
  }
}
function srp_compute_k(NN, gg) {
  var hashin = "";
  var nhex;
  var ghex;
  var ktmp;
  if(proto == "3")
    return one;
  else if(proto == "6")
    return three;
  else {
    /* SRP-6a: k = H(N || g) */
    nhex = String(bigInt2radix(NN, 16));
    if((nhex.length & 1) == 0) {
      hashin += nhex;
    }
    else {
      hashin += "0" + nhex;
    }
    ghex = String(bigInt2radix(gg, 16));
    hashin += nzero(nhex.length - ghex.length);
    hashin += ghex;
    ktmp = parseBigInt(calcSHA1Hex(hashin), 16);
    if(ktmp.compareTo(NN) < 0) {
      return ktmp;
    }
    else {
      return ktmp.mod(NN);
    }
  }
}
особенно непонятны вот эти строки:
JavaScript
1
2
var t = nzero(n >> 1);
  if((n & 1) == 0)
Заранее спасибо.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
28.09.2012, 16:51
Ответы с готовыми решениями:

Смысл исходного кода, part 2
Здравствуйте. У меня есть 2 вот такие функции calcSHA1(str) и calcSHA1Hex(str): function calcSHA1(str) { return...

Отсутствие исходного кода
попав на один из сайтов я заметил что там нельзя ни выделить ничего ни даже вызвать меню правой клавишей мышки ( что затрудняет просмотр...

Объяснить смысл приведённого кода
Что означает этот скрипт? &lt;script&gt; //initialize and attach hovercards to all gravatars jQuery( document ).ready( function( $ ) { ...

1
 Аватар для Vovan-VE
13210 / 6599 / 1041
Регистрация: 10.01.2008
Сообщений: 15,069
28.09.2012, 16:58
Судя по результату, nzero(n) возвращает строку, состоящую из указанного количества нулей.
nzero(3) -> "000"
nzero(9) -> "000000000"
Цитата Сообщение от SaweR Посмотреть сообщение
особенно непонятны вот эти строки:
a >> n
Побитовый сдвиг вправо. В данном случае почти эквивалентно целочисленному делению на 2.

a & b
Побитовое И. В данном случае выражение (n & 1) == 0 проверяет, является ли n четным.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
28.09.2012, 16:58
Помогаю со студенческими работами здесь

Реализовать 2 статических анализатора исходного кода, которые будут проверять правила оформления кода
Доброго времени суток. Уже читал подобную пост здесь &quot;Парсер С++&quot;, но немного не то. Задача: реализовать 2 статических анализатора...

Смысл кода
Имеется следующий код, мы вводим числовое значение и если оно некорректное (присутствуют буквы и т.п.) то программа его не принимает,...

Смысл строки кода
Доброго времени суток, подскажите что значит следующая запись. private readonly Action&lt;Robot, int, int&gt; solve; Если совсем...

Обьясните смысл кода
public void setqueen(int i, int j)//заполняет ячейки, которые королева бьет { for (int k = 0; k &lt; 8; k++) ...

Объясните смысл кода
Знатоки, помогите плс разобраться в ситуации. Есть лист со сделками. Сбоку списка сделок список тикеров (названий контрактов) этих сделок –...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: 1. Реализовать контроль заполнения реквизита. . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru