El código del sistema de gestión de biblioteca C solo necesita libros~
# incluir lt string gt
# incluir ltvector gt
# incluir ltcstdlib gt
Usar espacio de nombres estándar p>
Libro del aula{
Público:
void addBook();
información del libro de cadenas (bool es _ prestado = false)const ;
anular información modificada();
En línea bool findBook(cadena constante ampinfo, bool by_isbn = false) const{
if (by_isbn)
Regresar m_isbn == información
Otro
regresar m_autor == información | m_ISBN == información | == info;
}
Privado:
Cadena m_name, m_author, m_isbn, m_publisher
};
Sistema de clasificación {
Público:
void findBookInfo()const;
libro * find book()const ;
void información del libro modificado();
void addBook();
void pedir prestado el libro();
void remove book ();
void pop menu();
inline void leftBookNum() const{
cout lt lt"Libros restantes:"
cout lt lt"Total:"
};
Privado:
Vector ltBook * gt book, lend_book;
};
void Libro::addBook(){
cout lt lt"Ingrese el nombre del libro: ";
CIN gtm_name
cout lt lt"Ingrese el autor del libro: ";
CIN gt; gtm _author;
cout lt lt"Ingrese el número del libro: ";
p>
CIN > cout lt lt"¡Agregado exitosamente! ” lt ltendl
}
string Libro:: Información del libro(bool is _ lowered)const {
Información de cadena;
info = "Título:" this-gt;m_name (¿prestado? "(prestado)\n":"\n");
Info = "Autor:" this-gt;m_ authentic
r "\n número:" this-gt;m_ISBN "\n presione:" this-gt;m_publisher "\n";
Información de devolución;
}
void Libro::modifiedInfo(){
cout lt lt"Revisión:\n1. Título\n2. Autor\n3. Número\n4.
Editor\nPor favor seleccione: ";
int n;
CIN gt; gtn;
Conmutador (n){
Caso 1 : {
cout lt lt"Ingrese el nombre del libro:";
CIN gt; gtthis-gt;m_name
Pausa;
}
Caso 2: {
cout lt lt"Ingrese el autor del libro: ";
CIN gtthis-gt ;m_author ;
Pausa;
}
Caso 3: {
CIN gt; gt"Ingrese el ISBN:" ; p>
CIN gt; gtthis-gt;m_isbn
Rotura;
}
Caso 4: {
cout lt lt"Ingrese la editorial del libro:"
CIN gt;gtthis-gt;m_publisher
Pausa;
}
Valor predeterminado : {
cout lt lt"¡Elección incorrecta! " lt ltendl
Return;
}
}
cout lt lt" ¡Modificación exitosa! " lt ltendl
}
Libro *System::findBook() const{
cout lt lt"Ingrese el número del libro: ";
Cadena isbn
CIN gt; gtisbn
Libro * libro = NULL
for(tamaño _ t t = 0; t!= libros . tamaño ( ); t ){
if(libros. en(t)- gt; findBook(isbn, true)){
libro = libros en(t); p >
Romper;
}
}
if (libro == NULL){
for(tamaño _ t t = 0; t! = lowed_books.size();t){
if(borrowing_books.at(t)-gt;findBook(isbn,true)){
libro = lend_books.at(t);
Romper;
}
}
}
Devolver el libro ;
}
void System::findBookInfo()const {
cout lt lt"Ingrese el título del libro/autor/número de serie/publicación "Buscar ":
Información de cadena;
CIN gt; información gt;
int count = 0;
tamaño _ t t = 0;
for(t = 0; t!= libros . tamaño(); t ){
if(libros . at(t)- gt;findBook(info )){
cout lt ltbooks . at(t)- gt;book info() lt; ltendl
count;
}
}
for(t = 0; t! = lowed _ libros .
tamaño(); t ){
if(borrowing_books. at(t)- gt; findBook(info)){
cout ltborrowing_books. info(true) lt; ltendl
cuenta
}
}
cout lt lt"* * *Encontrado" p>
}
void System:: addBook(){
Libro *libro = libro nuevo;
Libro - gt ;addBook();
libros . push _ back(libro);
}
void System::modifiedBookInfo(){
libro * libro = find book();
if(book == NULL)
cout lt lt"¡No existe tal libro!" >
Libro - gt;información modificada();
}
void System::removeBook(){
libro * libro = buscar libro( );
if(book == NULL){
cout lt lt"¡No existe tal libro!"
}
Vector ltBook * gt* iterador it = libros . comenzar()
for(it = libros . comenzar(); it! = libros . end() ; it ){
if((*it) == libro){
libros . erase(it);
cout lt lt "¡Eliminado correctamente! " lt ltendl
Return;
}
}
for(it = prestado _ libros . comenzar() ; it! = lowed _ books . end(); it ){
if((*it) == libro){
prestado _ books . p>cout lt lt"¡Eliminación exitosa!"
Regresar;
}
}
cout lt lt"La eliminación falló ! ” lt ltendl
}
void System::borrowBook(){
libro * libro = buscar libro();
if (libro == NULL){
cout lt lt"¡No existe tal libro! ” lt ltendl
Retorno;
}
for(vector lt; Libro * gt* iterador it = libros . comenzar(); it ! = libros . end(); it ){
if((*it) == libro){
borrar(it);
Romper;< /. p>
}
}
borrowed_books.push_back(Libro)
;
cout lt lt"¡El préstamo del libro fue exitoso!"
}
void System::popMenu(){
while(true){
const string menu = " = = = = = = = = = = = = = = = = = = = = = = = = = = = = = \nSistema de gestión de biblioteca \n1. Entrada del libro\n2. Modificación de la información del libro\n4.
menú cout lt;
CIN gtn; /p>
Caso 1: {
addBook();
Break;
}
Caso 2: {
modifiedBookInfo();
Roto;
}
Caso 3: {
eliminar libro();
Pausa;
}
Caso 4: {
findBookInfo();
Pausa; p>
}
Caso 5: {
pedir prestado un libro();
Pausa;
}
Caso 6: {
leftBookNum();
Pausa;
}
Caso 7: {
Salir(0);
}
Valor predeterminado: {
cout lt lt"Selección incorrecta"
CIN . sincronización();
CIN .
}
int main(){
Sistema *sys = nuevo sistema
sys-gt menú emergente();
Devuelve 0;
}