Investigación Tema 6

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 27

Tecnológico Nacional de México

Instituto Tecnológico Gustavo A.


Madero
Docente: Donají Tapia Hernández
Alumna: Yesenia Sánchez Martínez
Carrera: Ingeniería Industrial
Materia: Algoritmos y Lenguajes de
Programación
Cuarto Semestre
24 /Abril / 2024
Unidad 6
(Tema 6)
-Funciones-
INVESTIGACIÓN
1
ÍNDICE

6.1 Introducción………………………………………………………………………3

6.2 Funciones estándar……………………………………………………………..6

6.3 Entrada y salida de datos………………………………………………………10

6.4 Funciones definidas por el usuario………………………………………….13

6.5 Pase por valor………………………….………………………………………..16

6.6 Pase por preferencia………………………..………………………………….20

6.7 Elaboración de programas…………………………………………………….23

6.8 Conclusión……………………………………….………………………………26

6.9 Bibliografía………………………………………………………………………..27

2
Introducción

A continuación, desarrollaremos el tema de las funciones dentro de los algoritmos y


lenguaje de programación ya que permiten mejorar la legibilidad, facilitar su mantenimiento
y promover la reutilización. Se mostrarán ciertos puntos importantes a destacar referente a
las funciones.

Una función es un conjunto de instrucciones que realizan una operación específica. Puede
recibir valores de entrada, procesarlos y devolver un resultado. Ayudan a dividir un problema
grande en problemas más pequeños y manejables, lo que facilita su resolución.

También conocido como una subrutina o subprograma, como idea general, se presenta
como un Sub - algoritmo que forma parte del algoritmo principal, el cual permite resolver
una tarea específica. Algunos lenguajes de programación, como Visual Basic .NET o
Fortran, utilizan el nombre función para referirse a subrutinas que devuelven un valor. Una
subrutina al ser llamada dentro de un programa hace que el código principal se detenga y
se dirija a ejecutar el código de la subrutina, en cambio cuando se llama a una macro, el
compilador toma el código de la macro y lo implanta donde fue llamado, aumentando así el
código fuente y por consiguiente el objeto. Una función puede llamarse múltiples veces e
incluso llamarse a sí misma (función recurrente).

Las declaraciones de subrutinas generalmente son especificadas por:

➢ Un nombre único en el ámbito: nombre de la función con el que se identifica y se


distingue de otras.
➢ Un tipo de dato de retorno: tipo de dato del valor que la subrutina devolverá al
terminar su ejecución.
➢ Una lista de parámetros: especificación del conjunto de argumentos (pueden ser
cero, uno o más) que la función debe recibir para realizar su tarea.
➢ El código u órdenes de procesamiento: conjunto de órdenes y sentencias que debe
ejecutar la subrutina la subrutina.
➢ Las funciones en programación generalmente son las que realizan los cálculos para
retornar el valor correspondiente a una función matemática.

3
Generalidad de las Funciones:

❑ Descripción: Las funciones sirven para asignarles un nombre. Mediante el nombre


con él se etiqueta la función se ejecutará el bloque de sentencias que contiene.
❑ Uso: Permite una estructura para un programa. La capacidad de abstraernos sobre
cómo está escrita esa función garantiza la efectividad y lacapacidad de encapsular
datos dentro, que pertenecen a la función y que nadie los puede manipular desde
fuera.
❑ Cómo definir una función: Una función se define con la palabra "function" seguida
del nombre de la función. A continuación, se ponen unos paréntesis y luego abrimos
llaves y cerramos llaves. Dentro de las llaves colocamos el código que pertenece a
esa función, es decir, la estructura secuencial de instrucciones, con las estructuras
como condicionales o ciclos.

❑ Cómo invocar una función: Una vez que la función esta definida en el programa
probablemente la queramos invocar, para lo que se usa el propio nombre de la
función y los paréntesis de apertura y cierre.

❑ Parámetros de las funciones: Las funciones a veces necesitan recibir datos para
poder ejecutarse. Por ejemplo, una función que comprueba si una variable de
cadena es una dirección de email bien formada, requeriría recibir por parámetro
el email que debe validar.

4
Las funciones pueden recibir cualquier número de parámetros y se colocan entre
los paréntesis en la definición de la función. Entre paréntesis se coloca "email". Ese
es el parámetro de la función. Dentro de la función se conocerá ese identificador
"email" que contendrá la dirección que se debe validar.

❑ Valores de retorno en funciones: Las funciones son capaces de devolver valores.


En el caso de la función "sumar", necesitaría devolver el resultado de la
operación, para lo que se usa la palabra "return".

