Publicado el 20 de Agosto del 2020
660 visualizaciones desde el 20 de Agosto del 2020
47,9 KB
10 paginas
Creado hace 14a (10/08/2010)
Algoritmos y Estructuras de Datos
Unidad 1
UNIVERSIDAD TECNOLÓGICA NACIONAL
INGENIERIA EN SISTEMAS
"ALGORITMOS Y ESTRUCTURAS DE DATOS”
Cátedra:
UNIDAD Nº 1
CONCEPTOS BÁSICOS SOBRE PROGRAMACIÓN
Ing. Esp. Rosanna M. MAINIERI
Ing. Esp. Rosanna M. MAINIERI – Página 1 de 10
Algoritmos y Estructuras de Datos
Unidad 1
UNIDAD 1:
CONCEPTOS BASICOS SOBRE PROGRAMACION
Objetivo General de la Materia ........................................................3
Conceptos básicos sobre programación..........................................3
Lenguajes de Programación............................................................5
Resolución de un Problema.............................................................6
Diagramación...................................................................................6
Programación ..................................................................................7
Programación Estructurada.............................................................7
o Programación Modular..........................................................7
o Diseño Descendente.............................................................8
o Programación Estructurada ..................................................9
Bibliografía.....................................................................................10
Ing. Esp. Rosanna M. MAINIERI – Página 2 de 10
Algoritmos y Estructuras de Datos
Unidad 1
Objetivo General de la materia:
resolver problemas, no solo
“Desarrollar la destreza o habilidad en los alumnos de crear programas
para
funcionalmente efectivos, sino
fundamentalmente correctos desde un punto de vista metodológico, en
procura de la eficiencia durante todo su ciclo de vida”.
CONCEPTOS BASICOS SOBRE PROGRAMACION
Contenidos: Algoritmo, acción, autómata, programa, lenguaje de
programación, sentencia, codificación, diagramación, programación,
Programación Estructurada.
A diario nos enfrentamos, ya sea en la vida como en la carrera universitaria, con
problemas.
Qué debemos hacer con ellos?
Resolverlos.
PROBLEMA
ALGORITMO
Para ello se necesita una serie de pasos que lo resuelvan. Esa serie de pasos o
acciones se llama algoritmo. Este término, como se ve, es el primer término del
nombre de la asignatura.
Algoritmo: es una serie de pasos o acciones necesarios para resolver un
problema.
Por ejemplo, una receta de cocina es un algoritmo, ya que contiene una serie de
pasos que hay que ejecutar para preparar un plato de comida. En estas recetas
además figuran los ingredientes, que son los objetos que se deben procesar para
preparar el plato. En nuestra materia, los datos (información) serán los objetos a
“procesar” para llegar a obtener la solución del problema. En el nombre de la
materia aparece en segundo lugar el término “estructura de datos”, que hace
referencia a la forma en que se debe manejar a los datos, que serán los objetos
con los que se trabajará.
Acción: es un hecho que se desarrolla en un lapso finito.
Ing. Esp. Rosanna M. MAINIERI – Página 3 de 10
Algoritmos y Estructuras de Datos
Unidad 1
Ahora bien, en nuestra materia ¿quién será el encargado de ejecutar esas
acciones? La computadora o autómata. Necesitamos entonces, darle al
autómata una serie de órdenes para que pueda ejecutar las acciones en
respuesta a esas órdenes y así resolver el problema.
Autómata: máquina o instrumento que produce acciones en respuestas a
órdenes para resolver un problema.
Estas acciones surgen como respuesta a órdenes, estas órdenes o instrucciones
componen el programa que le será dado al autómata para que pueda trabajar. El
autómata no es el autor, sino el ejecutante de la acción.
Programa: es un texto compuesto por un conjunto de órdenes que al ser
ejecutadas por un autómata produce una secuencia de acciones que resuelven un
problema.
Una acción produce un resultado, es decir, se obtiene una modificación del
entorno del sistema en estudio. Hay un estado inicial del sistema, luego de
ejecutarse la acción o conjunto de acciones, hay un estado final del sistema, que
es distinto al inicial.
Por ejemplo, si la acción fuera ABRIR LA PUERTA :
Acción <> Orden
Estado inicial: Puerta cerrada
Estado final: Puerta abierta
Existen dos tipos de acciones: 1) Primitivas o Simple
1) Acción primitiva, elemental o simple: Acontecimiento ejecutable por un
2) Compuestas
instrumento en respuesta a una única orden.
2) Acción compuesta o proceso: es una secuencia de acciones, organizadas en
el tiempo
El hombre debe informarle a la máquina cómo resolver un problema, esto lo hace
por medio de un programa, como ya se dijo, es un texto, y debe estar escrito en
un lenguaje que la máquina entienda.
Lenguaje de Programación: Conjunto de elementos y reglas que deben tenerse
en cuenta para escribir un programa, para un cierto autómata.
Sentencia: es una orden escrita en un lenguaje de programación.
El algoritmo es entendido por los hombres, pero para que pueda ser entendido
por el autómata se lo debe traducir mediante un lenguaje que la máquina
comprenda, es decir, mediante un lenguaje de programación y así se obtiene un
programa.
Ing. Esp. Rosanna M. MAINIERI – Página 4 de 10
Algoritmos y Estructuras de Datos
Unidad 1
PROBLEMA
ALGORITMO
PROGRAMA
LENGUAJES DE PROGRAMACION
Los lenguajes se clasifican en lenguajes de Bajo Nivel y de Alto Nivel.
Lenguajes de Bajo Nivel
Lenguaje de Máquina: Es el lenguaje que entiende la computadora y está
compuesto por instrucciones codificadas en binario, es decir por 0 y 1. Es el
primer lenguaje que se empleó en la programación de ordenadores.
Lenguaje Ensamblador: Fue el primer intento de sustituir el lenguaje de máquina
por un lenguaje parecido al utilizado por las personas. Se utilizan conjuntos de
caracteres para representar las instrucciones del lenguaje de máquina, para una
computadora en particular.
Para este lenguaje se necesita un programa llamado ensamblador que traduce las
instrucciones escritas en lenguaje ensamblador a lenguaje de máquina.
Lenguajes de Alto Nivel
Son posteriores a los de bajo nivel. Las instrucciones se escriben con palabras
específicas, con significado para el hombre, y se crearon con los siguientes
objetivos:
Lograr la independencia del ordenador
Aproximar aún más sus instrucciones al lenguaje humano. Utilizan palabras
en lugar de cadenas de símbolos sin aparente significado
Suministran librerías de rutinas con las funciones de uso frecuente
(entrada, salida, etc.)
Traductores
Los programas que no están escritos en lenguaje de máquina deben ser
traducidos a código binario para que puedan ser comprendidos por el autómata.
Existen dos tipos de traductores: los intérpretes y los compiladores.
Intérprete: Es un programa que toma al programa escrito en lenguaje de alto nivel
y lo traduce y ejecuta, línea por línea.
Compilador: Es un programa que traduce todo el programa escrito en lenguaje de
alto nivel (Programa Fuente) y obtiene un programa escrito en código de máquina
(Programa Objeto). Luego, el programa objeto es el que se ejecuta.
RESOLUCION DE UN PROBLEMA
Ing. Esp. Rosanna M. MAINIERI – Página 5 de 10
Algoritmos y Estructuras de Datos
Unidad 1
Al encarar la resolución de un problema debe diferenciarse dos etapas:
1) Obtención del algoritmo 1.1) Estudio del enunciado
1.2) Creación del algoritmo
2) Codificación del algoritmo
La primera es la de mayor importancia y la más delicada, la codificación puede
incluso resultar un trabajo rutinario y hasta existen herramientas que lo resuelven
automáticamente.
Obtener un algoritmo: es inventar la resolución de un problema, sin tener en
cuenta el lenguaje con el cual se va a programar, por lo tanto, la actividad
principal es pensar en el problema
Codificar: es aplicar sistemáticamente las definiciones y reglas de un lenguaje de
programación a las acciones especificadas en el algoritmo.
De las dos partes de ‘Obtención del algoritmo’ la primera, el ‘Estudio del
enunciado’, es la prioritaria, pues si el problema no está perfectamente definido y
comprendido, cualquier algoritmo que se obtenga va a ser incorrecto, con él no se
resolverá nada, o se resolverá un problema distinto al deseado.
El estudio del enunciado es conocer perfectamente cuál es el problema que se
debe resolver, a este punto se le debe dedicar todo el tiempo que sea necesario.
Se deberá determinar muy claramente:
¿Qué se pretende obtener como resultado?
¿Cuáles son los datos de los que se dispone?
DIAGRAMACION
Al crear un algoritmo, éste debe ser entendido por las personas, no por las
máquinas, por lo cual no requieren serias restricciones sintácticas ni semánticas
para ser entendidas, pero es conveniente usar una representación generalizada
para representarlos, esto es diagramar.
Diagramar: representar un algoritmo sobre un soporte físico
La diagramación puede ser:
Esquemática: se representa al algoritmo como un texto (pseudocódigo).
Gráfica: se representa al algoritmo como un gráfico. (Diagrama de Chapin o
Nassi-Schneiderman, de Flujo, de Jackson)
Ing. Esp. Rosanna M. MAINIERI – Página 6 de 10
Algoritmos y Estructuras de Datos
Unidad 1
PROGRAM
Comentarios de: Unidad nº 1 - Conceptos básicos sobre programación (0)
No hay comentarios