Vous êtes sur la page 1sur 11

Nombre de la materia

Algoritmos y estructuras de datos

Nombre de la Licenciatura
Ingenieríía en Sistemas Computacionales.

Nombre del alumno


Luis Manuel Mora Loí pez

Matrícula
000577912

Nombre de la Tarea
Tarea 2

Unidad 1
Estructuras estaí ticas de datos

Nombre del Profesor


Prof. Joseí Martíín Osuna Flores

Fecha
14/01/2019
Unidad 1: Estructuras estáticas de datos
Algoritmos y estructuras de datos

¿Sabías qué….?

El ordenamiento y búsqueda de datos son dos conceptos ampliamente utilizados en


computación ya que permiten el manejo de grandes cantidades de datos para su
procesamiento lo que facilita la realización de tareas que pudieran parecer muy complejas.

ACTIVIDAD 2

Objetivos:

 Analizar el funcionamiento y las características de los métodos de ordenación y


búsqueda.

 Estructurar algoritmos que resuelvan situaciones que requieran ordenamiento y


búsqueda de datos.

Instrucciones:
Después de revisar los recursos siguientes debes desarrollar la actividad 2.

Presentación

 Creación de archivos
En la siguiente presentación conocerás los métodos utilizados para crear y leer
archivos de texto. Comprueba cada uno de los ejemplos capturando cada código en
el editor de C#.

Lectura
 Algoritmos de ordenación y búsqueda (S.d.).

2
Unidad 1: Estructuras estáticas de datos
Algoritmos y estructuras de datos

Forma de evaluación:

Criterio Ponderación

Presentación 10%

Desarrollo del ejercicio: 90%

 Solicite al usuario introducir la longitud


del arreglo a crear. (valor 1 punto.)

 Solicite los elementos a almacenar en


el arreglo. (valor 1 punto.)

 Muestre el contenido del arreglo.


(valor 1 punto.)

 Ordene el arreglo por el método


seleccionado. (valor 2 puntos.)

 Muestre el arreglo ordenado. (valor 1


punto.)

 Solicite la búsqueda de un elemento


(valor 1 punto.)

 Indique la posición en que se localiza


el elemento buscado. (valor 2 puntos.)

Desarrollo de la actividad:
Ejemplo:

Para crear un arreglo de una dimensión se debe especificar de qué tipo serán los elementos
del array:
<tipo> [] <nombre> = new <tipo> [<tamaño>];

3
Unidad 1: Estructuras estáticas de datos
Algoritmos y estructuras de datos

Por ejemplo, si se desea crear un arreglo de 8 números enteros se hace de la siguiente


forma:
int [] numeros = new int [8];

Para acceder a un elemento en una posición i solo hay que hacer mi_array[i] si tiene una
dimensión, si tiene más de una dimensión, podemos hacer my_array[i,j].

int [] elementos = new int[]{5,4,3,2,1};


int x = elementos[2];
Console.WriteLine(x); //Se imprime 3

Localizar un elemento en un arreglo (para el caso de un arreglo tamaño 10):

Console.WriteLine("Ingrese elemento que desea buscar en el arreglo");


elemento=Console.ReadLine();
for(int i=0; i<10;i++)
if(arreglo[i]==elemento)
Console.WriteLine ("El elemento se encuentra en la posicion:{0}",posicion);
Console.ReadLine();

Ejercicio 1:
Tu tarea consiste en seleccionar un método de ordenación y búsqueda y con base a ello
realizar un programa de consola en C# que ejecute lo siguiente:
(Valor 1.0 punto)

 Solicite al usuario introducir la longitud del arreglo a crear.

class Burbuja
{

4
Unidad 1: Estructuras estáticas de datos
Algoritmos y estructuras de datos

private int [] vector;

public void Cargar()


{
Console.WriteLine("Método Burbuja");
Console.Write("Ingresa Longitud del vector: ");

(Valor 1.0 punto)

5
Unidad 1: Estructuras estáticas de datos
Algoritmos y estructuras de datos

 Solicite los elementos a almacenar en el arreglo.


{
Console.Write("Ingresa el numero" + (f+1) + ":");
linea = Console.ReadLine();
vector[f] = int.Parse(linea);
}

(Valor 1.0 punto)

 Muestre el contenido del arreglo.

6
Unidad 1: Estructuras estáticas de datos
Algoritmos y estructuras de datos

string linea;
linea= Console.ReadLine();
int num;
num = int.Parse(linea);
vector= new int [num];
for(int f=0; f < vector.Length; f++)
{
Console.Write("Ingresa el numero" + (f+1) + ":");
linea = Console.ReadLine();
vector[f] = int.Parse(linea);
}

(Valor 2.0 puntos)


 Ordene el arreglo por el método seleccionado.

7
Unidad 1: Estructuras estáticas de datos
Algoritmos y estructuras de datos

public void MetodoBurbuja()


{
int t;
for(int a = 1; a < vector.Length-1; a++)
for(int b = vector.Length - 1;b >= a; b--)
{
if(vector [b - 1] > vector[b])
{
t= vector[b-1];
vector [b-1]= vector[b];
vector[b]= t;
}
}

(Valor 1.0 punto)

 Muestre el arreglo ordenado.


public void Imprimir()
{
Console.WriteLine("Números ordenados en forma ascendente");
for(int f = 0; f <vector.Length; f ++)
{
Console.Write(vector[f] + " ");
}

(Valor 1.0 punto)

 Solicite la búsqueda de un elemento

8
Unidad 1: Estructuras estáticas de datos
Algoritmos y estructuras de datos

static void Main (string[] args)


{
Burbuja pv = new Burbuja ();
pv.Cargar();
pv.MetodoBurbuja();
pv.Imprimir();
pv.Imprimir1();
Console.Write("\n\n¿Qué elemento buscas?: ");//Aquí se pide el elemento que
se busca.
int num = int.Parse(Console.ReadLine());
pv.busqueda(num);
Console.ReadKey();
}

(Valor 2.0 punto)


 Indique la posición en que se localiza el elemento buscado.

9
Unidad 1: Estructuras estáticas de datos
Algoritmos y estructuras de datos

public void busqueda( int num)


{
int l = 0, h = 9;
int m = 0;
bool found = false;
while (l <= h && found == false)
{
m = (l + h ) / 2;
if(vector[m] == num)
found = true;
if (vector [m] > num)
h = m - 1;
else
l = m + 1;
}
if (found == false)
{ Console.Write("\nEl elemento {0} no está en el arreglo", num); }
else
{ Console.Write("\nEl elemento {0} está en la posición: {1}", num, m + 1);}

}
public void Imprimir1()
{
for(int f = 0; f > vector.Length; f++)
{
Console.Write(vector [f] + " ");
}

En caso de colocar un elemento inexistente en la lista:

En caso de tomar un elemento existente en la lista:

10
Unidad 1: Estructuras estáticas de datos
Algoritmos y estructuras de datos

Fuentes de información:
-(S.D.) Algoritmos de ordenación y búsqueda.

-Presentación: Creación de archivos. (Recursos de la semana)

-MyCyberAcademy (14 feb. 2013) Tutorial C# - 17- Arreglos. Obtenido de YouTube:


https://www.youtube.com/watch?v=5ML2uIsjLuk

11

Vous aimerez peut-être aussi