кодесурса
«JavaScript

JavaScript: реализовать алгоритм Луна, используемый для проверки различных идентификационных номеров

script1adsense2code
script1adsense3code

Основной JavaScript (синтаксис ES6): упражнение-80 с решением

Напишите программу на JavaScript для реализации алгоритма Луна, используемого для проверки различных идентификационных номеров, таких как номера кредитных карт, номера IMEI, номера национальных идентификаторов поставщиков и т. Д.

Пример решения:

HTML-код:

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>Implement the Luhn Algorithm used to validate a variety of identification numbers, such as credit card numbers, IMEI numbers, National Provider Identifier numbers etc</title>
</head>
<body>
</body>
</html>

Код JavaScript:

//#Source https://bit.ly/2neWfJ2 
const luhnCheck = num => {
  let arr = (num + '')
    .split('')
    .reverse()
    .map(x => parseInt(x));
  let lastDigit = arr.splice(0, 1)[0];
  let sum = arr.reduce((acc, val, i) => (i % 2 !== 0 ? acc + val : acc + ((val * 2) % 9) || 9), 0);
  sum += lastDigit;
  return sum % 10 === 0;
};
console.log(luhnCheck('4485275742308327'));
console.log(luhnCheck(6011329933655299));
console.log(luhnCheck(123456789));

Пример вывода:

 правда
ложный
ложный

Блок - схема:

«Блок-схема:

Демонстрация в реальном времени:

См. Pen javascript-basic-упражнение-80-1 от w3resource ( @ w3resource ) на CodePen .


Улучшите этот пример решения и опубликуйте свой код через Disqus

Предыдущий: Напишите программу на JavaScript, которая будет принимать любое количество итерируемых объектов или объектов со свойством length и возвращает самый длинный из них.
Далее: Напишите программу на JavaScript для создания объекта с ключами, сгенерированными путем запуска предоставленной функции для каждого ключа и тех же значений, что и предоставленный объект.

Каков уровень сложности этого упражнения?

Новый контент: Composer: менеджер зависимостей для PHP , R программирования


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code