No es necesario que las funciones devuelvan siempre valores. Podrían existir


perfectamente funciones que no devuelven datos y simplemente realizan
algún comportamiento determinado.
Para invocar la función tendremos que enviarle los argumentos de los dos
parámetros que ha definido, entre los paréntesis.

5
6.2 Funciones estándar

También conocido como una subrutina o subprograma, como idea general, se presenta
como un sub-algoritmo que forma parte del algoritmo principal, el cual permite resolver una
tarea específica. Algunos lenguajes de programación, como Visual Basic .NET o Fortran,
utilizan el nombre función para referirse a subrutinas que devuelven un valor. Una subrutina
al ser llamada dentro de un programa hace que el código principal se detenga y se dirija a
ejecutar el código de la subrutina, en cambio cuando se llama a una macro, el compilador
toma el código de la macro y lo implanta donde fue llamado, aumentando así el código
fuente y por consiguiente el objeto.

Las funciones son casi exactamente iguales que los procedimientos con respecto a la
forma en que se los llama y se los crea o declara en el código, en cómo se le pasa los
parámetros etc... La diferencia fundamental con respecto a los procedimientos o subrutinas
es que estos, luego de ejecutar el código que tengan en su interior, al final retornan un valor,
y este valor luego lo podemos utilizar para una determinada tarea.

Estas funciones estándar son fundamentales para el desarrollo de software, ya que


permiten a los programadores aprovechar implementaciones probadas y optimizadas de
funcionalidades comunes, lo que ahorra tiempo y reduce la posibilidad de errores. Además,
estas funciones suelen estar optimizadas para el rendimiento y son compatibles con
diferentes plataformas y sistemas operativos.

Para declarar o crear una función podríamos escribir lo siguiente:

6
❑ Funciones para el tratamiento de cadenas: Las funciones de cadena, como su
nombre lo indica, se utilizan para trabajar y tratar las cadenas de caracteres.
✓ Función Lcase y Ucase: Estas dos funciones se utilizan para
convertir cadenas de texto a minúscula y mayúscula. La función
Lcase cambia o convierte una cadena de texto a minúscula y
un ejemplo de como utilizarla sería así:

❑ Función Trim, LTrim y RTrim: Estas tres funciones se utilizan para eliminar los
espacios vacíos de una cadena. LTrim elimina los espacios vacíos de la parte
izquierda de la cadena, RTrim de la parte derecha y Trim de ambas partes.
✓ Para eliminar los espacios vacíos de la izquierda

✓ Borrar todos los espacios vacíos de la parte derecha de la cadena

7
✓ Elimina todos los espacios vacíos de ambos lados de la cadena

❑ Función Len: Permite conocer la cantidad de caracteres que tiene una


determinada cadena. O sea que esta función nos devuelve un número.

❑ Función Asc y Chr: La función Asc nos permite obtener el código ASCII de un de
terminado caracter.

❑ Función InsTr: Se utiliza para buscar una cadena o parte de una cadena dentro de
otra cadena.

❑ Función Str y Val: La función Val convierte una cadena en un número yla función Str
un número en una cadena

8
❑ Función Round: La función Round se utiliza para redondear un número decimal,
devolviendo un número entero.

❑ Funciones de formato: Posee varias funciones para darle formato a distintos


tipos de datos e información.

❑ Función Format: La función Format es mas completa que las anteriores funciones,
porque puede manejar mas tipos de datos, y no devuelve solo cadenas, esta
también puede devolver números y fechas.

9
6.3 Entrada y salida de datos

Entrada/salida, también abreviado E/S o I/O (del original en inglés input/output), es la


colección de interfaces que usan las distintas unidades funcionales (subsistemas) de
un sistema de procesamiento de información para comunicarse unas con otras, o
lasseñales (información) enviadas a través de esas interfaces.

Las entradas son las señales recibidas por la unidad, mientras que las salidas son
las señales enviadas por ésta.Las cajas de dialogo son ventanas con controles que
podemos visualizar en el instante que necesitemos hacer una entrada o salida de datos.
Visual Basic tiene cajas de dialogo predefinidas que nos permiten realizar opciones de E/S
con muy poco esfuerzo. Por ejemplo, la función inputbox visualiza una caja de dialogo
presentando información o resultados. Entrada de datos InputBox InputBox presenta un
mensaje al usuario, permitiéndole ingresar un valor en una caja de texto:

Los parámetros principales de esta función son:

InputBox (Promt,Title, Default)

✓ El parámetro Prompt específica la leyenda que mostrará la caja de mensajes.


✓ El parámetro Title especifica el título que llevará el cuadro de diálogo.
✓ El parámetro Default es el texto que mostrará la caja de texto

10
❑ MsgBox: La función MsgBox, es muy fácil de usar y se utiliza para mostrar distintos
tipos de mensajes. Ejemplos de mensajes o cajas de texto con la función MsgBox
que podemos mostrar.

❑ Salida de datos : El método Print visualiza datos en un formulario (objeto Form). Así
mismo, permite visualizar datos en la ventana inmediato (a través del objeto Debug),
en una caja de imagen (Control PictureBox) o en una impresora (utilizando el objeto
Printer). Su sintaxis es: objeto.Print lista_de_expresiones
Las siguientes sentencias muestran algunos ejemplos de la utilización del
métodoPrint:
▪ Print a +5, a * b / 2, c$, "Fin"
▪ Print x; y +5; w
▪ Print n; m
▪ Print "LISTADO DE RESULTADOS"

La conexión de dispositivos periféricos a un computador no puede llevarse a cabo de forma


directa haciendo uso del bus del procesador, esta restricción es debida fundamentalmente
a tres razones importantes:

❑ Existe una gran variedad de dispositivos con distintos modos de operación.


❑ El ritmo de transferencia de datos es, en casi todos los casos, mucho menor que
hay entre la CPU y la memoria principal.
❑ En ocasiones, el periférico requiere que los datos le sean suministrados en
formatos distintos al utilizado por la CPU.

11
Para la realización de una operación de entrada y salida de datos, el sistema operativo debe
efectuar las siguientes funciones:

✓ Recuento de las unidades de información transferidas (normalmente bytes) para


reconocer el fin de operación.
✓ Sincronización de velocidad entre la CPU y el periférico.
✓ Detección de errores (e incluso corrección) mediante la utilización de los códigos
necesarios (bits de paridad, códigos de redundancia cíclica, etc.).
✓ Almacenamiento temporal de la información. Es más eficiente utilizar un buffer
temporal específico para las operaciones de E/S que utilizan el área de datos del
programa.
✓ Conversión de códigos, conversión serie/paralelo, etc.

Las funciones que debe realizar un computador para ejecutar trabajos de entrada/salida
son las siguientes:

✓ Direccionamiento o selección del dispositivo que debe llevar a cabo la operación de


E/S.
✓ Transferencia de los datos entre el procesador y el dispositivo (en uno u otro
sentido).
✓ Sincronización y coordinación de las operaciones.

Esta última función es necesaria debido a la diferencia de velocidades entre los


dispositivos y el CPU y a la independencia que debe existir entre los periféricos y
la CPU (por ejemplo, suelen tener relojes diferentes).

12
6.4 Funciones definidas por el usuario

Al igual que las funciones en los lenguajes de programación, las funciones definidas por el
usuario de MicrosoftSQL Server son rutinas que aceptan parámetros, realizan una acción,
como un cálculo complejo, y devuelven el resultado de esa acción como un valor. El
valor devuelto puede ser un valor escalar único o un conjunto de resultados.

Las funciones definidas por el usuario permiten crear scripts estructurados. Las funciones
definidas por el usuario se deben declarar al principio de un script. La palabra clave
FUNCTION identifica el bloque de sentencias de una función definida por el usuario.

Ventajas de las funciones definidas por el usuario.

✓ Permiten una programación modular: Puede crear la función una vez, almacenarla
en la base de datos y llamarla desde el programa tantas veces como desee.
Las funciones definidas por el usuario se pueden modificar, independientemente del
código de origen del programa.
✓ Permiten una ejecución más rápida: las funciones definidas por el usuario Transact-
SQL reducen el costo de compilación del código Transact-SQL almacenando los
planes en la caché y reutilizándolos para ejecuciones repetidas. Esto significa que
no es necesario volver a analizar y optimizar la función definida por el usuario con
cada uso, lo que permite obtener tiempos de ejecución mucho más rápidos.
Las funciones CLR ofrecen una ventaja de rendimiento importante sobre las
funciones Transact-SQL para tareas de cálculo, manipulación de cadenas y
lógica empresarial. Las funciones Transact-SQL se adecuan mejor a la lógica
intensiva del acceso a datos.
✓ Reducir el tráfico de red: Una operación que filtra datos basándose en restricciones
complejas que no se puede expresar en una sola expresión escalar se puede
expresar como una función. La función se puede invocar en la cláusula WHERE
para reducir el número de filas que se envían al cliente.

13
Componentes de una función definida por el usuario.

