Занимательные задачи JavaScript
788 subscribers
8 links
Ваша цель: решить задачу максимально изящно и просто. Предлагайте свои варианты решения в комментариях. Задачи выходят каждый день в 14.00.
Download Telegram
Задача 21
Дата масленницы

Определите дату ближайшей масленницы (последнее воскресенье зимы). Если в этом году она уже была - покажите за следующий год.
🫡1
Задача 22
Заглавные буквы в начале предложения

Дан текст. Сделайте заглавной первую букву каждого предложения в этом тексте.
🕊1
Задача 23
Второй по величине элемент

Дан массив. Найдите второй по величине элемент, после максимального.
Например, в следующем массиве это будет 4:
[1, 2, 3, 4, 5, 5]
🕊1
Задача 24
Перемешивание массива

Сделайте функцию, которая параметром будет принимать массив и перемешивать его элементы в случайном порядке, возвращая новый массив.
🕊1
Задача 25
Случайная выборка из массива

Дан массив без дублей. Получите из него массив из N случайных элементов, но так, чтобы элементы не повторялись.
🕊1🏆1
Задача 26
Разделение числа на случайную сумму

Дано целое число. Разбейте его на случайное количество целых чисел так, чтобы в сумме они давали это число. Пример: 100 можно разбить на 50+50, или 51+49, или 20+30+50. Количество фрагментов должно быть любым, случайным, сами фрагменты тоже должны быть случайными.
🕊1
Задача 27
Корректность времени

Дано время в формате часы:секунды. Проверьте то, что время является корректным: часы от 00 до 23, а минуты от 00 до 59.
🕊1
Задача 28
Разварот таблицы

Дана некоторая HTML таблица. Сделайте так, чтобы были видны первые N строк этой таблицы. А остальная таблица будет раскрываться по клику на нее.
👍2🕊1
Задача 29
Разбиение на слоги

Сделайте функцию, которая параметром будет принимать слово и возвращать массив его слогов.
🕊1
Задача 30
Нарастающее разбиение строки

Дана строка с любыми символами. Для примера пусть будет такая:
'1234567890'

Нужно разбить строку в массив таким образом:
['1', '23', '456', '7890']

И так далее, пока символы в строке не закончатся.
🕊1
Занимательные задачи уходят на каникулы на две недели:)
Всем хорошего нового года!
🎄20🎅31😁1🎉1🤝1
Задача 31
Половина заглавных букв

Дана строка с маленькими буквами и пробелами. Сделайте заглавными половину случайных букв этой строки, игнорируя пробелы.
🕊1
Задача 32
Следующий элемент ряда

Дан ряд: a, b, c, d ... x, y, z, aa, ab, ac, ... ay, az, ba, bb, ... bz, ... aaz.. Напишите функцию, которая получит следующий элемент по предыдущему.
👍2🕊1
Задача 33
N-ный знак после запятой

Поделите число 10 на число 7. Найдите N-ный знак (например, 1000) после запятой у полученной дроби.
🕊1
Задача 34
Перестановка пар символов

Дана строка '12345678'. Сделайте из нее '21436587'. Строка, конечно же, может быть любой.
🕊1
Задача 35
Порядковый номер клика по экрану

Сделайте так, чтобы при клике на любое место окна браузера в месте клика появлялся порядковый номер этого клика.
🕊1
Задача 36
Координаты четырех углов

Дан элемент. По клику на него выведите координаты его четырех углов относительно окна браузера.
🙏1
По вашим просьбам:
Бесплатный тренинг по поиску ошибок JavaScript.
Начало 6-го февраля.

В тренинге вам будут предложены задачи, в которых некоторый программист допустил ошибки. Вам нужно будет найти ошибки, исправить их, а также объяснить суть ошибки.

Для записи вступите в следующий канал:
https://t.me/+dih2v9lTJ5hkMTRi

P.S.
К тренингу специально придуманы новые задачи!
Более сложного уровня, по сравнению с теми,
которые уже есть в учебнике:)
🔥5👍2
Задача 37
Числа в инпутах по кругу

Даны инпуты. Поставьте первому инпуту в value число 1, через секунду второму число 2, еще через секунду третьему число 3 и так далее пока инпуты не закончатся. Когда инпуты закончатся продолжите нумерацию с первого инпута.
🕊1
Задача 38
Функция с мультивызовом

Напишите функцию, которая будет возвращать сумму любого количества чисел. Работать функция должна вот так:

let res = getSum(2)(5)(6)(7)(2)(3)(4);
console.log(res);
👍32🔥1🕊1