Top.Mail.Ru
Ответы

СРОЧНО ПОМОГИТЕ С ИНФОРМАТИКОЙ!!!

Напишите алгоритм для решения следующей задачи.

Есть объект, который содержит информацию о книгах в библиотеке, например, такой:

let library = [
{author: "Пушкин", title: "Старик и море"},
{author: "Толстой", title: "Война и мир"},
{author: "Гоголь", title: "Мёртвые души"},
{author: "Гоголь", title: "Ревизор"}
]

Вам нужно, чтобы по запросу автора книги, программа выводила все названия произведений, либо информировала об отсутствии книг этого автора.


Чтобы найти произведение по автору можно ориентироваться на этот код или придумать своё решение:

if (library[0].author == "Пушкин") { alert(library[0].title)}

По дате
По рейтингу
Аватар пользователя
Новичок
4мес

function findBooksByAuthor(library, authorName) {
// 1. Создаем пустой массив для хранения найденных названий книг.
const bookTitles = [];

// 2. Проходимся по каждому элементу (книге) в массиве `library`.
for (let i = 0; i < library.length; i++) {
// 3. Проверяем, совпадает ли автор текущей книги с запрошенным автором.
if (library[i].author === authorName) {
// 4. Если автор совпадает, добавляем название книги в массив `bookTitles`.
bookTitles.push(library[i].title);
}
}

// 5. После завершения цикла проверяем, найдены ли книги.
if (bookTitles.length > 0) {
// 6. Если книги найдены, выводим названия книг в консоль (или в другое место, например, в HTML).
console.log(`Книги автора ${authorName}:`);
for (let i = 0; i < bookTitles.length; i++) {
console.log(`- ${bookTitles[i]}`);
}
} else {
// 7. Если книги не найдены, выводим сообщение об отсутствии книг.
console.log(`Книги автора ${authorName} не найдены.`);
}
}

// Пример использования:
let library = [
{author: "Пушкин", title: "Старик и море"},
{author: "Толстой", title: "Война и мир"},
{author: "Гоголь", title: "Мёртвые души"},
{author: "Гоголь", title: "Ревизор"}
];

findBooksByAuthor(library, "Гоголь"); // Выведет: Книги автора Гоголь: - Мёртвые души - Ревизор
findBooksByAuthor(library, "Пушкин"); // Выведет: Книги автора Пушкин: - Старик и море
findBooksByAuthor(library, "Чехов"); // Выведет: Книги автора Чехов не найдены.

Аватар пользователя
Ученик
4мес

let library = [
{author: "Пушкин", title: "Старик и море"},
{author: "Толстой", title: "Война и мир"},
{author: "Гоголь", title: "Мёртвые души"},
{author: "Гоголь", title: "Ревизор"}
];

function findBooksByAuthor(authorName) {
let booksByAuthor = [];

for (let i = 0; i < library.length; i++) {
if (library[i].author === authorName) {
booksByAuthor.push(library[i].title);
}
}

if (booksByAuthor.length > 0) {
return booksByAuthor;
} else {
return `Книг автора ${authorName} не найдено.`;
}
}

// Пример использования функции
let authorName = "Гоголь";
let result = findBooksByAuthor(authorName);
console.log(result); // Вывод: ["Мёртвые души", "Ревизор"]

authorName = "Пушкин";
result = findBooksByAuthor(authorName);
console.log(result); // Вывод: ["Старик и море"]

authorName = "Достоевский";
result = findBooksByAuthor(authorName);
console.log(result); // Вывод: "Книг автора Достоевский не найдено."