Las funciones definidas por el usuario se pueden escribir en Transact-SQL, o en cualquier


lenguaje de programación .NET. Para obtener más información acerca del uso de lenguajes
.NET en funciones, vea Funciones CLR definidas por el usuario.

Todas las funciones definidas por el usuario tienen la misma estructura de dos partes: un
encabezado y un cuerpo. La función toma cero o más parámetros de entrada y devuelve
un valor escalar o una tabla.

El encabezado define

✓ Nombre de función con nombre de propietario o esquema opcional


✓ Nombre del parámetro de entrada y tipo de datos
✓ Opciones aplicables al parámetro de entrada
✓ Tipo de datos de parámetro devueltos y nombre opcional
✓ Opciones aplicables al parámetro devuelto

El cuerpo define la acción o la lógica que la función va a realizar.

✓ Una o más instrucciones Transact-SQL que ejecutan la lógica de la función


✓ Una referencia a un ensamblado .NET

Las funciones definidas por el usuario permiten crear scripts estructurados.

Las funciones definidas por el usuario se deben declarar al principio de un script. La palabra
clave FUNCTION identifica el bloque de sentencias de una función definida por el usuario.

✓ Las declaraciones de funciones deben seguir un formato específico: Tipo-retorno


FUNCTION nombre-función (parámetros opcionales) { variables locales opcionales;
sentencias...}

14
En Visual Basic 6.0, para mostrar una fecha en formato corto o largo, utiliza el especificador
de formato "ddddd" o "dddddd". Los especificadores DayOfWeek ("w") y WeekOfYear ("ww")
muestran el primer día de la semana y la primera semana del año, respectivamente. El
carácter en minúscula "m" muestra el mes con un número sin cero a la izquierda. El
especificador Quarter ("q") muestra el trimestre del año con un número del 1 al 4.

Para mostrar los minutos como un número con o sin ceros iniciales, utiliza el especificador
de formato "Nn" o "N". Los caracteres "Hh" muestran la hora como un número con ceros
iniciales, y "ttttt" muestra la hora completa. Para mostrar las letras "A" o "P" en mayúscula
o minúscula con una hora anterior o posterior al mediodía, utiliza "AM/PM", "am/pm", "A/P",
"a/p" o "AMPM."

El especificador de fecha y hora abreviado ("c") muestra una fecha y hora en el formato
"ddddd ttttt". En Visual Basic 6.0, la función Format convierte las cadenas en números, si
es necesario, antes de asignarles un formato. Format muestra un separador decimal final
si no hay parte fraccionaria. Visual Basic 6.0 admite cuatro secciones en la cadena de
formato. Estas secciones están separadas mediante puntos y coma (;) y especifican el
formato de los valores positivos, negativos, cero y nulos, respectivamente. Los números
negativos con una sección negativa vacía en la cadena de formato muestran una cadena
vacía. El formato de notación científica permite que se incluyan los marcadores de posición
de dígitos "0" y "#" después del exponente.

En Visual Basic 6.0, puede crear expresiones para las cadenas de formato definidas por el
usuario con los especificadores @, &, <, > y !.

15
6.5 Pase por valor

El paso de parámetros por valor consiste en copiar el contenido de la variable que queremos
pasar en otra dentro del ámbito local de la subrutina, consiste pues en copiar el contenido
de la memoria del argumento que se quiere pasar a otra dirección de memoria,
correspondiente al argumento dentro del ámbito de dicha subrutina. Se tendrán dos valores
duplicados e independientes, con lo que la modificación de uno no afecta al otro. La
diferencia entre uno y otro método de paso de parámetros, es que en ByVal se envía una
copia de la variable, y de esta manera si se efectúa un cambio en el procedimiento, solo
tendrá efecto dentro del procedimiento o función, una vez que termine y finalice el mismo,
la variable original pasará a valer el dato que tenía, es decir no se modifica.

Ejemplo de envío de parámetros por Valor ( ByVal )

Ejemplo pase por valor:

16
El paso de parámetros por valor consiste en copiar el contenido de la variable que queremos
pasar en otra dentro del ámbito local de la subrutina, consiste pues en copiar el contenido
de la memoria del argumento que se quiere pasar a otra dirección de memoria,
correspondiente al argumento dentro del ámbito de dicha subrutina. Se tendrán dos valores
duplicados e independientes, con lo que la modificación de uno no afecta al otro.

Paso por valor resultado

