La Red de Conocimientos Pedagógicos - Conocimientos históricos - Instrucciones de diseño del programa de préstamo de bibliotecas

Instrucciones de diseño del programa de préstamo de bibliotecas

# include ltiostream gt

# include lt string gt

Usar espacio de nombres std

Libro de clase //Establece la categoría de la colección de libros y archiva la información del libro.

{

Público:

Libro (cadena n, int N, cadena p) // Constructor de clase de libro

{< / p>

name = n; //Establecer título del libro

NO = N; //Establecer inventario de libros

editor = p //Establecer una editorial de libros

p>

}

Void display() //La función de visualización muestra la información del libro.

{

cout lt lt"Título:"

cout lt lt"Inventario actual:"

cout lt lt"Edición de libros Sociedad: "

cout lt ltendl

}

// Para facilitar la llamada, los siguientes datos se definen como públicos.

Nombre de la cadena; //Título del libro

int número; //Inventario del libro

Editor de la cadena //Editor del libro

} ;

//Crea una pequeña base de datos de libros de la biblioteca. El número de serie del libro es igual al subíndice de la matriz de objetos.

Libros[6] =

{

Libros ("Introducción a C", 3, "Prensa Popular de Correos y Telecomunicaciones"),

Libro ("Python Core Programming", 3, "People's Posts and Telecommunications Press"),

Libro ("Writing Clean Code", 3, "Electronic Industry Press"),

Libro ("Guía del usuario de Solaris 10 en chino simplificado", Volumen 3, "Sun Microsystems"),

Este libro ("El lenguaje de programación C, Segunda edición", Volumen 3, "Prensa industrial mecánica "),

Libro ("El arte de la programación informática, tercera edición, volumen 1: algoritmos básicos", volumen 3, "National Defense Industry Press")

};

Void display_all() //Muestra todos los libros de la biblioteca para facilitar la lectura de los lectores.

{

int I;

cout lt lt"Estos son todos los libros de la biblioteca"

for(I = 0 ;ilt6;i )

{

cout lt lt"Número de serie del libro:"

cout lt lt"Título:"

cout lt lt"Inventario actual:"

cout lt lt"Editor de libros:"

cout lt ltendl

}

}

Clase Personas

{

Público:

Personas (String Nam, int num) //Constructor de estudiantes.

{

nombre = nam

número = num

}

void préstamo(int);/ /Definir función miembro prestada

void back(int); //Definir función miembro de devolución de libro

Privado:

Nombre de cadena; //Nombre personal< / p>

int number; //El número de libros prestados en la biblioteca

};

//Clase de estudiante, utilizada para definir la información del estudiante.

Estudiantes de clase: figuras públicas

{

Público:

Estudiante (String Nam, Intnum, Intgra): personas (Nam, num)//Estudiante constructor.

{

nota = gra

}

Privado:

int nota; // nota del estudiante

};

//Clase de profesor, el profesor es una clase derivada de estudiante.

Profesor de clase: figura pública

{

Público:

Profesor (String Nam, Intnum, String T): personas (Nam , num)//Constructor de clase derivada.

{

title = t; //Título del profesor

}

Privado:

Título de cadena; //Título del profesor

};

Personas vacías:: pedir prestado (int a) //Función miembro de préstamo

{

int i, j; //Defina dos variables enteras para que se pueda usar la camiseta.

char k; //Definir la variable de carácter para el juicio S/N.

void service(); //Declarar la función de servicio

if(number gt; = a) //Primero, determine la autoridad. Si la cantidad de libros prestados por el lector no es menor que su permiso, se solicitarán otras operaciones.

{

cout lt lt"Según su permiso, puede pedir prestado como máximo"< lta lt lt"¡Este libro! No puede pedir prestados libros ahora. Vuelva la próxima vez" < ltendl

cout lt lt"¿Quieres hacer algo más? (Sí, ingresa y, para salir, ingresa n)"

CIN gtk;

p>

Si (k == 121)

servicio();

Si (k == 121)

Devolver;

else if (k = 110)

Devolver;

cout lt ltendl

}

Otro

{

display_all(); // Llame a la función display_all para generar todos los libros para que los lectores los tomen prestados.

cout lt lt"¿Qué libro desea pedir prestado? Ingrese el número de serie del libro 0-5"

CIN gtme;

while( libro [yo].

{

cout lt lt"El número de serie del libro que ingresó es incorrecto o el stock de libros prestados no es suficiente; vuelva a ingresarlo. El número de serie del libro es 0-5" < lt; endl

CIN gt; gt i;

//Pregunta al lector si desea realizar otras operaciones.

cout lt lt"¿Quieres hacer algo más? (Sí, ingresa y, para continuar tomando prestados libros, ingresa n)" < endl

CIN gt; gtk ;

If (k == 121)

service(); //Si el lector desea realizar otras operaciones, haga referencia a la función de servicio para reiniciar el lector.

If (k == 121)

Return; // Después de otras operaciones, salta directamente de la función prestada.

Otro

Continuar; //Si el lector elige continuar tomando prestados libros, saldrá de este bucle y entrará en el siguiente.

}

cout lt ltendl// Por la belleza de la interfaz persona-computadora, esto está bien.

cout lt lt"La siguiente es la información sobre el libro que desea tomar prestado"

Libro [I]. display();

cout lt lt"¿Cuántos libros quieres pedir prestados?" permisos de lectura, inventario de biblioteca, legalidad de entrada.

mientras ((un número) ltj || libro [i]. No ltj | | j lt0 | | j gt3)

{

cout lt lt "Debido a que no tiene permisos suficientes, la cantidad se ingresó incorrectamente o la biblioteca está agotada";

cout lt lt"¡No puede pedir prestados tantos libros en este momento! Ingrese un número apropiado . < ltendl

CIN gt;

// Pregunta al lector si debe realizar otras acciones

cout lt "¿Quieres hacer algo? ¿demás? (Sí, ingrese y, para continuar tomando prestados libros, ingrese n)" < lt; endl

CIN gt; gtk;

If (k == 121)

servicio();

Si (k == 121)

Devolver;

Otros

Continuar;

cout lt ltendl

}

Book[i]. NO = book[i]; // Reajusta la pequeña base de datos de la biblioteca después de tomar prestado el libro.

número = número j; //Después de tomar prestado un libro, el número de libros prestados por el lector se agregará al número actual de libros prestados

cout lt ltendl

p>

cout lt lt"También puedes pedirlo prestado en la biblioteca"< lta número lt lt"Este libro"

cout lt lt《》 lt ltLibro[I].

}

}//Fin de la función de préstamo

Void people::back (int a) //Devolver función miembro del libro

p>

{

int n, m;

char k;

servicio nulo(); lt "¿Qué libro quieres devolver?"

CIN gt; gtn;

While (libro [n]. NO = 3) //Juzga que el inventario de la biblioteca está lleno, entonces nadie toma prestado este tipo de libro de aquí y nadie lo devuelve

cout lt "¿Alguna vez has tomado prestado este libro? Vuelva a ingresar el número de serie del libro. "< ltendl

CIN gt; gtn;

cout lt lt" ¿Quieres hacer algo más? (Sí, ingrese y, para continuar devolviendo el libro, ingrese n)" < lt; endl

CIN gt; gtk;

If (k == 121)

servicio();

Si (k == 121)

Devolver;

Otros

Continuar;

cout lt ltendl

}

while(n gt; 5 | | n lt0) // Determina si el libro tomado prestado por el lector existe.

{

cout lt lt"El número de serie del libro que ingresó es incorrecto, vuelva a ingresarlo. El número de serie del libro es 0-5." p>CIN gt; gtn;

cout lt "¿Quieres hacer algo más? (Sí, ingresa y, para continuar devolviendo el libro, ingresa n)" < endl

p>

CIN gt; gtk;

Si (k == 121)

servicio();

Si (k == 121)

Volver;

Otros

Continuar;

cout lt ltendl

}

cout lt ltendl// Los saltos de línea aquí son para la belleza de la interfaz hombre-máquina.

cout lt lt"La siguiente es la información sobre el libro que desea tomar prestado"

Libro. display();

cout lt lt"¿Cuántos libros desea devolver"< ltendl

CIN gt;

//Juzga si esto el tipo de libro está en Si el inventario de la biblioteca es menor que la cantidad de libros que el lector desea devolver y si la entrada del lector es legal.

while ((3-book[n].No) ltm | | m gt3)

{

cout lt lt"Tomaste prestados tantos libros, por favor vuelva a ingresar."

CIN gt; gtm;

cout lt" ¿Quiere hacer algo más? (Sí, ingrese y para continuar tomando prestados libros, ingrese n) " < lt; endl

CIN gt; gtk;

if (k == 121)

servicio();

Si (k == 121)

Regresar;

si no (k = 110)

Continuar;

cout lt ltendl

}

Libro. NO = m; // Después de devolver los libros, organice la base de datos de la biblioteca de manera oportuna.

Número -= m; // Los lectores han pedido prestados libros, lo que reduce la cantidad de libros devueltos ahora.

//Aquí hay algunos consejos para los lectores.

cout lt lt"¡Felicitaciones! ¡Has devuelto el libro exitosamente!"

cout lt lt"Aún puedes prestarlo"

}//back Fin de la función

void service()//La función de servicio completa las funciones de servicio y consulta para los lectores.

{

int a;

int b;

Estudiante("Ming", 0, 2007); Se inicializa el objeto stu de la clase de estudiante.

Teacher Tea("李", 0, "Assistant"); //Define el objeto tea de la clase de profesor e inicialízalo.

//Pregunta la identidad del lector y dale opciones.

cout lt lt"Bienvenido a la biblioteca. ¿Puedo preguntarle quién es usted? (ingrese el primer número)"< ltendl

cout lt lt"1.Teacher"

cout lt lt"2.Student"

CIN gt; gta;

Y (a! = 1. amp respuesta! = 2) //Recordar al lector introducir error.

{

cout lt lt"Ingrese la opción correcta:"

CIN gt;

}

cout lt ltendl

cout lt lt"¿Qué quieres? (ingrese el primer número)"< ltendl//Pregunte al lector qué quiere hacer y déle opciones.

cout lt lt"1. Pedir prestado el libro"

cout lt lt"2. Devolver el libro"

cout lt lt"3. Dejar el préstamo desk"

CIN gt; gtb;

And (b!= 1. ampb!= 2 amp ampb!= 3) //Alerta a los lectores sobre errores de entrada.

{

cout lt lt"Ingrese la opción correcta"

CIN gt; gtb

}

cout lt ltendl

If (a == 1) // Si el lector es un profesor, haga lo siguiente.

{

if (b == 1)

{

tea. pedir prestado(6); función

}

else if (b == 2)

{

tea back(6); libro Función

}

Otro

{

cout lt lt"= _ =¡Gracias por venir!\n " lt ltendl / /Salir

}

}

Else if (a == 2) //Si el lector es un estudiante, realice las siguientes operaciones.

{

si (b == 1)

{

préstamo (4); >}

else if (b == 2)

{

Zapato con punta trasera (4);

}

Otro

{

cout lt lt"= _ =¡Gracias por venir!\n " lt ltendl

Volver;

}

}

cout lt ltendl

}//Función de fin de servicio

//Función principal

int main()

{

char k;

servicio();

Mientras (1) // Operación Una vez completado, se solicita al lector que realice acciones adicionales.

{

cout lt lt"¿Quieres continuar con otras operaciones?";

cout lt lt"(Ingrese y para otras operaciones, por favor ingrese n para salir)"

CIN gt; gtk;

cout lt ltendl

if (k == 121)

servicio ();

Otro

cout lt lt"= _=¡Gracias por venir!\n " lt ltendl

Descanso;

}

Devuelve 0;

}