TGViewer
Логово верстальщика Логово верстальщика @webdevlair · 7.89K subscribers
Post #2722 1.69K
👩‍💻 Вычислить IP

Напишите функцию, которая получает два IPv4-адреса и возвращает количество адресов между ними (включая первый, исключая последний).

Все входные данные будут действительными IPv4-адресами в виде строк. Последний адрес всегда будет больше первого.

Пример кода:

ipsBetween("150.0.0.0", "150.0.0.1") => 1
ipsBetween("10.0.0.0", "10.0.0.50") => 50
ipsBetween("10.11.12.13", "10.11.13.0") => 243
ipsBetween("50.0.0.0", "50.1.1.1") => 65793


Решение задачи🔽

function ipsBetween(start, end) {
// Функция для преобразования IP-адреса в число
function ipToNumber(ip) {
return ip.split('.').reduce((acc, octet) => (acc << 8) + parseInt(octet, 10), 0);
}

// Преобразование начального и конечного IP-адреса в числа
const startNum = ipToNumber(start);
const endNum = ipToNumber(end);

// Возвращаем количество адресов между ними
return endNum - startNum;
}

// Примеры использования
console.log(ipsBetween("
150.0.0.0", "150.0.0.1")); // => 1
console.log(ipsBetween("
10.0.0.0", "10.0.0.50")); // => 50
console.log(ipsBetween("
10.11.12.13", "10.11.13.0")); // => 243
console.log(ipsBetween("
50.0.0.0", "50.1.1.1")); // => 65793
More from @webdevlair
  1. Oct 18, 2026Карандашный набросок, который заливается акварелью: разбор эффекта на SVG без библиотек Жи…
  2. Oct 17, 2026Post #4697
  3. Oct 16, 2026Deno уходит в Cloudflare. С приветом от Node Спойлер: в Cloudflare команда Deno едет не ко…
  4. Oct 16, 2026Post #4695
  5. Oct 16, 2026Как вставлять иконки в веб, не трогая HTML Ли Веру показывает трюк: иконки настраиваются ч…
  6. Oct 14, 2026Автор ковыряет вёрстку с тех самых времён, когда Chrome был ещё первой версией, а не моноп…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →