Примечание
ЭТО АРХИВНАЯ ВЕРСИЯ КУРСА!
Материалы предназначаются для пересдающих дисциплину "ОП.04 - Основы алгоритмизации и программирования" в соответствии с учебными планами СПО годов набора ДО 2023-го.
Материалы были перенесены со старого сайта с минимальной доработкой, поэтому не все возможности курса могут работать как ожидается, где-то может слететь форматирование.
Домашние задания в рамках курса проверяться не будут!
Домашнее задание №4 по дисциплине ОП.04 - Основы алгоритмизации и программирования
Дана структура веб-приложения, состоящего из следующих частей:
index.html— веб-страницаscript.js— файл скриптов
Содержимое каждого файла:
index.html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>ОП.04 - ДЗ №4</title>
</head>
<body>
<h1>ОП.04 - ДЗ №4</h1>
<p>
Это файл домашнего задания №4, которое выполнил студент/студентка <strong id="student">ФИО</strong> в рамках изучения дисциплины ОП.04 - Основы алгоритмизации и программирования.
</p>
<script src="script.js"></script>
</body>
</html>
script.js
const student = "Иванов Иван Иванович"; // Очевидно, что здесь ваши личные Фамилия, Имя и Отчество
document.getElementById("student").innerHTML = student;
// Отсюда и ниже идет ваш код решения домашнего задания
// ...
После запуска файла index.html через Live Server в любом браузере (предпочтительно использовать Google Chrome актуальной версии), должна открыться страница на которую автоматически интерполируется значение константы student, содержащей Фамилию, Имя и Отчество студента.
Задание
Генерируем случайную ошибку

Реализуйте программу на языке JavaScript, которая случайным образом в одном случае из пяти (с вероятностью 20%) выдаёт ошибку типа Error с произвольным сообщением, например «Ой, что-то сломалось», которая ловится при помощи блока catch, в рамках которого генерируется сообщение «Произошла ошибка, пожалуйста перезагрузите страницу». Во всех остальных случаях приложение просто должно выводить сообщение: «Всё в порядке, приложение работает в штатном режиме».
Вывод данных возможен любым способом на выбор студента, например — в консоль посредством console.log, в тело страницы или при помощи функции alert.
Реализуйте основную логику расчета случайности при помощи функции, которая принимает один аргумент и интерпретирует его в качестве значения вероятности возникновения ошибки. Например, функция может называться и вызываться следующим образом: throwRandomError(0.2) (0.2 — это аргумент означающий 20%, соответственно 0.0 будет означать что ошибка никогда не возникнет, а 1.0 что ошибка будет возникать при каждом запуске функции).
Подсказки
- В решении поставленной задачи вам пригодятся вспомнить как генерируются ошибки средствами языка Javascript, как правильно использовать
throw, а также какую часть кода положить в блокtry {}, а какую — в блокcatch {}. - Для генерации случайности вам может помочь функция
Math.random(), главное не запутаться какие аргументы и в каком количестве нужно ей передать а также каким образом их преобразовать чтобы результат попадал в заданный диапазон. - Для округления в большую или меньшую сторону, могут потребоваться функции
Math.ceil()иMath.floor()соответственно. - Приветствуется использование любых способов персонализации и оформления страницы. Если владеете стилями CSS, HTML-формами или анимацией — используйте в полной мере всё чем владеете, единственное ограничение что любые выразительные средства не должны нарушать логики работы программы!
Требования к оформлению
Задание должно быть выполнено локально на домашнем компьютере с использованием любой доступной среды разработки (предпочтительно использовать Visual Studio Code актуальной версии).
[!TIP]
Обращаю внимание, что для установки Visual Studio Code на компьютер вам может понадобиться инструкция: Инструкция по установке VSCode
Перед отправкой задание должно быть протестировано на работоспособность, после чего необходимо загрузить выполненное задание в публичный репозиторий на Github ↗.
Репозиторий должен называться:
homework_4
Ссылку на репозиторий с выполненным заданием необходимо прислать на электронную почту кафедры:
it@vshp.online
В теме письма ОБЯЗАТЕЛЬНО укажите код дисциплины, порядковый номер домашнего задания и свои имя и фамилию, например: «ОП.04 - ДЗ №4 - Иванов Иван», иначе преподаватель не сможет понять кому засчитать выполнение домашнего задания.
[!DANGER]
Какая-либо оценка за выполнение задания ставиться не будет, но при этом задания, не соответствующие в полной мере всем указанным требованиям приниматься к проверке НЕ БУДУТ!
Рекомендуемые источники для подготовки
- Современный учебник JavaScript
https://learn.javascript.ru/ ↗ - W3Schools Online Web Tutorials — JavaScript Tutorial
https://www.w3schools.com/js/default.asp ↗ - Web technology for developers — JavaScript
https://developer.mozilla.org/en-US/docs/Web/JavaScript ↗
[!WARNING]
Для того чтобы можно было в полной мере использовать возможности JavaScript при запуске браузера на локальном компьютере, необходима программа, выполняющая роль веб-сервера. Для Visual Studio Code с этой задачей может справиться расширение Live Server.
Live Server
Веб-сервер, запускающийся из локальной папки
https://marketplace.visualstudio.com/items?itemName=ritwickdey.LiveServer ↗