Es un tipo poco usado en los lenguajes de programación actuales. Se basa en que dentro
de la función se trabaja como si los argumentos hubieran sido pasados por valor pero al
acabar la función los valores que tengan los argumentos serán copiados a las variables que
pertenecían. El argumento buttons tiene estos valores: Para ver el gráfico seleccione la
opción ¨Descargar trabajo¨ del menú superior El primer grupo de valores (0 a 5) describe el
número y el tipo de los botones mostrados en el cuadro de diálogo; el segundo grupo (16,
32, 48, 64) describe el estilo del icono, el tercer grupo (0, 256, 512) determina el botón
predeterminado y el cuarto grupo (0, 4096) determina la modalidad del cuadro de mensajes.
Cuando se suman números para obtener el valor final del argumento buttons, se utiliza
solamente un número de cada grupo.

Nota: Estas constantes las especifica Visual Basic for Applications. Por tanto, el nombre de
estas puede utilizarse en cualquier lugar del código en vez de sus valores reales.

Valores devueltos: Para ver el gráfico seleccione la opción ¨Descargar trabajo¨ del menú
superior. Cuando se proporcionan tanto helpfile como context, el usuario puede presionar
F1 para ver el tema de Ayuda correspondiente al context. Algunas aplicaciones host, por
ejemplo Microsoft Excel, también agregan automáticamente un botón Ayuda al cuadro de
diálogo. Si el cuadro de diálogo cuenta con un botón Cancelar, presionar la tecla ESC tendrá
el mismo efecto que hacer clic en este botón. Si el cuadro de diálogo contiene un botón
Ayuda, se suministra ayuda interactiva para ese cuadro de diálogo. Sin embargo, no se
devuelve valor alguno hasta que se hace clic en uno de estos botones.

Nota: Si desea especificar más que el primer argumento con nombre, debe utilizar MsgBox
en una expresión. Si desea omitir algún argumento de posición, debe incluir el delimitador
de coma correspondiente.

17
InputBox (Función): Muestra un mensaje en un cuadro de diálogo, espera que el usuario
escriba un texto o haga clic en un botón y devuelve un tipo String con el contenido del
cuadro de texto.

Sintaxis: InputBox(prompt[, title][, default][, xpos][, ypos][, helpfile, context]) La sintaxis de la


función InputBox consta de estos argumentos con nombre: Para ver el gráfico seleccione
la opción ¨Descargar trabajo¨ del menú superior. Si no especifica un tipo de datos o un tipo
de objeto y no existe ninguna instrucción Deftipo en el módulo, la variable predeterminada
será Variant. Cuando se inicializan variables, una variable numérica se inicializa con 0, una
cadena de longitud variable se inicializa con una cadena de longitud 0 ("") y una cadena de
longitud fija se llena con ceros. Las variables Variant se inicializan con Empty. Cada
elemento de una variable de un tipo definido por el usuario se inicializa como si fuera una
variable distinta.

Nota: Cuando utiliza la instrucción Dim en un procedimiento, generalmente pone la


instrucción Dim al principio de este. Public (Instrucción). Se usa en el nivel de módulo para
declarar variables públicas y asignarles espacio para almacenamiento. Las variables
declaradas mediante la instrucción Public están disponibles para todos los procedimientos
en todos los módulos de todas las aplicaciones, a menos que Option Private Module esté
en efecto; en este caso, las variables sólo son públicas dentro del proyecto en el que
residen. La instrucción Public no se puede usar en un módulo de clase para declarar una
variable de cadena de longitud fija. Utilice también la instrucción Public para declarar el tipo
de objeto de una variable.

La instrucción siguiente declara una variable para una nueva instancia de una hoja de
cálculo. Si no utiliza la palabra clave New al declarar una variable de objeto, la variable que
se refiere a un objeto debe asignarse a un objeto existente mediante la instrucción Set antes
de que se pueda usar. Hasta que se le asigne un objeto, la variable de objeto declarada
tiene el valor especial Nothing, el cual indica que no se refiere a ninguna instancia en
particular de un objeto. También puede utilizar una instrucción Public con paréntesis vacíos
para declarar matrices dinámicas.

Después de declarar una matriz dinámica, use la instrucción ReDim dentro de un


procedimiento para definir el número de dimensiones y elementos de la matriz. Si intenta
volver a declarar una dimensión para una matriz cuyo tamaño se ha especificado
explícitamente en una instrucción Private, Public o Dim, ocurrirá un error.

18
Cuando se inicializan las variables, una variable numérica se inicializa a 0, una cadena de
longitud variable se inicializa a una cadena de longitud cero ("") y una cadena de longitud
fija se rellena con ceros. Las variables Variant se inicializan a Empty. Cada elemento de una
variable de un tipo definido por el usuario se inicializa como si fuera una variable distinta.

