Está en la página 1de 6

TECNOLOGICO NACIONAL DE MÉXICO

INSTITUTO TECNOLÓGICO SUPERIOR DE GUASAVE

INGENIERÍA EN SISTEMAS COMPUTACIONALES

ASIGNATURA:
Estructura de datos
ACTIVIDAD:
Semana #5
DOCENTE:
Manuel Alfredo Flores Rosales
PRESENTA:
Suriel Adrián Bojórquez Armenta

Guasave, Sinaloa. 30 de Septiembre de 2022


Program.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;

namespace Cola
{
class Program
{
static void Main(string[] args)
{
Console.Title = "COLA SIMPLE";
int Tamaño;
int i = 0; //Eliminar valores
int f = -1;//Agg valores
string Elemento;
string Otro = "";
string Temp = "";
int Menu = 1;

Console.WriteLine("Cola - Ingresar y Eliminar");


Console.WriteLine("");
Console.Write("Ingrese el tamaño de la cola: ");
Tamaño = Int32.Parse(Console.ReadLine());
Console.WriteLine();

string[] Cola = new string [Tamaño];


Console.Clear();
do
{
Console.WriteLine("Manejo de colas simples");
Console.WriteLine("");
Console.WriteLine("Cola de tamaño[" + Tamaño + "]");
Console.WriteLine("");

string Eleccion;

Console.WriteLine("Eliga una opción");


Console.WriteLine("|-------------------------------|");
Console.WriteLine("|1- Insertar elemento en la cola|");
Console.WriteLine("|2- Eliminar elemento de la cola|");
Console.WriteLine("|3- Ver la cola |");
Console.WriteLine("|4- Salir |");
Console.WriteLine("|-------------------------------|");
Console.Write("Elección: ");
Eleccion = Console.ReadLine();
Console.Clear();

switch (Eleccion)
{
case "1":
Console.WriteLine("Insertando elementos a su cola...");
Console.WriteLine("");
Console.WriteLine(" Cola de tamaño [ " + Tamaño + " ]
");
Console.WriteLine("");

do
{
Console.Write("Ingresar elemento[" + (f + 1) + "]:
");
Elemento = Console.ReadLine();
Console.WriteLine("");

f = Insertar(Cola, Tamaño, f, i, Elemento);

Console.WriteLine("Quiere ingresar un elemento a su


cola? ([1]Si, [2]No): ");
Otro = Console.ReadLine();
Console.WriteLine("");

} while (Otro.Equals("1"));

Console.Clear();
break;

case "2":
Console.WriteLine("Eliminando elementos a su cola...");
Console.WriteLine("");
Console.WriteLine(" Cola de tamaño [ " + Tamaño + " ]
");
Console.WriteLine("");

do
{
Console.WriteLine("Quiere eliminar un elemento a su
cola? ([1]Si, [2]No): ");
Otro = Console.ReadLine();
Console.WriteLine("");
if (Otro.Equals("1"))
{
i = Eliminar(Cola, f, i, Temp);
}
} while (Otro.Equals("1"));
Console.Clear();
break;

case "3":
Console.WriteLine("Elementos de su cola");
Console.WriteLine();
Console.WriteLine("Cola de tamaño[" + f + "]");
Console.WriteLine();

Console.Write("");
Imprimir(Cola, f);
Console.WriteLine("");
Console.WriteLine("");
Console.WriteLine("Dijite cualquier tecla para salir:
");
Console.ReadKey();
Console.Clear();
break;
default:
Menu = 0;
break;
}
}while (Menu != 0);
}
private static int Insertar(string[] Cola, int Tamaño, int f, int i,
string Elemento)
{
if(f>Tamaño)
{
Console.WriteLine("Cola llena");
Console.WriteLine("");
}
else
{
f = f + 1;
Cola[f] = Elemento;
}
if(i==0)
{
i = 0;
}
return f;
}
private static int Eliminar(string[] Cola, int f, int i, string Temp)
{
if(i==f)
{
Console.WriteLine(" Unico elemento de la cola eliminado");
Temp = Cola[i];
Console.WriteLine($"{Temp} ha sido eliminado... ");
Cola[i] = null;
i = 0; f = -1;
Console.WriteLine("");
}
else
{
Temp = Cola[i];
Console.WriteLine($"{Temp} ha sido eliminado...");
Cola[i] = null;
i=i+1;
}
return i;
}
private static void Imprimir(string[] Cola, int f)
{
for (int j= 0; j<f; j++)
{
Console.WriteLine(""+Cola[j]);
}
}

}
}
Conclusión

Las colas mediante posibilitan la representación eficiente de


los datos en situaciones donde es necesario indicar el orden de
procesamiento de los mismos y no es posible prever la cantidad
de elementos a procesar por cuanto este tipo de representación
permite crear y destruir variables dinámicamente.

También podría gustarte