Skip to content

Latest commit

 

History

History
122 lines (87 loc) · 6.19 KB

program-2023.md

File metadata and controls

122 lines (87 loc) · 6.19 KB

Группы 107са, 107сб, 007а, 007б, 007в, 007г

Программа курса

Лабораторные

1. HTML

html

  • Сверстать заготовку будущего веб-приложения.
  • В процессе можно пользоваться презентацией.
  • Результат закоммитить на гитхаб и прислать ссылку на проект.

2. CSS

css

  • Написать стили для веб-приложения.
  • Постараться отцентрировать весь блок горизонтально и вертикально.
  • Будет плюсом, если сам список можно будет прокручивать без прокручивания самой страницы.
  • В процессе можно пользоваться презентацией.
  • Результат коммитить в тот же проект, что и предыдущее задание.

3. Оживляем список дел: прикручиваем JS

  • Добавить возможность добавления новых элементов.
  • Добавить возможность удаления элементов.
  • Построить оптимальную архитектуру: разделить отображение элементов и хранение элементов.
  • Задание со звёздочкой: Сохранить элементы в localstorage.

4. Фильтрация элементов

filter

  • Сделать нажимаемыми ссылки внизу (нажимаешь, она становится жирной). Ссылки определяют режим фильтрации (все, сделанные, не сделанные).
  • Сделать фильтрацию списка в соответствии с выбранным режимом.

Лабы для тех, кто хочет ещё, не обязательные:

5. Конвертер систем счисления

converter

  • Написать приложение для конвертирования между системами счисления.
  • При вводе в верхнее поле в нижнем отображается сконвертированное число (в соответствии с тем, что выбрано в селектбоксе).
  • При вводе в нижнее поле обновляется верхнее.
  • При изменении селектбокса изменяется только нижнее.

6. Таймер с обратным отсчётом

timer

  • В поле ввода пишем количество секунд.
  • При нажатии на кнопку таймер начинает идти: 10, 9, 8... Останавливается на 0.
  • Когда он дошёл до 0, показывается красная надпись ВРЕМЯ ИСТЕКЛО.

Экзаменационные вопросы

  1. Посчитать максимум и минимум массива:
const arr = [1, 6, -1, 22, 13];
  1. перевернуть строку задом наперёд:
const str = "!тевирП";
  1. Вычислить сумму квадратных корней для всех чётных чисел целочисленного массива:
const arr = [3, 5, 8, 13, 21, 42];
  1. Написать функцию, которая проверяет, являются ли две строки анаграммой:
anagram("Лунь", "нуль") // true
anagram("Лунь", "ноль") // false
  1. Написать функцию, которая проверяет, является ли строка палиндромом:
palindrome("Не гни папин ген") // true
palindrome("123") // false
  1. Написать функцию, которая после вызова каждую секунду пишет в консоль очередное число Фибоначчи. Так, в консоли будет: 0, 1, 1, 2, 3, 5, 8, 13...

  2. Написать функцию delay(N), возвращающую промис, который сделает resolve() через N секунд.

  3. Написать функцию intersect(arrA, arrB), принимающую на вход два массива и возвращающую пересечение значений этих массивов.

  4. Написать HTML и JS-код, который рисует кнопки "+" и "-" и значение, уменьшающееся или увеличивающееся при нажатии.

    counter

  5. Что выведет этот код? Как сделать так, чтобы он вывел 1, 2, 3?

let i;
for(i = 1; i <= 3; i++) {
  setTimeout(() => console.log(i), 1000);
}