Для начала создадим массив аудиторий академии. Каждая аудитория будет представлена объектом с тремя свойствами: названием, количеством посадочных мест и названием факультета. Пример массива:
let auditoriums = [
{ name: '101', capacity: 15, faculty: 'Информатики' },
{ name: '102', capacity: 20, faculty: 'Информатики' },
{ name: '201', capacity: 10, faculty: 'Математики' },
{ name: '202', capacity: 18, faculty: 'Математики' },
{ name: '301', capacity: 12, faculty: 'Физики' },
];
Теперь напишем функции для работы с этим массивом:
1. Функция для вывода на экран всех аудиторий:
function displayAllAuditoriums(auditoriums) {
auditoriums.forEach(auditorium => {
console.log(`${auditorium.name} (${auditorium.faculty}): мест - ${auditorium.capacity}`);
});
}
2. Функция для вывода на экран аудиторий для указанного факультета:
function displayAuditoriumsByFaculty(auditoriums, faculty) {
const filteredAuditoriums = auditoriums.filter(auditorium => auditorium.faculty === faculty);
filteredAuditoriums.forEach(auditorium => {
console.log(`${auditorium.name} (${auditorium.faculty}): мест - ${auditorium.capacity}`);
});
}
3. Функция для вывода на экран аудиторий, подходящих для переданной группы:
function displaySuitableAuditoriumsForGroup(auditoriums, group) {
const filteredAuditoriums = auditoriums.filter(auditorium => audito- rium.capacity >= group.students && auditorium.faculty === group.faculty);
filteredAuditoriums.forEach(auditorium => {
console.log(`${auditorium.name} (${auditorium.faculty}): мест - ${auditorium.capacity}`);
});
}
4. Функция сортировки аудиторий по количеству мест:
function sortAuditoriumsByCapacity(auditoriums) {
return auditoriums.sort((a, b) => a.capacity - b.capacity);
}
5. Функция сортировки аудиторий по названию (по алфавиту):
function sortAuditoriumsByName(auditoriums) {
return auditoriums.sort((a, b) => a.name.localeCompare(b.name));
}
Теперь можно использовать эти функции для управления массивом аудиторий. Например, вызвать `displayAllAuditoriums(auditoriums)` для вывода всех аудиторий на экран или `sortAuditoriumsByCapacity(auditoriums)` для сортировки по количеству мест.