CONTENIDO DE LA LECCIÓN 18

CONTENIDO DE LA LECCIÓN 18 CONTENIDO DE LA LECCIÓN 18

azul2.bnct.ipn.mx
from azul2.bnct.ipn.mx More from this publisher
06.05.2013 Views

MIGUEL Á. TOLEDO MARTÍNEZ return busquedaBin(A, elemento, mitad + 1, ultimo); } / /FINAL DE else EXTERNO } // FINAL DE busquedaBin() No deberá tener ningún problema para comprender este código, ya que refleja la interfaz de la función y al algoritmo que se desarrolló. Aquí la única diferencia es que las llamadas recursivas en busquedaBin() forman parte de un enunciado return. Recuerde que C++ requiere que todos los caminos de ejecución de una función sin void den origen a un enunciado return. Ejemplo 18.36 El siguiente programa, BÚSQUEDA.CPP, ilustra los métodos de búsqueda lineal y binaria. Es bastante interesante la solución que se propone, por lo que se le pide al lector que lea con detenimiento la codificación. /* El siguiente programa: BUSQUEDA.CPP, busca en arreglos usando los métodos de búsqueda lineal y binaria. */ #include #include #include typedef int (*funcBusqueda)(int,int[],int); const int MIN = 2; const int MAX = 10; const int NO_ENCONTRADO = -1; // Pide al usuario la cantidad de elementos del arreglo int obtenNumPuntos(int minimo, int maximo) { int numPuntos; do { cout

MIGUEL Á. TOLEDO MARTÍNEZ { for (int i = 0; i < num; i++) { cout.width(5); cout

MIGUEL Á. TOLEDO MARTÍNEZ<br />

return busquedaBin(A, elemento, mitad + 1, ultimo);<br />

} / /FINAL <strong>DE</strong> else EXTERNO<br />

} // FINAL <strong>DE</strong> busquedaBin()<br />

No deberá tener ningún problema para comprender este código, ya que refleja la interfaz de la función y<br />

al algoritmo que se desarrolló. Aquí la única diferencia es que las llamadas recursivas en busquedaBin()<br />

forman parte de un enunciado return. Recuerde que C++ requiere que todos los caminos de ejecución de<br />

una función sin void den origen a un enunciado return.<br />

Ejemplo <strong>18</strong>.36<br />

El siguiente programa, BÚSQUEDA.CPP, ilustra los métodos de búsqueda lineal y binaria. Es bastante<br />

interesante la solución que se propone, por lo que se le pide al lector que lea con detenimiento la<br />

codificación.<br />

/* El siguiente programa: BUSQUEDA.CPP, busca en arreglos usando los métodos de búsqueda lineal<br />

y binaria.<br />

*/<br />

#include <br />

#include <br />

#include <br />

typedef int (*funcBusqueda)(int,int[],int);<br />

const int MIN = 2;<br />

const int MAX = 10;<br />

const int NO_ENCONTRADO = -1;<br />

// Pide al usuario la cantidad de elementos del arreglo<br />

int obtenNumPuntos(int minimo, int maximo)<br />

{<br />

int numPuntos;<br />

do<br />

{<br />

cout

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!