Skip to content

Instantly share code, notes, and snippets.

@sunmeat
Created May 9, 2025 17:55
Show Gist options
  • Save sunmeat/7d62ea0e846c18567114efd4c106fb35 to your computer and use it in GitHub Desktop.
Save sunmeat/7d62ea0e846c18567114efd4c106fb35 to your computer and use it in GitHub Desktop.
задание на строки, массивы и объекты
выполнить любые 5 заданий по ссылкам:
https://materials.itstep.org/content/e45104bc-ef00-4330-9c29-e680c21f3ae5/ru
https://materials.itstep.org/content/7f220865-64f4-4f53-9d53-59fd15799f06/ru
https://materials.itstep.org/content/42682aa3-de6e-4c69-89ce-fc910c675b9f/ru
https://materials.itstep.org/content/90192eca-7223-4677-878d-2004c0cbafe9/ru
https://materials.itstep.org/content/dd30b039-7405-4bce-a02b-ca70ee3619df/ru
https://materials.itstep.org/content/cb730289-b1ca-4240-b7da-035c63b40e2a/ru
решения собрать в один файл, выложить в гист или репозиторий, ссылку на код прислать в комментарий к этому ДЗ.
тексты заданий:
Задания
Создать объект, описывающий прямоугольник (хранит координаты левой верхней и правой нижней точек), и написать следующие функции, для работы с таким объектом.
Функция принимает объект-прямоугольник и выводит информацию о нем (где какая точка расположена).
Функция принимает объект-прямоугольник и возвращает его ширину.
Функция принимает объект-прямоугольник и возвращает его высоту.
Функция принимает объект-прямоугольник и возвращает его площадь.
Функция принимает объект-прямоугольник и возвращает его периметр.
Функция изменения ширины прямоугольника. Она принимает объект-прямоугольник и на сколько единиц изменить ширину.
Функция изменения высоты прямоугольника. Она принимает объект-прямоугольник и на сколько единиц изменить высоты.
Функция изменения ширины и высоты прямоугольника. Она принимает объект-прямоугольник и два значения для изменения ширины и высоты.
Функция смещения прямоугольника по оси X. Она принимает объект-прямоугольник и на сколько единиц его сдвинуть.
Функция смещения прямоугольника по оси Y. Она принимает объект-прямоугольник и на сколько единиц его сдвинуть.
Функция смещения прямоугольника и по оси X и по оси Y. Она принимает объект-прямоугольник и два значения: сдвиг по оси X и сдвиг по оси Y.
Функция для проверки находится ли точка внутри прямоугольника. Она принимает объект-прямоугольник и координаты точки.
=========================================================================
Задание 1
Создать массив из 10 случайных чисел и написать несколько функций для работы с ним.
Функция принимает массив и выводит его на экран.
Функция принимает массив и выводит только четные элементы.
Функция принимает массив и возвращает сумму всех элементов массива.
Функция принимает массив и возвращает его максимальный элемент.
Функция добавления нового элемента в массив по указанному индексу.
Функция удаления элемента из массива по указанному индексу.
Задание 2
Создать еще один массив из 5 случайных чисел и написать следующие функции.
Функция принимает 2 массива и возвращает новый массив, в котором собраны все элементы из двух массивов без повторений.
Функция принимает 2 массива и возвращает новый массив, в котором собраны общие элементы (то есть элементы, которые встречаются и в первом и во втором массивах) без повторений.
Функция принимает 2 массива и возвращает новый массив, в котором собраны все элементы из первого массива, которых нет во втором массиве.
Задание 3
Создать массив фруктов и отсортировать его по алфавиту. Написать следующие функции.
Вывод на экран с помощью document.write() в виде списка (с помощью тегов ul и li).
Поиск фрукта в массиве. Функция принимает название фрукта и возвращает индекс найденного элемента или -1, если не найден. Поиск должен быть не ре­гистро­зависимый.
=========================================================================
Задания
Написать функцию, которая принимает 2 строки и сравнивает их длину. Функция возвращает 1, если в первой строке больше символов, чем во второй, -1, если во второй больше символов, чем в первой или 0 если строки одинаковой длины.
Написать функцию, которая переводит в верхний регистр первый символ переданной строки.
Написать функцию, которая считает количество гласных букв в переданной строке.
Написать функцию для проверки спама в переданной строке. Функция возвращает true, если строка содержит спам. Спамом считать следующие слова: 100% бесплатно, увеличение продаж, только сегодня, не удаляйте, ххх. Функция должна быть нечувствительна к регистру.
Написать функцию сокращения строки. Функция принимает строку и ее максимальную длину. Если длина строки больше чем максимальная, то необходимо отбросить лишние символы, добавив вместо них троеточие. Например: truncate("Hello, world!", 8) должна вернуть «Hello...».
Написать функцию, которая проверяет является ли переданная строка палиндромом.
Написать функцию, которая считает количество слов в предложении.
Написать функцию, которая возвращает самое длинное слово из предложения.
Написать функцию, которая считает среднюю длину слова в предложении.
Написать функцию, которая принимает строку и символ и выводит индексы, по которым находится этот символ в строке. Также вывести сколько всего раз встречается этот символ в строке.
=========================================================================
Задание 1
Создать объект, описывающий автомобиль (производитель, модель, год выпуска, средняя скорость), и следующие функции для работы с этим объектом.
Функция для вывода информации о автомобиле на экран.
Функция для подсчета необходимого времени для преодоления переданного расстояния со средней скоростью. Учтите, что через каждые 4 часа дороги водителю необходимо делать перерыв на 1 час.
Задание 2
Создать объект, хранящий в себе отдельно числитель и знаменатель дроби, и следующие функции для работы с этим объектом.
Функция сложения 2 объектов-дробей.
Функция вычитания 2 объектов-дробей.
Функция умножения 2 объектов-дробей.
Функция деления 2 объектов-дробей.
Функция сокращения объекта-дроби.
Задание 3
Создать объект, описывающий время (часы, минуты, секунды), и следующие функ­ции для работы с этим объектом.
Функция вывода времени на экран.
Функция изменения времени на переданное количество секунд.
Функция изменения времени на переданное количество минут.
Функция изменения времени на переданное количество часов.
Учтите, что в последних 3 функциях при изменении одной части времени может измениться и другая. Например: если ко времени «20:30:45» добавить 30 секунд, то должно получится «20:31:15», а не «20:30:75».
=========================================================================
Задание 1
Создать массив «список покупок». Каждый элемент массива является объектом, который содержит название товара, необходимое количество и то, был ли он куплен или нет. Напишите несколько функций для работы с таким массивом.
Вывод всего списка на экран таким образом, чтобы сначала шли не купленные товары, а потом купленные.
Добавление покупки в список. Обратите внимание, что при добавлении покупки с уже существующим товаром в списке, нужно увеличить количество в существующей покупке, а не добавлять новую.
Приобретение товара. Функция получает название товара и помечает его как купленный.
Задание 2
Создать массив, описывающий чек в магазине. Каждый элемент массива состоит из названия товара, его количества и цены за единицу. Напишите следующие функции.
Вывод чека на экран.
Вычисление общей суммы покупки.
Получение самой дорогой покупки в чеке.
Вычисление средней стоимости одного товара в чеке.
Задание 3
Создать массив стилей CSS (цвет, размер шрифта, выравнивание, подчеркивание и т.д.). Каждый элемент массива — это объект, состоящий из двух свойств: названия стиля и значения стиля.
И напишите функцию, которая получает массив стилей и текст и выводит этот текст с помощью document.write() в тегах, добавив к открывающему тегу атрибут style со всеми стилями, перечисленными в массиве.
Задание 4
Создайте массив аудиторий академии. Объект аудитории состоит из названия, количества мест (от 10 до 20) и названия кафедры, для которой она предназначена.
Напишите несколько функций для работы с ним.
Вывести все аудитории.
Отобразить аудитории для указанного факультета.
Отобразить только те аудитории, которые подходят для переведенной груп­пы. Объект-группа состоит из названия, количества студентов и названия ка­федры.
Функция сортировки аудиторий по количеству мест.
Функция сортировки аудиторий по названию (по алфавиту).
=========================================================================
Задание
Написать функцию, которая принимает строку и выводит статистику о ней: количество букв, количество цифр и количество других знаков.
Написать функцию, которая принимает двузначное число и возвращает его в текстовом виде. Например: 35 — тридцать пять, 89 — восемьдесят девять, 12 — двенадцать.
Написать функцию, которая заменяет в полученной строке большие буквы на маленькие, маленькие на большие, а цифры на знак нижнего подчеркивания.
Написать функцию, которая преобразует названия css стилей с дефисом в название в camelcase стиле: font-size в fontSize, background-color в background­Color, text-align в textAlign.
Написать функцию, которая принимает словосочетание и превращает его в аббревиатуру. Например: cascading style sheets в CSS, объектно-ориентированное программирование в ООП.
Написать функцию, которая принимает любое количество строк, объединяет их в одну длинную строку и возвращает ее.
Написать функцию — калькулятор. Функция принимает строку с примером, определяет какое действие необходимо выполнить (+, -, *, /), переводит операнды в числа, решает пример и возвращает результат.
Написать функцию, которая получает url и выводит подробную информацию о нем. Например: url "https://itstep.org/ua/about", информация «протокол: https, домен: itstep.org, путь: /ua/about».
Написать функцию, которая принимает строку и разделитель и возвращает массив подстрок, разбитые с помощью указанного разделителя. Например: строка «10/08/2020», разделитель «/», результат: «10», «08», «2020». Выполняя задание, не используйте функцию split().
Написать функцию вывода текста по заданному шаблону. Функция принимает первым параметром шаблон, в тексте которого может использоваться %, после символа % указывается индекс входного параметра. При выводе вместо %индекс необходимо вывести значение соответствующего входного параметра. Например: print("Today is %1 %2.%3.%4", "Monday", 10, 8, 2020) должна вывести «Today is Monday 10.8.2020».
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment