0% encontró este documento útil (0 votos)
145 vistas10 páginas

Reporte de Programación Basica en C#

Este documento presenta un resumen de un proyecto de sistema de inventario de libros para una librería desarrollado en C#. El proyecto permite registrar libros, ver los libros registrados, y buscar libros por código almacenando la información en un archivo de texto. El documento describe los objetivos, el enunciado del problema, las variables y el proceso general utilizando estructuras de datos y persistencia de archivos.

Cargado por

Jorge Ponce
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
145 vistas10 páginas

Reporte de Programación Basica en C#

Este documento presenta un resumen de un proyecto de sistema de inventario de libros para una librería desarrollado en C#. El proyecto permite registrar libros, ver los libros registrados, y buscar libros por código almacenando la información en un archivo de texto. El documento describe los objetivos, el enunciado del problema, las variables y el proceso general utilizando estructuras de datos y persistencia de archivos.

Cargado por

Jorge Ponce
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 10

INDICE

INTRODUCCIÓN 1
OBJETIVOS 1
DESARROLLO DEL CASO 2
ENUNCIADO 2
PLANTEAMIENTO GENERAL DEL PROBLEMA 3
ANÁLISIS DEL PROBLEMA 3
DEFINICIÓN DE VARIABLES DE ENTRADA 3
DEFINICIÓN DE VARIABLES DE SALIDA. 3
RESTRICCIONES 3
PROCESO 4
DEFINICIÓN DE VARIABLES DE PROCESO 5
DISEÑO DE LA SOLUCIÓN 5
ALGORITMO NARRADO. 5
SINTAXIS EN C# 6
CONCLUSIONES 9
RECOMENDACIONES 9
BIBLIOGRAFÍA UTILIZADA 9
INTRODUCCIÓN
El presente trabajo contiene el desarrollo de un caso sobre estructuras de control
repetitivas, estructuras de datos y persistencia de datos.

El trabajo desarrolla la codificación de un sistema de inventario de libros de una librería,


que permite el ingreso de libros, la lectura de los libros guardados en un archivo de texto
y la búsqueda de un libro a través de digitar su código. Así mismo, se presenta, el
algoritmo en su código fuente en sintaxis en C#.

OBJETIVOS
Aplicar el conocimiento de las adquirido sobre Estructuras de control repetitivas,
Estructuras de datos y Persistencia de datos en el desarrollo de una herramienta de
administración de libros de una librería de aplicación de consola, utilizando el lenguaje
C# y el IDE Visual Studio 2015.

OBJETIVOS ESPECIFICOS
 Aplicar el conocimiento de las adquirido sobre Estructuras de control repetitivas,
 Utilizar las estructuras de datos y la Persistencia de datos en el desarrollo de una
herramienta de administración de libros de una librería de aplicación de consola,
utilizando el lenguaje C# y el IDE Visual Studio 2015.

1
DESARROLLO DEL CASO
ENUNCIADO
Desarrolle un programa haciendo uso de estructuras repetitivas, estructuras de datos y
persistencia hacia un archivo de texto plano (extensión TXT) que permita gestionar y
catalogar el inventario de libros de una librería, para ello solicita sus servicios para crear
un programa que, haciendo uso de estructuras, permita almacenar los datos de los libros
que posee la librería, El programa debe permitir al usuario introducir todos los libros que
desee mediante un menú con las opciones que se mencionan más abajo en este ejercicio
y los datos a almacenar de cada libro son los siguientes:
i. Código de libro: De tipo texto (números y letras) y digitado por el usuario.
ii. Título: Título del libro.
iii. Autor: Nombre del autor del libro.
iv. Editorial: Nombre de la editorial que publico el libro.
v. Edición: Numero de edición del libro.
vi. ISBN: Numero de ISBN del libro.
vii. Precio: Precio del libro en dólares.
viii. Cantidad: Cantidad de unidades disponibles.

El programa debe contener un menú principal que presente al usuario las siguientes
opciones:
1. Registrar Libro: Permite crear un nuevo libro y registrar todos sus datos.
2. Ver todos los libros registrados: Muestra en pantalla todos los libros registrados
en el archivo.
3. Buscar libro por código: Mediante un código de libro que el usuario digita, se busca
el libro coincidente y si hay resultados, se despliegan los datos completos del libro
buscado, si no se encuentra el libro se presenta un mensaje que no se encontró.
4. Salir.

2
PLANTEAMIENTO GENERAL DEL PROBLEMA

ENTRADA PROCESO SALIDA


Código
Titulo Registrar libro y
Archivo
Autor almacenar en archivo de
inventariolibros.txt
Editorial; texto.
Edición; Buscar todos los libros y
Lectura del
Isbn; buscar un libro por
archivo
Precio; código.
Cantidad;

ANÁLISIS DEL PROBLEMA


DEFINICIÓN DE VARIABLES DE ENTRADA
NOMBRE TIPO DESCRIPCIÓN
Código String Almacena el código del libro.
Titulo String Almacena el título del libro.
Autor Almacena el autor del libro.
String
Editorial Almacena la editorial del libro.
String
Edición Almacena la edición del libro
String
Isbn Almacena el ISBN del libro
String
Precio Almacenar el precio del libro.
Double
Cantidad Int Almacenar la cantidad de libros registrados

DEFINICIÓN DE VARIABLES DE SALIDA.


NOMBRE TIPO DESCRIPCIÓN
almacenar_archivo Permite guardar los datos en el
Clase
archivo inventariolibros
lecturadearchivo Permite la lectura del archivo
Clase
inventariolibros

RESTRICCIONES
los valores permitidos para el menú son los números 1, 2, 3, 4.

3
PROCESO
El proceso inicia estableciendo un menú de inicio con las opciones:
REGISTRAR UN LIBRO solicitará los siguientes datos: Código de libro, Título, Autor,
Editorial, Edición. ISBN, Precio, Cantidad y se guardan en el archivo de texto
inventariolibros.
VER LIBROS GUARDADOS imprime en pantalla todos los libros que se han guardado
en el archivo de texto.
BÚSQUEDA DE LIBRO buscará el código de libro digitado y lo imprimirá en pantalla.
SALIR DEL PROGRAMA permite de salir del sistema.
DEFINICIÓN DE VARIABLES DE PROCESO
NOMBRE TIPO DESCRIPCIÓN
Opcion INT Utilizada controlar la opción de menú
seleccionada
Linea, Lineauno, STRING Muestra el contenido de cada línea al buscar
Linea_dos, Lineatres, por código.
Lineacuatro,
Lineacinco, Lineaseis
codigo_libro STRING Permite buscar el código de libro ingresado.

contadordelinea INT Se utiliza para identificar cada línea en la


búsqueda por código.

DISEÑO DE LA SOLUCIÓN
ALGORITMO NARRADO.

1. Proceso gestión de Libros

2. Imprime SISTEMA DE GESTIÓN DE LIBROS


3. Imprime MENÚ PRINCIPAL
4. Se muestran las Opciones de Menú:
5. Imprime 1 - REGISTRAR UN LIBRO
6. Imprime 2 - VER LIBROS GUARDADOS");
7. Imprime 3 - BÚSQUEDA DE LIBRO");
8. Imprime 4 - SALIR DEL PROGRAMA");
9. Imprime “DIGITE LA OPCION DE DESEA UTILIZAR Y PRESIONE ENTER:”
10. Si Opción = 1
11. Guardar los datos del libro.
12. Guarda el libro en inventariolibros
13. Regresa al menú
14. Si Opción = 2:
15. Lee el archivo inventariolibros completo
16. Si Opción = 3:
17. Imprime DIGITE EL CODIGO DE LIBRO QUE DESEA ENCONTRAR:
18. Lee línea por línea e imprime Los datos para el código de libro.
19. Regresa al menú
20. Si Opción = 4:
21. Sale del programa
22. Default
23. Regresa al menú principal.
SINTAXIS EN C#
using System;
using System.IO;
using System.Collections;

namespace EjercicioPersistencia

{
class Program
{
public struct GestionarInventarioLibros
{
public static string Codigo;
public static string Titulo;
public static string Autor;
public static string Editorial;
public static string Edicion;
public static string Isbn;
public static double Precio;
public static int Cantidad;
}
static StreamReader lecturadearchivo;
static StreamWriter almacenar_archivo;
static void Main(string[] args)
{
int Opcion;
do
{
Console.Clear();
Console.WriteLine("SISTEMA DE GESTIÓN DE LIBROS");
Console.WriteLine("MENÚ PRINCIPAL");
Console.WriteLine("1 - REGISTRAR UN LIBRO");
Console.WriteLine("2 - VER TODOS LOS LIBROS REGISTRADOS");
Console.WriteLine("3 - BÚSQUEDA DE LIBRO");
Console.WriteLine("4 - SALIR DEL PROGRAMA");
Console.WriteLine("DIGITE LA OPCION DE DESEA UTILIZAR Y PRESIONE
ENTER:");
Opcion = int.Parse(Console.ReadLine());
switch (Opcion)
{
case 1://Registrar Libro: Permite crear un nuevo libro y registrar
todos sus datos.
Console.Clear();
Console.WriteLine("SISTEMA DE GESTIÓN DE LIBROS");
Console.WriteLine("DIGITE LOS DATOS DEL LIBRO QUE DESEA
GUARDAR:");
Console.Write("CODIGO: ");
GestionarInventarioLibros.Codigo = (Console.ReadLine());
Console.Write("TITULO: ");
GestionarInventarioLibros.Titulo = Console.ReadLine();
Console.Write("AUTOR: ");
GestionarInventarioLibros.Autor = Console.ReadLine();
Console.Write("EDITORIAL: ");
GestionarInventarioLibros.Editorial = Console.ReadLine();
Console.Write("EDICION: ");
GestionarInventarioLibros.Edicion = (Console.ReadLine());
Console.Write("ISBN: ");
GestionarInventarioLibros.Isbn = (Console.ReadLine());
Console.Write("PRECIO: $ ");
GestionarInventarioLibros.Precio =
double.Parse(Console.ReadLine());
Console.Write("CANTIDAD DE LIBROS: ");
GestionarInventarioLibros.Cantidad =
int.Parse(Console.ReadLine());
almacenar_archivo = new StreamWriter("inventariolibros.txt",
true);

almacenar_archivo.WriteLine("________________________________________");
almacenar_archivo.WriteLine(GestionarInventarioLibros.Codigo);
almacenar_archivo.WriteLine(GestionarInventarioLibros.Titulo);
almacenar_archivo.WriteLine(GestionarInventarioLibros.Autor);
almacenar_archivo.WriteLine(GestionarInventarioLibros.Editorial);
almacenar_archivo.WriteLine(GestionarInventarioLibros.Edicion);
almacenar_archivo.WriteLine(GestionarInventarioLibros.Isbn);
almacenar_archivo.WriteLine(GestionarInventarioLibros.Precio);
almacenar_archivo.WriteLine(GestionarInventarioLibros.Cantidad);

almacenar_archivo.WriteLine("________________________________________");
almacenar_archivo.Close();
Console.WriteLine("PRESIONE ENTER PARA REGRESAR AL MENU");
break;
case 2:
Console.Clear();
Console.WriteLine("SISTEMA DE GESTIÓN DE LIBROS");
Console.WriteLine("LIBROS GUARDADOS");
lecturadearchivo = new StreamReader("inventariolibros.txt");
int i = 0;
string linea = "";
while (!lecturadearchivo.EndOfStream)
{
linea = lecturadearchivo.ReadLine();
Console.WriteLine("{0}", linea);
i++;
}
lecturadearchivo.Close();
Console.WriteLine("PARA REGRESAR AL MENU PRESIONE ENTER");
break;
case 3:
Console.Clear();
string Linea;
string Lineauno;
string Linea_dos;
string Lineatres;
string Lineacuatro;
string Lineacinco;
string Lineaseis;
int contadordelinea = 0;
string codigo_libro;
Console.WriteLine("SISTEMA DE GESTIÓN DE LIBROS");
Console.WriteLine("BUSCAR LIBRO GUARDADO");
lecturadearchivo = new StreamReader("inventariolibros.txt",
true);
Console.Write("DIGITE EL CODIGO DE LIBRO QUE DESEA ENCONTRAR: ");
codigo_libro = Console.ReadLine();
do
{
Linea = lecturadearchivo.ReadLine();
}
while (Linea != codigo_libro && Linea != null);
Console.Clear();
Console.WriteLine("SISTEMA DE GESTIÓN DE LIBROS");
Console.WriteLine("LIBROS GUARDADOS");
Console.WriteLine("NO EXISTEN DATOS CON ESE CODIGO");
if ((Linea == codigo_libro))
{
Console.Clear();
Console.WriteLine("SISTEMA DE GESTIÓN DE LIBROS");
Console.WriteLine("LIBROS GUARDADOS");
Console.WriteLine("LOS DATOS GUARDADOS SON: ");
do
{

Console.WriteLine("________________________________________");
Linea = lecturadearchivo.ReadLine();
Console.WriteLine("CODIGO DEL LIBRO:{0}", codigo_libro);
Console.WriteLine("TITULO:{0}", Linea);
contadordelinea = contadordelinea + 1;
}
while (contadordelinea < 1);
do
{
Lineauno = lecturadearchivo.ReadLine();
Console.WriteLine("AUTOR DEL LIBRO:{0}", Lineauno);
}
while (contadordelinea < 1);
do
{
Linea_dos = lecturadearchivo.ReadLine();
Console.WriteLine("NOMBRE DE EDITORIAL:{0}", Linea_dos);
}
while (contadordelinea < 1);
do
{
Lineatres = lecturadearchivo.ReadLine();
Console.WriteLine("EDICION:{0}", Lineatres);
}
while (contadordelinea < 1);
do
{
Lineacuatro = lecturadearchivo.ReadLine();
Console.WriteLine("ISBN:{0}", Lineacuatro);
}
while (contadordelinea < 1);
do
{
Lineacinco = lecturadearchivo.ReadLine();
Console.WriteLine("PRECIO DEL LIBRO:$ {0}", Lineacinco);
}
while (contadordelinea < 1);

do
{
Lineaseis = lecturadearchivo.ReadLine();
Console.WriteLine("CANTIDAD DE LIBROS:{0}", Lineaseis);

Console.WriteLine("________________________________________");
}
while (contadordelinea < 1);
}
lecturadearchivo.Close();
Console.WriteLine("PRESIONE ENTER PARA REGRESAR AL MENU");
break;
case 4: //Salir del programa
Console.WriteLine("USTED VA A SALIR DEL SISTEMA");
Console.WriteLine("PULSE CUALQUIER TECLA PARA FINALIZAR");
break;

default:
Console.WriteLine("LA OPCION QUE DIGITO NO EXISTE");
Console.WriteLine("PRESIONE ENTER PARA REGRESAR AL MENU");
break;
}
Console.ReadKey();
} while (Opcion != 4);

}
}
}

CONCLUSIONES
Es necesaria la practica constante de las diferentes sentencias y estructuras del lenguaje
de programación c#, de esta forma el desarrollo de las tareas y practicas será mucho
más fácil y de provecho para el aprendizaje.

RECOMENDACIONES
Se recomienda la aplicación de estructuras repetitivas en tareas en las que es necesario
repetir el código ya escrito, de esta forma se hará eficiente el programa y el código sea
mas entendible.

BIBLIOGRAFÍA UTILIZADA
Material de Clases de unidades 5, 6 y 7.
Búsqueda en internet en https://docs.microsoft.com/es-es/dotnet/csharp/tour-of-csharp/

También podría gustarte