Академический Документы
Профессиональный Документы
Культура Документы
ALGORITMOS II
VA R I A B L E S L O C A L E S Y F U N C I O N E S
UNIVERSIDAD NACIONAL DE CAJAMARCA
ALUMNOS
• MANOSALVA HORNA, GUSTAVO HEYLER.
• PORTAL VALDIVIA, MARCO ESAÚ.
• SILVA CERDÁN, JHAN CARLOS
• VASQUÉZ ROJAS, FRANK ADERLIN.
OBJETIVOS ESPECÍFICOS
• Dominar las funciones locales en las distintas funciones.
• Tener conocimiento sobre los parámetros de una función.
• Distinguir que es una acción y una función.
• Demostrar lo aprendido por ejemplos.
MARCO TEÓRICO
VARIABLES
DESDE EL PUNTO DE VISTA MATEMÁTICO,
SE TIENE LO SIGUIENTE:
• Una variable es una función que toma valores pertenecientes a un determinado conjunto, su
dominio, y que produce como resultado su propio valor.
• El conjunto de valores que pueden tomar la variable es infinito, salvo indicación expresa en
contra. A fin de cuentas, se trata de símbolos y un símbolo puede representar cualquier cosa. El
problema surgirá, claro, al operar con el símbolo.
• Se supone que las variables denotan valores que posiblemente tenga un número infinito de
cifras significativas.
DESDE EL PUNTO DE VISTA INFORMÁTICO,
SE TIENE LO SIGUIENTE:
una variable es un determinado segmento de memoria de proceso, del cual se conoce:
• La posición de memoria en que comienza (dirección).
• El número de bytes de que consta (extensión, un número finito).
• La codificación binaria correcta para interpretar su contenido (tipo).
Una variable es una abstracción sobre un valor almacenado en una localización de
memoria, usando la representación asociada a un tipo de datos.
• Una variable puede tener un nombre.
• El valor almacenado puede cambiar durante la ejecución de un programa.
• La localización puede cambiar durante la ejecución del programa.
LAS VARIABLES COMO
ABSTRACCIONES
Abstracción aquí significa que podemos olvidarnos de:
• El valor concreto (solo hay que conocer su tipo)
• La localización y tamaño de la zona de memoria donde se almacena la
representación del valor
• La representación concreta asociada al tipo de datos
BENEFICIOS DE LA ABSTRACCIÓN
• Olvidarnos de todo esto nos libera de la necesidad de ocuparnos de estos
aspectos:
• Esto impide que cometamos los errores que se pueden cometer al ocuparnos
de ellos (mayor fiabilidad)
• El uso de variables con nombres y tipos facilita la escritura de programas, y
aumenta su legibilidad
CONTENIDO Y ASIGNACIÓN DE UNA
VARIABLE
CL ASIFICACIÓN
DE VARIABLES
VARIABLES GLOBALES
• Una variable global es, en informática, una variable accesible en todos los
ámbitos de un programa informático. Los mecanismos de interacción con
variables globales se denominan mecanismos de entorno global.
• El uso de este tipo de variables suele considerarse como una mala práctica,
por el riesgo que conlleva esa deslocalización: una variable global puede ser
modificada en cualquier parte del programa
• En ocasiones, las variables globales resultan muy útiles. Por ejemplo, se pueden
usar para evitar tener que pasar variables usadas muy frecuentemente de
forma continua entre diferentes subrutinas.
VARIABLES LOCALES
En resumen una de una variable local:
• Su ámbito está restringido a una sentencia o a un
subprograma
• Su tiempo de vida coincide con los intervalos de tiempo
en los cuales se está ejecutando la sentencia o
subprograma
• Se crean y se destruyen automáticamente al entrar o
salir del subprograma o sentencia
Declaración de una variable local
Sin lugar a dudas, es el nivel de alcance más utilizado y
recomendado para una variable. Estas variables se
declaran en un procedimiento o evento mediante la
instrucción Dim y sólo existen mientras se ejecuta el
procedimiento. Cuando termina el procedimiento,
desaparece el valor de la variable. Además, el valor de una
variable de un procedimiento es local de dicho
procedimiento; es decir, no puede tener acceso a una
variable de un procedimiento desde otro procedimiento.
CLASIFICACION DE VARIABLES LOCALES
AC C E S I B I L I DA D
D E VA R I A B L E S
EJEMPLO DE VARIABLES LOCALES
FUNCIONES
DEFINICIÓN
• Una función es una subrutina o subprograma que forman un programa que realiza
tareas bien definidas. todo programa en c consta de una o más funciones. una de
estas funciones se llama main. la ejecución del programa siempre comenzará por la
de las instrucciones contenidas en main. a la función se le puede “pasar” información
mediante unos identificadores denominados argumentos o parámetros.
• TIPOS DE FUNCIONES:
TIPOS DE FUNCIONES SIN ARGUMENTO.- Son aquellas que no se otorga valores ni los devuelve.
TIPOS DE PARAMETROS:
Escribe una función que devuelva el área de un círculo dado su radio, además hallar el área de un
cuadrado dado su lado y el área de un rectángulo dado su altura y su base
Escribe una función que devuelva la suma, resta, multiplicación y división de dos
números.
1. Creamos un proyecto y diseñamos nuestro algoritmo.
2. Creamos un procedimiento simple (damos doble clic en el título de nuestro
formulario).
No va a retornar ningún valor pero si va a ejecutar cierta cantidad de
instrucciones.
3. Desarrollamos una función privada que va a tener tres parámetros. Luego
declaramos las variables.
4. Finalmente declaramos las variables para cada operación.
SUMA
RESTA
MULTIPLICACIÓN
DIVICIÓN
Una función tiene tres componentes importantes:
los parámetros, que son los valores que recibe la función como entrada;
el código de la función, que son las operaciones que hace la función; y
el resultado (o valor de retorno), que es el valor final que entrega la función.
En esencia, una función es un mini programa. Sus tres componentes son análogos a la entrada, el
proceso y la salida de un programa.
Parámetros
Existen dos formas en C++ de pasar parámetros a una función; por referencia o por valor. El
hecho es que si en una declaración de función se declaran parámetros por referencia, a los
mismos no se les podrá pasar valores literales ya que las referencias apuntan a objetos (variables
o funciones) residentes en la memoria; por otro lado, si un parámetro es declarado para ser
pasado por valor, el mismo puede pasarse como una constante literal o como una variable.
Parámetros por valor
La función cuadrado() (ver arriba) es un clásico ejemplo que muestra el paso de parámetros
por valor, en ese sentido la función cuadrado() recibe una copia del parámetro n. En la misma
función se puede observar que se realiza un calculo ( n*n ), sin embargo el parámetro original no
sufrirá cambio alguno, esto seguirá siendo cierto aún cuando dentro de la función hubiera una
instrucción parecida a n = n * n; o n*=n;.
Parámetros por referencia
Para mostrar un ejemplo del paso de parámetros por referencia, vamos a retomar el caso de la
función cuadrado, salvo que en esta ocasión cambiaremos ligeramente la sintaxis para definir la
misma.
Veamos:
Al poner a prueba las funciones cuadrado() y cuadrado2() se podrá verificar que la primera de
estas no cambia el valor del parámetro original, mientras que la segunda sí lo hace.
Llamar a una función
para llamar a la función cuadrado() vista anteriormente, podemos emplear:
FUNCIONES VOID
• Bajo ciertas circunstancias se deseará escribir funciones que no regresen valor alguno (esto
sería algo parecido a escribir procedures en Pascal) y para ello podemos declarar a la función
como void. La palabra reservada void es utilizada para declarar funciones sin valor de retorno
y también para indicar que una función específica no requiere de parámetros. Por ejemplo, la
función pausa() que se verá en seguida, no devolverá valor alguno y la misma no requiere de
parámetros.
FUNCIONES ANIDADAS
• A diferencia de '''Pascal''', el lenguaje C, C++ no permite anidar funciones, sin embargo, dentro
de una funcíon puede existir la llamada a una o más funciones declaradas previamente, que
determinara en cierto punto un resultado para que sea ejecutado cuando el programador lo
desee.
<div style="background:#FFFFBB; padding:16px; border-color:#0000FF; border-style:"solid">
<div style="background:#FFFFBB; padding:16px; border-color:#0000FF; border-style:"solid">
• En muchas ocasiones se desea que ciertas funciones regresen una referencia o puntero hacia
un tipo (sea este estructurado o no) específico de dato en lugar de un valor específico. En tales
casos, la función se deberá declarar como para que regrese un puntero. Por ejemplo,
supongamos que deseamos crear una función para convertir un número entero en notación
decimal a una cadena de caracteres en forma de números binarios, luego, la función
mencionada podría escribirse para que reciba el número entero como parámetro y regrese un
puntero a una cadena de caracteres conteniendo la conversión. Para ser más puntuales, vamos
a escribir un programa en donde se verá la función '''binstr()''', y cuyo objetivo será
precisamente convertir números decimales en cadenas binarias.
• observe que en la sintaxis para declarar funciones tipo puntero se debe de poner el símbolo
'''*''' despues del tipo y antes del nombre de la función que se está declarando. Esto se puede
ver en el programa, ya que la función binstr se declara como: '''char *binstr(unsigned
int);'''</div>