UNIVERSIDAD TECNOLÓGICA DE PANAMÁ
CENTRO REGIONAL DE CHIRIQUÍ
FACULTAD DE INGENIERÍA DE SISTEMAS COMPUTACIONALES
CARRERA:
Ingeniería en Sistemas y Computación
ACTIVIDAD No.1
TAREA
Reafirmando Conceptos Básicos de Programación
ASIGNATURA: Herramientas de Programación Aplicada I
I SEMESTRE 2018
Conceptos básicos de programación
1. Computador: Es una máquina de funcionamiento electrónico, capaz de
procesar datos a gran velocidad y en grandes cantidades, convirtiéndolos en
información útil que luego será representada en
términos convenientes (por un operador o
usuario humano). A su vez tambien se les puede
considerar que son herramientas muy versátiles
y comunes de nuestro tiempo, y están fabricadas
a partir de numerosos circuitos integrados. Esto quiere decir que
normalmente reciben y emiten información a través de diferentes
mecanismos y protocolos, ya sea que sean empleadas en solitario, o que se las
intercomunique a través de una red.
2. Programa: Se le conoce a un programa como la
secuencia de instrucciones escritas para realizar una
tarea específica en una computadora. Dichas
instrucciones son creadas para realizar actividades o
tareas específicas en la computadora. A su vez tambien
contiene un formato ejecutable el cual la computadora
puede utilizar directamente para ejecutar las instrucciones. El mismo
programa en su formato de código fuente legible para humanos, del cual se
derivan los programas ejecutables (por ejemplo, compilados), le permite a un
programador estudiar y desarrollar sus algoritmos. Una colección de
programas de computadora y datos relacionados se conoce como software.
1
3. Programa Fuente: Tambien es llamado código fuente, el cual es un texto
escrito en un lenguaje de programación para crear el programa. Es la forma
del programa legible por el programador.
Tambien describe lo que hace el programa, y
que una vez pasado por un proceso llamado
compilación (traducción de lenguaje fuente a
lenguaje máquina) genera el código
ejecutable, el programa que usamos.
Entonces podríamos decir que Es el conjunto completo de instrucciones y
archivos originales y de soporte, creados y/o modificados por el
programador, destinado a producir el programa ejecutable a partir de ellos.
4. Programa Objeto: Su principal función consiste en ser el lenguaje máquina o
bytecode y se distribuye en varios archivos que corresponden a cada código
fuente compilado. Para de esta manera obtener un programa ejecutable y asi
se unen todos archivos de código objeto con un programa llamado enlazador.
Tambien se puede decir que el programa objeto es el que resulta de la
traducción del lenguaje
fuente (lenguaje entendible
por el ser humano) a un
lenguaje máquina, es decir a
aquel que es inteligible por la
computadora. Y debido a
esto obtenemos un lenguaje comprensible por la máquina.
2
5. Procesador de Lenguaje: Es el nombre genérico que reciben todas las
aplicaciones informáticas en las cuales uno de los datos fundamentales de
entrada es un lenguaje. A su vez tambien son todos los programas que a
través de una entrada escrita en un lenguaje de programación puede
manipular herramientas de software y hardware de una computadora.
Tambien se puede decir que se encarga
en la traducción del programa fuente
escrito en lenguaje de programación de
alto nivel a código de máquina. Esto nos
lleva a que los procesadores de lenguaje
pueden ser compiladores o intérpretes.
6. Compilador: Se basa en traducir y transformar un programa entero de un
lenguaje de programación a otro. Usualmente el lenguaje objetivo es código
máquina, aunque también puede ser traducido a un código intermedio o a
texto. Una función importante del compilador es reportar cualquier error en
el programa fuente que detecte durante el proceso de traducción. Es
interesante saber que el
tiempo que se necesita para
traducir un lenguaje de alto
nivel a lenguaje objeto se
denomina tiempo de
compilación (compilation
time). El tiempo que tarda en ejecutarse un programa objeto se denomina
tiempo de ejecución (run time).
3
7. Interprete: Es el programa que va leyendo poco a poco el código que el
programador escribe y va traduciéndolo y ejecutándolo según se traduce. En
estos casos no hay una traducción completa, ya que
no se genera un programa completamente
ejecutable. Éste permite al programador ejecutar
interactivamente las diferentes secciones del
programa, en vez de esperar a que todo el programa sea traducido y probado.
8. Lenguaje de programación: Es una notación
constituida por símbolos y reglas que permite
escribir programas. Todo lenguaje de
programación está compuesto por su sintaxis
(reglas) y su semántica (significado de los símbolos y las palabras que utiliza).
A través de los lenguajes de programación es posible establecer una
comunicación sistematizada y precisa con una computadora.
9. Lenguaje simbólico: Es aquél en el cual las instrucciones o sentencias son
escritas con palabras similares a las de los lenguajes humanos. Están
compuestos por símbolos, letras y números. Por ello se puede
decir que cada instrucción de la máquina se transforma en
una única instrucción en código simbólico. Pero, además,
para mejorar la legibilidad del programa, el código simbólico
introduce instrucciones adicionales.
4
10. Lenguaje absoluto: Tambien conocido como lenguaje máquina, es aquel es el
lenguaje nativo de una unidad de procesamiento central (CPU o procesador).
Está compuesto por instrucciones que la
máquina entiende directamente y que se
expresan en términos de la unidad de
memoria más pequeña: el bit (código
binario 1 ó 0). En esencia, una instrucción
es una secuencia de bits que especifican
una operación y las celdas de memoria implicadas.
11. Instrucción: Es el elemento clave del equipo, ya que permite indicar al
procesador la acción que debe realizar. Las instrucciones para realizar se
indican en el archivo fuente y
el equipo pasa de una
instrucción a otra siguiendo
las instrucciones que se
indican de arriba hacia abajo.
El programador tiene un
repertorio de instrucciones como medio para controlar la CPU. Los tipos de
instrucción permitidos están definidos y determinados dentro de cada
plataforma en el conjunto de instrucciones (en inglés ISA, instruction set
architecture), que también determina los registros de origen y destino de la
CPU, y en ocasiones un dato inmediato (aquellos que son especificados
explícitamente en la instrucción).
5
12. Dato: Se pueden definir como la representación simbólica, bien sea mediante
números o letras de
una recopilación de
información la cual
puede ser
cualitativa o
cuantitativa, que facilitan la deducción de una investigación o un hecho.
Tambien se pueden considerar como la descripción codificada de un hecho
empírico, un suceso, una entidad. Debido a esto podemos considerar a los
datos como información (valores o referentes) que recibe el computador a
través de distintos medios, y que es manipulada mediante el procesamiento
de los algoritmos de programación. Su contenido puede ser prácticamente
cualquiera: estadísticas, números, descriptores.
13. Tipo de dato: Los
datos se suelen
clasificar en tres
categorías. En primer
lugar, tenemos a los
datos numéricos, los
cuales pueden ser enteros o reales. En segundo lugar, se encuentran los datos
alfanuméricos y son aquellos que se clasifican en: cadena y carácter. Por
último, en tercer lugar, mencionaremos a los tipos de datos lógicos, en los
cuales solamente se suele representar dos tipos de valores (cierto o falso).
6
14. Contador: Es una variable cuyo valor se
incrementa o decrementa en un valor fijo (en
cada iteración de un bucle), esto nos lleva a decir
que suele utilizarse para contar el número de
veces que itera un bucle. La construcción de un
contador es una de las técnicas más comunes en
la realización de diagramas de flujo. Cabe destacar que la construcción de un
contador es una de las técnicas más comunes en la realización de diagramas
de flujo y debemos tener en cuenta que cuando utilicemos contaderos
debemos inicializarlos.
15. Acumulador: Es una
variable, no necesariamente
entera, pero sí numérica, y
cuyo valor se incrementará
dependiendo del problema.
Su objetivo es “acumular”,
es decir: acopiar, almacenar,
añadir un cierto valor. La diferencia con una variable cualquiera es que el
acumulador agrega un nuevo valor al que ya tiene. Debemos tener en cuenta
que al igual que el contador debe ser inicializado antes de ser utilizado. Pero
el valor de inicialización dependerá del tipo de operación que nos ayudará a
acumular valores: puede ser el resultado de sumas sucesivas (que es lo más
común), pero también de multiplicaciones, o incluso de restas o divisiones.
7
16. Variable: Es un espacio de memoria reservado
para almacenar un valor que corresponde a un
tipo de dato soportado por el lenguaje de
programación. Una variable es representada y
usada a través de una etiqueta (un nombre)
que le asigna un programador o que ya viene predefinida. Así que cuando
programamos podemos usar la memoria central de computador para guardar
información, a estos pedazos de memoria nos referimos mediante etiquetas
que nosotros los humanos podemos recordar. Esto quiere decir que en las
variables guardamos las entradas del usuario y cálculos, valores que luego
usaremos en otras partes del algoritmo.
17. Constante: Es un valor que no puede ser alterado durante la ejecución de un
programa. Corresponde a una longitud fija de un
área reservada en la memoria principal del
ordenador, donde el programa almacena valores
fijos. El nombre de las constantes suele escribirse
en mayúsculas en la mayoría de los lenguajes.
Cuando decimos que no se puede cambiar hablamos que no se puede
cambiar durante la ejecución del programa, es decir, en tiempo de ejecución.
18. Entrada: Alimentar al programa, con valores, para que se ejecuten las
acciones propuestas. La entrada de datos puede darse
a través de: lectura, asignación y cálculos.
8
19. Salida: Mostrar o guardar los
resultados obtenidos. La salida
puede darse a través de: pantalla,
papel y dispositivo magnético.
20. Registro: Conjunto de datos
tratados como una unidad, con un
sentido específico. Es decir, es la
unión de varios elementos bajo una
misma estructura.
21. Archivo: Conjunto de registros. En sí, son una
estructura de información relacionada, almacenada
de forma permanente e independiente del programa
que la utiliza.
22. Sistema: Un sistema informático es el conjunto constituido por los elementos
físicos y lógicos (software) necesarios para
captar información, almacenarla y
procesarla -realizar operaciones con ella. Es,
pues, un conjunto en el que se incluyen
tanto las máquinas (computadoras,
periféricos, redes), como las aplicaciones
(programas de computadora).
9
23. Definición del problema: Es el primer paso en la
planeación de un proyecto de programación y
consiste en describir un enunciado breve del
problema que se solucionará y de las restricciones
que existen en su resolución. Es importante subrayar
los verbos que encontramos, ya que estos nos
indican la acción.
24. Análisis del problema: El análisis del
problema nos conduce al diseño detallado
de la solución del problema. Nos
encontramos con tres puntos importantes:
Salida (Saber qué es lo que quiero
conseguir o hasta donde quiero llegar).
Entrada (Determinar con qué datos cuento para trabajar). Proceso (Cómo lo
voy a hacer y sobre todo tener pendiente las condiciones o restricciones que
presenta el problema, si es que las hay).
25. Representación de la lógica: La representación de la lógica no es más que la
escritura de las instrucciones que
resuelven el problema, dadas en un
orden lógico. Esta representación
puede darse, entre otros, por medio de:
Algoritmos o diagramas de flujo.
10
26. Algoritmo: Solución paso a paso del problema dado,
escribiendo las instrucciones desde 1, definido como el
inicio, hasta declarar el fin de este. Se considera que un
algoritmo es preciso porque implica el orden de
realización de cada uno de los pasos; definido pues si se
sigue dos veces se obtiene el mismo resultado; y finito
porque al tener un número determinado de pasos,
implica que debe tener por lo menos un final.
27. Diagrama de flujo: En este caso, la lógica se
representa paso a paso utilizando símbolos
gráficos que nos indican las acciones a ejecutar.
28. Prueba de escritorio: Una prueba
de escritorio es la comprobación
lógica de un algoritmo. Para
desarrollar esta prueba, es
necesario que usted tome la
posición del procesador de la
computadora y realice lo siguiente:
Con datos de prueba, se seguirán cada uno de los pasos propuestos en el
algoritmo. No debe obviar ninguna de las instrucciones ni mucho menos
incluir lo que usted considera que es, recuerde que en este momento es como
si el computador ejecutara las acciones que se han planteado.
11
29. Codificación: La codificación implica convertir el
algoritmo resultante en un código escrito en
lenguaje de programación. El resultado de esta
codificación, se le denomina programa fuente.
Para lograr una codificación exitosa, es necesario
que se respeten las reglas del lenguaje a utilizar.
30. Ejecución: Consiste en el trabajo que realiza la
computadora, procesando cada una de las instrucciones
que contiene el programa. Debe emplearse una variedad
de datos de entrada, conocidos en esta fase como datos de
prueba, para determinar si el programa tiene errores.
31. Errores de compilación: Estos errores son errores de sintaxis que ocurren por
el incumplimiento de las reglas sintácticas del lenguaje como, por ejemplo, un
comando especial mal escrito o una instrucción incompleta. Puede darse
además que las variables que utilice el programador no estén debidamente
declaradas o que las llamadas que
haga a programas externos no
estén bien escritas y no pueda
hacer el enlace correspondiente.
12
32. Errores de ejecución: Estos errores se producen por instrucciones que la
computadora comprende sintácticamente pero que no puede ejecutar, por
ejemplo, la división por cero o el cálculo de raíces
cuadradas con valores negativos.
33. Errores de lógica: Consisten en resultados incorrectos obtenidos por el
programa. Es necesario revisar completamente su programa, si es posible
desde el algoritmo; codificar, compilar y ejecutar nuevamente hasta que el
resultado sea satisfactorio.
34. Documentación: La documentación de un programa
consta de las descripciones de los pasos a seguir en el proceso de resolución
de un problema. La importancia de la documentación debe ser destacada por
su decisiva influencia en el producto final. Los programas deficientemente
documentados son difíciles de leer, más difíciles de depurar y
casi imposibles de mantener y modificar.
35. Acreditación de carrera: Es el reconocimiento público y
temporal a la institución educativa, área, programa o carrera
profesional que se a sometido a evaluaciones.
CONSIDERACIONES FINALES
En base a mi opinión, siento que al realizar este
trabajo se han esclarecido algunas dudas sobre
ciertos conceptos que no comprendía en su totalidad y haber despejado mis
13
dudas hace que mi conocimiento con respecto a este tema sea un poco mas claro.
Me agrada mucho realizar este tipo de investigaciones porque siento que puedo
nutrirme cada vez más de información al momento de investigar los conceptos y
esto hace que mi capacidad cognitiva aumente.
Siento que en el campo de la programación tiene muchos conceptos que debemos
tener totalmente claros para poder aprender a manejar los lenguajes de
programación con mayor versatilidad y a su vez debemos tratar de desarrollar
poco a poco una lógica bastante abstracta, sin limitaciones y con mucha
imaginación, para que de esta manera podemos dar una mejor solución a
problemas con mayor eficacia y eficiencia.
BIBLIOGRAFÍA
Nieva, J. (30 de septiembre del 2016). <d_codinGames/>. Recuperado el 22 de
agosto del 2019 de, https://dcodingames.com/el_acumulador/
14
Razif, K. (25 de septiembre del 2016). Medium Corpotation. Recuperado el 22 de
agosto del 2019 de, https://medium.com/10-goto-10/algoritmos-variables-
contadores-y-acumuladores-6d8f7d1bfbc7
Anónimo. (31 de enero del 2016). Enciclopedia. Recuperado el 22 de agosto del
2019 de, http://enciclopedia.us.es/index.php/Lenguaje_simb%C3%B3lico
Guillem, C. (15 de mayo del 2018). Sistemas Master Magazine. Recuperado el 22 de
agosto del 2019 de, https://sistemas.com/sistema-informatica.php
Beitia, C. (22 de abril del 2019). Moodlech. Recuperado el 22 de agosto del 2019 de,
http://moodlech.utp.ac.pa/course/view.php?id=279
Raffino, M. (14 de enero del 2019). Concepto.de. Recuperado el 22 de agosto del
2019 de, https://concepto.de/dato-en-informatica/
Anónimo. (29 de julio del 2019). Wikipedia. Recuperado el 22 de agosto del 2019
de, https://es.wikipedia.org/wiki/Lenguaje_de_m%C3%A1quina
Garcia, E. (Sin fecha). El granero común. Recuperado el 22 de agosto del 2019 de,
http://elgranerocomun.net/El-lenguaje-absoluto-CEUNS-1963.html
RÚBRICA
ASPECTOS A EVALUAR/CRITERIO DE EVALUACIÓN PUNTAJE PUNTAJ
MÁXIMO OBTENID
15
PRESENTACIÓN.
1. Entrega en la fecha y hora señalada 5 _______
2. Claridad y limpieza en todo el trabajo 5 _______
3. Mantiene buena ortografía 10 _______
4. El trabajo presenta el formato y los requerimientos indicados 10 _______
5. Se entrega la rúbrica 5 _______
6. Muestra originalidad y creatividad 20 _______
CONTENIDO
Claridad en lo que expresa en las consideraciones finales 25 _______
¿El documento cumple con los requisitos? 20 _______
16