En C, las funciones pueden llamarse a sí mismas. Si una expresión en el cuerpo de una función llama a la propia función, se dice que ésta es recursiva. La recursividad es el proceso de definir algo en términos de sí mismo y a veces se llama definición circular. Los ejemplos de recursividad abundan. Para que en lenguaje de computadora sea recursivo, una función debe ser capaz de llamarse a sí misma. Un sencillo ejemplo es la función fact(), que calcula el factorial de un entero. El factorial de un número N es el producto de todos los número entre… Continuar leyendo


En C++, dos o más funciones pueden compartir el mismo nombre, siempre y cuando sus declaraciones de parámetros sean diferentes. El proceso por el cual varias funciones pueden compartir el mismo nombre se denomina sobrecarga (overload) de funciones. De estas funciones se dice que están sobrecargadas. El programa 28SOB_FUNC.CPP es  un ejemplo de funciones sobrecargadas, que es una de las claves de la programación orientada a objetos. En este programa ejemplo hay tres funciones, además de la función principal, y las tres tienen el mismo nombre.  La primer pregunta es probablemente «¿ Qué función se ejecutará cuando se llame a… Continuar leyendo


LOS PROTOTIPOS Examinemos el archivo 23PROTIPO1.CPP Un prototipo es un modelo limitado de una entidad más completa que vendrá luego.  En este caso, la función “relleno” es la entidad completa que vendrá luego y el prototipo se ilustra en la línea 3.  El prototipo proporciona información sobre el tipo devuelto o producido por la función, así como sobre sus parámetros. Se utiliza para verificar los llamados a la función, ya que controla el número y el tipo de los parámetros, comprobando si son los apropiados. En nuestro ejemplo, cada llamado a la función llamada “relleno()” debe tener exactamente tres parámetros… Continuar leyendo


FUNCIONES en c++ Al incrementarse el tamaño y la complejidad de los programas, es muy recomendable dividirlos en partes más pequeñas llamadas funciones. Cada función ejecuta una tarea específica. Cuando el programa necesita ejecutar la tarea llama a la función, proporcionándole la información que pudiera necesitar para realizar su procesamiento. Creación y uso de las primeras funciones Cada función que se crea dentro de los programas debe tener un nombre único y, como en el caso de los nombres de variables, el nombre de la función debe corresponder a la operación que realiza, para hacer el programa más comprensible. Por… Continuar leyendo


DEFINES Y MACROS: AYUDA A UNA PROGRAMACIÓN CLARA A continuación vemos el primer ejemplo de algunas «defines» y «macros»: 19DEFINE.C Observamos que las 4 primeras líneas de programa empiezan con la palabra «#define«. Es la manera de definir todos los «macros» y las «defines«. Antes de empezar la compilación, el compilador efectúa un paso de preprocesador para resolver todas las «defines». En el caso presente encontrará cada sitio donde la combinación «START» aparezca y, simplemente la sustituirá por un 0, ya que esto es una definición. El compilador nunca verá la palabra «START» en toda la compilación. Sólo encontrará ceros.… Continuar leyendo


CAMP acrónimo de Content Agnostic Malware Protection es un nuevo sistema de seguridad actualmente en desarrollo y que fue presentado en sociedad por Google el pasado mes de febrero en el Simposium sobre sistemas distribuidos de seguridad de redes. Sin demasiada información por el momento todo apunta que el sistema desarrollado para el navegador de Chrome está centrada en la protección de sistemas operativos Windows. No obstante, no se descarta su llegada a plataformas móviles como Android. Pese a la buena noticia que supondría para la comunidad de Internet la llegada de un antivirus como CAMP, la noticia ha despertado… Continuar leyendo


Git es la herramienta de control de versiones más popular que existe en la actualidad en el mundo del desarrollo con la que gestionar los cambios que se realizan sobre el código de un proyecto en un lenguaje de programación. Buena parte del éxito de Git recae en GitHub, un excelente servicio de alojamiento de repositorios de software, que ofrece un conjunto de características muy útiles para el trabajo en equipo. Tras cinco años desde su lanzamiento Github se ha convertido en una de las piedras angulares de proyectos de software libre como jQuery, Ruby on Rails, node.js o CakePHP.… Continuar leyendo


Veamos a continuación el archivo 17VARDEF.CPP Las variables son automáticamente inicializadas a cero cuando se declaran.  Los variables  “indice”, en la línea 3, y “estático”, en la línea 25 son, por lo tanto, automáticamente inicializadas a cero.  Por supuesto, todavía se pueden inicializar con algún otro valor si se desea. Las variables globales, como “indice”, se llaman a veces externas. La variable “elemento” en la línea 7, no contiene un valor válido. En la línea 10, se le asigna un valor utilizando a “indice” (que vale cero) y se muestra por pantalla. VARIABLE DE REFERENCIA En la línea 8 se… Continuar leyendo


Existen tres estructuras en C que no tienen sentido cuando se ven por primera vez, ya que no son intuitivas, pero al contrario, son extremadamente útiles para incrementar la eficiencia del código compilado y las usan muchos programadores expertos en C. El programa 14CRIPTICA.CPP es un ejemplo de 3 nuevas construcciones. En este programa algunas variables son definidas e inicializadas en el mismo mandato, para su uso posterior. El primer mandato ejecutable, simplemente suma 1 al valor de “x”. Los dos siguientes mandatos también añaden 1 al valor de “x”, pero utilizando el operador de incremento de C++, un doble… Continuar leyendo


La función printf() Antes de analizar las asignaciones y comparaciones lógicas veremos una función similar al cout que se utiliza en la programación en el lenguaje C. Tiene el propósito de visualizar algo en la pantalla, este algo está dentro de unos paréntesis, rodeados a su vez por signos de comillas. Ej:         printf (“Este texto aparecerá por pantalla.\n”); Como vemos, con la función printf se puede utilizar también el caracter de retorno de carro. A continuación veremos el programa 10PRINTF.CPP en el que se utiliza esta función con diferentes tipos de datos, modificando el formato de salida por pantalla. Como… Continuar leyendo