19
6.6 Pase por referencia

El paso de parámetros por referencia consiste en proporcionar a la subrutina a la que se le


quiere pasar el argumento la dirección de memoria del dato. En este caso se tiene un único
valor referenciado (o apuntado) desde dos puntos diferentes, el programa principal y la
subrutina a la que se le pasa el argumento, por lo que cualquier acción sobre el parámetro
se realiza sobre la misma posición de memoria. En los parámetros enviados por
Referencia, lo que se hace es enviar un puntero de la variable original. Entonces, si
en la función o procedimiento se cambia el valor de la variable, el cambio seguirá
manteniéndose una vez que finalice la ejecución del procedimiento o función.

Ejemplo de envío de parámetros por Referencia (ByRef)

Este ejemplo es igual que el anterior, pero en la Sub sumar, la variable Valor se declara con
(ByRef por Referencia )

Ejemplo pase por referencia:

20
El paso de parámetros por referencia consiste en proporcionar a la subrutina a la que se le
quiere pasar el argumento la dirección de memoria del dato. En este caso se tiene un único
valor referenciado (o apuntado) desde dos puntos diferentes, el programa principal y la
subrutina a la que se le pasa el argumento, por lo que cualquier acción sobre el parámetro
se realiza sobre la misma posición de memoria. En Visual Basic, puede transferir un
argumento a un procedimiento por valor o por referencia. Esto se conoce como mecanismo
para pasar argumentos, y determina si el procedimiento puede modificar el elemento de
programación subyacente al argumento en el código de llamada. La declaración del
procedimiento determina el mecanismo para pasar argumentos de cada parámetro
mediante la palabra clave ByVal o ByRef.

Distinciones

Al pasar un argumento a un procedimiento, tenga en cuenta las distintas

condiciones que interactúan entre sí:

✓ Si el elemento de programación subyacente es modificable o no modificable.


✓ Si el propio argumento es modificable o no modificable.
✓ Si el argumento se transfiere por valor o por referencia.
✓ Si el tipo de datos del argumento es un tipo de valor o un tipo de
✓ Referencia.

Debe seleccionar minuciosamente el mecanismo para pasar argumentos de cada


argumento.

✓ Protección: A la hora de elegir uno de los dos mecanismos que existen para pasar
argumentos, el criterio más importante que hay que tener en cuenta es la exposición
al cambio de las variables de llamada. La ventaja de pasar un argumento con ByRef
es que el procedimiento puede devolver un valor al código de llamada por medio del
argumento. La ventaja de pasarlo con ByVal es que protege a la variable de los
cambios que sobre ella pueda efectuar el procedimiento.

21
✓ Rendimiento. Aunque el mecanismo que se utilice para pasar argumentos también
puede afectar al rendimiento del código, la diferencia suele ser insignificante. Existe
una excepción: cuando se pasa un tipo de valor conByVal. En este caso, Visual
Basic copia todo el contenido de los datos del argumento. Por lo tanto, para un tipo
de valor grande, como una estructura, lo más eficiente es transferirlo ByRef.

22
6.7 Elaboración de programas

La programación es el proceso de diseñar, escribir, depurar y mantener el código fuente de


programas computacionales. El código fuente es escrito en un lenguaje de programación.
El propósito de la programación es crear programas que exhiban un comportamiento
deseado. El proceso de escribir código requiere frecuentemente conocimientos en varias
áreas distintas, además del dominio del lenguaje a utilizar, algoritmos especializados y
lógica formal. Programar no involucra necesariamente otras tareas tales como el análisis y
diseño de la aplicación (pero sí el diseño del código), aunque sí suelen estar fusionadas en
el desarrollo de pequeñas aplicaciones.

Para crear un programa, y que la computadora interprete y ejecute las instrucciones escritas
en él, debe usarse un Lenguaje de programación. En sus inicios las computadoras
interpretaban sólo instrucciones en un lenguaje específico, del más bajo nivel, conocido
como código máquina, siendo éste excesivamente complicado para programar. De hecho
sólo consiste en cadenas de números 1 y 0 (Sistema binario).

Para facilitar el trabajo de programación, los primeros científicos que trabajaban en el área
decidieron reemplazar las instrucciones, secuencias de unos y ceros, por palabras o letras
provenientes del inglés; codificándolas así y creando un lenguaje de mayor nivel, que se
conoce como Assembly o lenguaje ensamblador. Por ejemplo, para sumar se usa la letra A
de la palabra inglesa add (sumar). En realidad, escribir en lenguaje ensamblador es
básicamente lo mismo que hacerlo en lenguaje máquina, pero las letras y palabras son
bastante más fáciles de recordar y entender que secuencias de números binarios. A medida
que la complejidad de las tareas que realizaban las computadoras aumentaba, se hizo
necesario disponer de un método sencillo para programar.

