Открыть Электронные книги
Категории
Открыть Аудиокниги
Категории
Открыть Журналы
Категории
Открыть Документы
Категории
Лабораторная работа №3
Дата и время
Вариант 23
Томск 2020
Задание
Листинг программы
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width">
<title>repl.it</title>
<link href="style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<script>
let special;
let year = prompt('Введите исходный год для вычисления конца недели:');
while(isNaN(year)||(year<=999)||(year>9999)||(year[0]==0))
{
if(isNaN(year))
alert('Год введён неверно. Используйте цифры.');
if((year<=999) || (year>9999))
alert('Год введён неверно. Используйте формат YYYY.');
else
if(year[0]==0)
alert('Первым использованным символом не может быть 0. Используйте
формат YYYY.');
year = prompt('Введите исходный год для вычисления конца недели:');
}
let month = prompt('Введите исходный месяц цифрой (1-12) для вычисления
конца недели:');
while(isNaN(month)||(month<=0)||(month>12)||month[0]==0)
{
if(isNaN(month))
alert('Месяц введён неверно. Используйте цифры.');
if((month<=0) || (month > 12))
alert('Месяц введён неверно. Используйте числа от 1 до 12.');
else
if(month[0]==0)
alert('Первым использованным символом не может быть 0. Используйте
числа от 1 до '+special+'.');
month = prompt('Введите исходный месяц для вычисления конца недели:');
}
function endDate(yearS,monthS,dayS)
{
let dateS = new Date(yearS,monthS-1,dayS);
alert('Ввёденная дата пользователем: '+dateS)
let startWeekDay = dateS.getDay();
let endWeek;
switch(startWeekDay)
{
case 0:
endWeek = 0;
break;
3
case 1:
endWeek = 6;
break;
case 2:
endWeek = 5;
break;
case 3:
endWeek = 4;
break;
case 4:
endWeek = 3;
break;
case 5:
endWeek = 2;
break;
case 6:
endWeek = 1;
break;
}
let changeDate = new Date(yearS,monthS-1,Number(dayS)+Number(endWeek));
if (endWeek == 0)
alert('Ввёденная дата уже является концом недели.')
else
alert('Дата окончания недели: '+changeDate);
}
endDate(year,month,day);
</script>
</body>
</html>
Результаты работы
4
Рисунок 1 – Окно с вводом исходного года
5
Рисунок 3 – Окно с вводом исходного дня
6
Рисунок 5 – Результат программы
Вывод