Gerenciamento de biblioteca de livros usando estruturas
Rust
Medium
structs
Tarefa «Gerenciamento de biblioteca de livros usando estruturas»
Crie uma estrutura Book com os campos title (String), author (String), year (u32) e is_available (bool). Implemente funções para adicionar um livro, pesquisar por autor e emprestar um livro (altera is_available para false). Dados de entrada: primeiro o número n — quantidade de operações, depois n linhas, cada uma começando com um comando: "add" (adicionar um livro com os parâmetros title, author, year), "find" (encontrar todos os livros de um autor e exibi-los na ordem de adição), "borrow" (pegar um livro pelo title — se disponível, torná-lo indisponível). Exibir o resultado para os comandos find e borrow.
Formato de Entrada
Primeira linha: um número inteiro n (1 ≤ n ≤ 1000). Em seguida, n linhas: para o comando "add" — add <title> <author> <year>, para "find" — find <author>, para "borrow" — borrow <title>.
Formato de Saída
Para cada comando find, exiba a lista de livros do autor no formato "title by author (year) - available" ou "title by author (year) - borrowed", separados por vírgula e espaço em uma única linha. Para o comando borrow, exiba "success" se o livro foi emprestado, caso contrário "not available".
Exemplos
Exemplo 1
ENTRADA
3
Book1 Author1 2000 0
Book2 Author2 2010 1
Book3 Author3 2020 0
print_all
SAÍDA
main.rs