❑ Programación e ingeniería del software

Existe una tendencia a identificar el proceso de creación de un programa informático con la


programación, que es cierta cuando se trata de programas pequeños para uso personal, y
que dista de la realidad cuando se trata de grandes proyectos. El proceso de creación de
software, desde el punto de vista de la ingeniería, incluye los siguientes pasos:

23
Reconocer la necesidad de un programa para solucionar un problema:

1. identificar la posibilidad de automatización de una tarea.


2. Recoger los requisitos del programa. Debe quedar claro qué es lo que debe hacer
el programa y para qué se necesita.
3. Realizar el análisis de los requisitos del programa. Debe quedar clara cómo debe
realizar el programa las cosas que debe hacer. Las pruebas que comprueben la
validez del programa se pueden especificar en esta fase.
4. Diseñar la arquitectura del programa. Se debe descomponer el programa en partes
de complejidad abordable.
5. Implementar el programa. Consiste en realizar un diseño detallado, especificando
completamente todo el funcionamiento del programa, tras lo cual la codificación
debería resultar inmediata.
6. Implantar (instalar) el programa. Consiste en poner el programa en funcionamiento
junto con los componentes que pueda necesitar (bases de datos, redes de
comunicaciones, etc.).

La ingeniería del software se centra en los pasos de planificación y diseño del programa,
mientras que antiguamente (programación artesanal) la realización de un programa
consistía únicamente en escribir el código.

❑ Referencias históricas

La primera programadora de computadora conocida fue Ada Lovelace, hija de Anabella


Milbanke Byron y Lord Byron. Anabella introdujo en las matemáticas a Ada quien, después
de conocer a Charles Babbage, tradujo y amplió una descripción de su máquina analítica.
Incluso aunque Babbage nunca completó la construcción de cualquiera de sus máquinas,
el trabajo que Ada realizó con éstas le hizo ganarse el título de primera programadora de
computadoras del mundo. El nombre del lenguaje de programación Ada fue escogido como
homenaje a esta programadora. No olvidemos que este proceso está aplicado a todos los
métodos científicos que actualmente se practican.

24
❑ Objetivos de la programación

La programación debe perseguir la obtención de programas de calidad. Para ello se


establece una serie de factores que determinan la calidad de un programa. Algunos de los
factores de calidad más importantes son los siguientes:

✓ Corrección: Un programa es correcto si hace lo que debe hacer tal y como se


estableció en las fases previas a su desarrollo. Para determinar si un programa hace
lo que debe, es muy importante especificar claramente qué debe hacer el programa
antes de desarrollarlo y, una vez acabado, compararlo con lo que realmente hace.
✓ Claridad: Es muy importante que el programa sea lo más claro y legible posible, para
facilitar así su desarrollo y posterior mantenimiento. Al elaborar un programa se debe
intentar que su estructura sea sencilla y coherente, así como cuidar el estilo en la
edición; de esta forma se ve facilitado el trabajo del programador, tanto en la fase
de creación como en las fases posteriores de corrección de errores, ampliaciones,
modificaciones, etc. Fases que pueden ser realizadas incluso por otro programador,
con lo cual la claridad es aún más necesaria para que otros programadores puedan
continuar el trabajo fácilmente. Algunos programadores llegan incluso a utilizar Arte
ASCII para delimitar secciones de código. Otros, por diversión o para impedir un
análisis cómodo a otros programadores, recurren al uso de código ofuscado.
✓ Eficiencia: Se trata de que el programa, además de realizar aquello para lo que fue
creado (es decir, que sea correcto), lo haga gestionando de la mejor forma posible
los recursos que utiliza. Normalmente, al hablar de eficiencia de un programa, se
suele hacer referencia al tiempo que tarda en realizar la tarea para la que ha sido
creado y a la cantidad de memoria que necesita, pero hay otros recursos que
también pueden ser de consideración al obtener la eficiencia de un programa,
dependiendo de su naturaleza (espacio en disco que utiliza, tráfico de red que
genera, etc.).
✓ Portabilidad: Un programa es portable cuando tiene la capacidad de poder
ejecutarse en una plataforma, ya sea hardware o software, diferente a aquélla en la
que se elaboró. La portabilidad es una característica muy deseable para un
programa, ya que permite, por ejemplo, a un programa que se ha desarrollado para
sistemas GNU/Linux ejecutarse también en la familia de sistemas operativos
Windows. Esto permite que el programa pueda llegar a más usuarios más
fácilmente.

