Skip to content

Commit

Permalink
Merge pull request #5 from AleksandrEV/module5-task2
Browse files Browse the repository at this point in the history
  • Loading branch information
keksobot authored Jan 21, 2025
2 parents d564c25 + f430c9d commit ef62b3c
Showing 1 changed file with 26 additions and 0 deletions.
26 changes: 26 additions & 0 deletions js/functions.js
Original file line number Diff line number Diff line change
Expand Up @@ -29,3 +29,29 @@ function extractNumbers (text) {
return allNumbers;
}
extractNumbers('gssee45 2983f2');

// Функция проверяет, укладывается ли встреча в рамки рабочего дня
function isMeetingWithinWorkHours(workStart, workEnd, meetingStart, meetingDuration) {
// Вспомогательная функция: преобразует строку времени в количество минут с начала суток
function parseTime(timeStr) {
// Разделяет строку времени на часы и минуты и преобразует их в числовые значения
const [hours, minutes] = timeStr.split(':').map(Number);
return hours * 60 + minutes;
}

const workStartMinutes = parseTime(workStart); // Начало рабочего дня в минутах
const workEndMinutes = parseTime(workEnd); // Конец рабочего дня в минутах
const meetingStartMinutes = parseTime(meetingStart); // Начало встречи в минутах
const meetingEndMinutes = meetingStartMinutes + meetingDuration; // Конец встречи в минутах

// Проверяет, начинается ли встреча после начала рабочего дня и заканчивается ли до его завершения
return meetingStartMinutes >= workStartMinutes && meetingEndMinutes <= workEndMinutes;
}

// Примеры использования
isMeetingWithinWorkHours('08:00', '17:30', '14:00', 90);
isMeetingWithinWorkHours('8:0', '10:0', '8:0', 120);
isMeetingWithinWorkHours('08:00', '14:30', '14:00', 90);
isMeetingWithinWorkHours('14:00', '17:30', '08:0', 90);
isMeetingWithinWorkHours('8:00', '17:30', '08:00', 900);

0 comments on commit ef62b3c

Please sign in to comment.