Mostrando las entradas con la etiqueta Lenguaje C. Mostrar todas las entradas
Mostrando las entradas con la etiqueta Lenguaje C. Mostrar todas las entradas

viernes, 13 de mayo de 2016

Algoritmos de Búsqueda

Un algoritmo de búsqueda es aquel que está diseñado para localizar un elemento con ciertas propiedades dentro de una estructura de datos; por ejemplo, ubicar el registro correspondiente a cierta persona en una base de datos, o el mejor movimiento en una partida de ajedrez.

La variante más simple del problema es la búsqueda de un número en un vector. Las estrategias que pueden utilizarse son las Dicotómica (binaria) ó Secuencial.



Búsqueda dicotómica (binaria)

Se utiliza cuando el vector en el que queremos determinar la existencia de un elemento está previamente ordenado. Este algoritmo reduce el tiempo de búsqueda considerablemente, ya que disminuye exponencialmente el número de iteraciones necesarias.

Está altamente recomendado para buscar en arrays de gran tamaño.

Para implementar este algoritmo se compara el elemento a buscar con un elemento cualquiera del array (normalmente el elemento central): si el valor de éste es mayor que el del elemento buscado se repite el procedimiento en la parte del array que va desde el inicio de éste hasta el elemento tomado, en caso contrario se toma la parte del array que va desde el elemento tomado hasta el final. De esta manera obtenemos intervalos cada vez más pequeños, hasta que se obtenga un intervalo indivisible. Si el elemento no se encuentra dentro de este último entonces se deduce que el elemento buscado no se encuentra en todo el array.


Búsqueda secuencial

Se utiliza cuando el vector no está ordenado o no puede ser ordenado previamente. Consiste en buscar el elemento comparándolo secuencialmente (de ahí su nombre) con cada elemento del vector hasta encontrarlo, o hasta que se llegue al final. La existencia se puede asegurar cuando el elemento es localizado, pero no podemos asegurar la no existencia hasta no haber analizado todos los elementos del vector.


Fuente:
https://es.wikipedia.org/wiki/Algoritmo_de_b%C3%BAsqueda

lunes, 4 de abril de 2016

Lenguaje C: Funciones que regresan valores no enteros

Cápitulo 4.2 del Libro "El lenguaje de programación C - Kernighan, Ritchie"

 
Como vimos anteriormente C tiene como bloque básico la función main() , también hemos visto la sentencia printf() que es otra función, y de igual forma hay muchas más funciones predefinidas, pero nosotros mismos también podemos definir nuestras propias funciones. De hecho, es fundamental hacerlo.

La sentencia return

La sentencia return puede utilizarse dentro de una función para terminar su ejecución. La instrucción return no es una función, se trata de una sentencia que lo que hace es retornar como valor de la función el valor que se le proporciona como argumento.

Argumentos

Las funciones también pueden recibir argumentos o parámetros, para modificar su comportamiento.

Declaración y Definición

Una posible implementación es declarar el prototipo de la función al principio, para informar al compilador que existe, y luego definir el cuerpo de la misma en cualquier lugar del programa.

Paso de Parámetros
Las funciones pueden recibir datos como lo hemos observado, pero existen dos formas de enviar los datos hacia una función por valor y por referencia, las cuales modifican en diferente forma el comportamiento de el programa.

Por Valor

El paso por valor envía una copia de los parámetros a la función por lo tanto los cambios que se hagan en ella no son tomados en cuenta dentro de la función main(). Ejemplo:




Por Referencia

El paso por referencia se hace utilizando apuntadores. Se envía la dirección de memoria de la variable, por lo tanto los cambios que haga la función si afectan el valor de la variable. Ejemplo:



https://es.wikibooks.org/wiki/Programaci%C3%B3n_en_C/Uso_de_funciones

jueves, 10 de marzo de 2016

Instituto Capacitas - Taller de Programación - Clase 1

Primera clase del taller de Programación - modulo introductorio - Vamos a ver una introducción al Lenguaje de Programación C.

Lenguaje de Programación C:


C es un lenguaje de programación originalmente desarrollado por Dennis M. Ritchie entre 1969 y 1972 en los Laboratorios Bell,

Se trata de un lenguaje de tipos de datos estáticos, débilmente tipificado, de medio nivel pero con muchas características de bajo nivel. Dispone de construcciones del lenguaje que permiten un control a muy bajo nivel.

Los compiladores suelen ofrecer extensiones al lenguaje que posibilitan acceder directamente a memoria o dispositivos periféricos.

El C de Kernighan y Ritchie

En 1978, Ritchie y Brian Kernighan publicaron la primera edición de El lenguaje de programación C, también conocido como La biblia de C. Este libro fue durante años la especificación informal del lenguaje. El lenguaje descrito en este libro recibe habitualmente el nombre de "el C de Kernighan y Ritchie" o simplemente "K&R C" (La segunda edición del libro cubre el estándar ANSI C,



Pueden descargar el libro desde los siguientes links

Descarga

Google drive

Box








Preparando nuestro ambiente de Desarrollo:


Necesitamos instalar el Compilador de C, y luego elegir un Editor  ó IDE para poder escribir nuestro código fuente y ejecutarlo

Obteniendo el compilador

Windows

Si utilizas windows realmente tienes varias opciones a seguir, ya que hay varios compiladores de C para windows.
Uno de ellos y que es el cual recomiendo se llama MinGW, este compilador puedes instalarlo facilmente usando el instalador que puedes encontrar aqui.
Al instalarlo, editores como Eclipse para C/C++ lo detectaran automaticamente para que lo puedas utilizar.

Cómo Intalar y Ejecutar MinGW en Windows?

Mac OSX

Si planeas desarrollar en Mac, hay una muy buena opción para tí. Personalmente recomiendo utilizar Eclipse para C/C++ como IDE principal, sin embargo puedes utilizar el que mas te sea conveniente.
En cuanto al compilador, Mac trae integrado su propio GCC, sin embargo para poder programar correctamente sera necesario que instales las herramientas del desarrollador.
Necesitaras:

  1. Una cuenta de Developer de Apple
  2. Instalar XCode
  3. Un vez instalado XCode ir a la parte de “descargas” e instalar el complemento de “Command Line Tools”(Herramientas de linea de comando) que permitiran que puedas compilar correctamente tu programa de C. Este paso es necesario.
  4. Usar tu IDE preferido para programar y usar como compilador el GCC nativo de Mac.
 LINUX
Debido a las diferentes distribuciones para Linux, sera necesario investigar instrucciones especificas para cada distribución.
Sin embargo el siguiente comando ejecutado en una terminal de comandos podra instalar el compilador GCC necesario para compilar programas hechos en lenguaje C.
sudo apt-get install gcc
Nota: Sera necesaria una conexión a internet.

Ejecutrando nuestro "Hola Mundo" en CPara ejecutarlo desde una distribución Ubuntu primero instalar g++ (sudo apt-get install g++) y luego se podra ejecutar desde Sublime Text   desde el menú Tools -> Run