25
Conclusión

Para concluir el trabajo de la unidad 6 sobre algoritmos y programación centrado en las


funciones, puedo destacar varios puntos importantes los cuales son el concepto de las
funciones donde son bloques de código reutilizables que realizan una tarea específica. Nos
permiten dividir nuestro programa en partes más pequeñas y manejables, lo que facilita la
escritura, lectura y mantenimiento del código. Utilizar funciones en un código ayuda a
modularizarlo, lo que significa que se enfoca en resolver problemas individuales. Esto
promueve la reutilización del código, mejora la legibilidad y facilita la depuración.

Mientras desarrollaba el trabajo, me di cuenta como había bastantes ejemplos de cómo


ejecutar los códigos en las funciones, lo cual, a mi punto de vista puede llegar hacer
complicado ya que en cada comando es una función diferente y también varía dependiendo
del programa que se esté utilizando. Cada subtema es una forma diferente y también su
función tiene que ser especifica, por tanto, tienen usos diferentes. Aunque las funciones
pueden aceptar parámetros, que son valores que se pasan a la función para que los utilice
en su ejecución. Los argumentos son los valores reales que se pasan a la función cuando
se llama. Fue un tema algo debido por las metodologías de cada uno de estos, sin embargo,
me doy cuenta que es sumamente importante conocer sobre este tipo de lenguajes de
programación ya que uno como ingeniero industrial debe tener al menos el conocimiento
previo para entender y comprender los códigos dentro de un sistema. La recursividad puede
ser una herramienta poderosa, especialmente en algoritmos que se pueden dividir en
problemas más pequeños y similares. Las variables definidas dentro de una función tienen
un ámbito local, lo que significa que solo son accesibles dentro de esa función.

Para finalizar, las funciones son una parte fundamental de la programación que nos permite
escribir código más modular, legible y fácil de mantener. Entender cómo usar funciones
correctamente nos ayuda a escribir programas más eficientes y robustos. Puedo decir que
es sumamente importante tener el conocimiento la programación, ya que es muy extensa y
sin esto nosotros los humanos, no podríamos desarrollar ciertos temas y problemas tanto
en la vida real como en equipos tecnológicos de x empresa. La programación es importante
para un ingeniero industrial ya que permite dar posibles soluciones a métodos de
investigación y de esta manera conocer y elegir la opción mas eficaz y productiva que ayude
a la optimización de recursos, cumpla con ciertas restricciones, y conozcamos la función
objetivo dentro del sistema.

26
Bibliografía

• Guest. (2020, June 21). Unidad 6 “Funciones” Algoritmos y Lenguajes de


Programación. Pdfcoffee.com. https://pdfcoffee.com/unidad-6-quotfuncionesquot-
algoritmos-y-lenguajes-de-programacion-9-pdf-free.html
• Funciones. (n.d.). Desarrolloweb.com. Retrieved April 11, 2024, from
https://desarrolloweb.com/articulos/funciones
• Completo, V. mi P. (n.d.). Algoritmos y lenguaje de programacion. Blogspot.com.
Retrieved April 11, 2024, from https://programationccu.blogspot.com/p/unidad-
iv.html
• Juàrez y Eduardo Trinidad, R., & Perfil, V. T. mi. (n.d.). Fundamentos de
Programacion. Blogspot.com. Retrieved April 12, 2024, from https://ruben-
tese.blogspot.com/2008/07/62-entrada-y-salida-de-datos.html
• Gil, A. (2012, March 21). Entrada y Salida de datos. Utilidad y funcionamiento.
Actual33. https://actual33.com/entrada-y-salida-de-datos/
• IBM Documentation. (2021, March 26). Ibm.com.
https://www.ibm.com/docs/es/tcamfma/6.3.0?topic=tesl-user-defined-functions-4
• 6.5 Pase por valor. (n.d.). Prezi.com. Retrieved April 15, 2024, from
https://prezi.com/kcv2nowj38i7/65-pase-por-valor/
• 6.5 Pase por Valor - 6.6 Pase por Referencia. (n.d.). Prezi.com. Retrieved April 15,
2024, from https://prezi.com/a9ea_ewklo43/65-pase-por-valor-66-pase-por-
referencia/
• Algoritmos y lenguaje de programación. (n.d.). Prezi.com. Retrieved April 15, 2024,
from https://prezi.com/oxurkfqu4qlp/algoritmos-y-lenguaje-de-programacion/

27

También podría gustarte