Buscar datos dentro de arreglos C# – Método Lineal
En el siguiente ejemplo se muestra cómo realizar búsquedas dentro de un arreglo de manera lineal.
Ejemplo…

using System;
using System.Drawing;
using System.Windows.Forms;
namespace BusquedaLineal
{
public class BusquedaLineal : Form
{
private Button botonBuscar;
private TextBox cajaEntrada;
private Label labelSalida;
int[] a = { 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26,
28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50 };
public BusquedaLineal()
{
InitializeComponent();
}
private void InitializeComponent()
{
this.botonBuscar = new Button();
this.cajaEntrada = new TextBox();
this.labelSalida = new Label();
this.SuspendLayout();
//
// botonBuscar
//
this.botonBuscar.Location = new System.Drawing.Point(8, 8);
this.botonBuscar.Name = "botonBuscar";
this.botonBuscar.TabIndex = 0;
this.botonBuscar.Text = "Buscar";
this.botonBuscar.Click += new System.EventHandler(this.botonBuscar_Click);
//
// cajaEntrada
//
this.cajaEntrada.Location = new System.Drawing.Point(96, 9);
this.cajaEntrada.Name = "cajaEntrada";
this.cajaEntrada.Size = new System.Drawing.Size(88, 20);
this.cajaEntrada.TabIndex = 1;
this.cajaEntrada.Text = "";
//
// labelSalida
//
this.labelSalida.Location = new System.Drawing.Point(8, 40);
this.labelSalida.Name = "labelSalida";
this.labelSalida.Size = new System.Drawing.Size(184, 23);
this.labelSalida.TabIndex = 2;
//
// BusquedaLineal
//
this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
this.ClientSize = new System.Drawing.Size(200, 69);
this.Controls.AddRange(new Control[] {
this.labelSalida,
this.cajaEntrada,
this.botonBuscar});
this.Name = "BusquedaLineal";
this.Text = "BusquedaLineal";
this.ResumeLayout(false);
}
static void Main()
{
Application.Run(new BusquedaLineal());
}
private void botonBuscar_Click( object sender,
System.EventArgs e )
{
int datoBuscar = Int32.Parse( cajaEntrada.Text );
int indiceElemento = BuscarLineal( a, datoBuscar );
if ( indiceElemento != -1 )
labelSalida.Text =
"Encontrado en el indice " + indiceElemento;
else
labelSalida.Text = "Valor no encontrado";
} // fin del metodo botonBuscar_Click
// buscar valor dentro del array
public int BuscarLineal( int[] array, int dato )
{
for ( int n = 0; n < array.Length; n++ )
{
if ( array[ n ] == dato )
return n;
}
return -1;
} // fin del metodo BusquedaLineal
}
}
Los ejercicios utilizados en este post están basados en ejemplos del libro C# How to Program de Deitel. Se pone a disposición la descargar del programa original, desarrollado para trabajar sobre Visual Studio de Microsoft en plataformas Windows, y se encuentra en inglés. La versión simplificada está basada en la original, pero sin código basura insertado por Visual Studio, se encuentra en español y ha sido probada sobre Gnu/Linux usando Mono.
6 Comentarios | deja el tuyo



Hermano yo solo tengo una pregunta para ti. como instalast mono que pasos seguiste yo casi me muero en el intento y no pude hacerlo, tengo debian etch como S.O.
Yo quiero hacerlo para ya no depender mas de Windows pues solo lo uso para programar.
Hola Casidiablo,
He mirado sus artículos sobre programación, y me parece que falta colocar un tutorial para que los novatos tengan un entorno de desarrollo. un tutorial de como instalar un IDE, puede ser Eclipse, y un compilador que genere aplicaciones para Linux, finalmente explicar como crear paquetes para que nuestros amigos o conocidos los puedan descargar de Internet e instarlos en sus maquinas.
Suerte, Esta muy bueno su blog.
Tienes toda la razón… de hecho estoy programando un video tutorial del MonoDevelop. Pero ya que lo dices, de Eclipse estaría muy bien.
Un saludo!
que es this en programacion orientada a objetos
hola me gustaria saber como puedo hacer una consulta en c# para buscar con fechas por ejemplo del 11 de marzo al 16 de marzo y k me lo mande en un datagrid o en crystal report