Universidad Catlica de El Salvador Facultad de Ingeniera y Arquitectura Programacin I, Seccin A Docente: Ma. Ing. Giovanni Acosta
Una persona piensa y se comporta obedeciendo a un secuencial lgico, por ejemplo para realizar actividades cotidianas, como: baarse, vestirse, conducir el automvil, etc.
Usos de la programacin
Una computadora realiza tareas y maneja datos en memoria obedeciendo a una secuencia de pasos lgicos para lo cual ha sido programada. Programar computadoras es indispensable en cualquier rea profesional, ya que diferentes problemas que se puedan presentar tardan tiempo resolverlos de manera manual. La computadora resuelve problemas (de acuerdo como se le haya programado) de manera rpida.
09/08/2013
Se puede definir un lenguaje de programacin como un conjunto de reglas o normas, smbolos y palabras especiales utilizadas para construir un programa y con l, darle solucin a un problema determinado. El lenguaje de programacin es el encargado de que la computadora realice paso a paso las tareas que el programador a diseado en el algoritmo.
Qu es un lenguaje de programacin?
Se puede decir que un lenguaje de programacin es el intermediario entre la mquina y el usuario (programador) para que este ltimo pueda resolver problemas a travs de la computadora haciendo uso de palabras (comandos o instrucciones) que le traducen dicho programa a la computadora para la realizacin de dicho trabajo.
Desde que se desarrollaron las computadoras programables se han creado lenguajes con los cuales las personas puedan dar rdenes a stas. En su orden los lenguajes de programacin se pueden clasificar de la siguiente manera:
Lenguaje de mquina Las primeras computadoras se programaban en cdigo de mquina. Se puede decir que los programas eran diseados en cdigo binario. Eran difciles de leer, difciles de entender y por su puesto difciles de corregir. Los programas se caracterizaban por ser pequeos. Ej. 55 89 e5 53 83 ec 04 f0 e8 31...
Lenguajes de Bajo Nivel Para dar solucin a lo difcil que era programar en cdigo mquina, se desarroll un lenguaje conocido como lenguaje ensamblador. Este lenguaje era encargado de tomar algunas palabras comunes a una persona y traducirlas al cdigo mquina. Lo anterior facilitara un poco la escritura de programas. Ej. subl, pushl, movl, ...
Lenguajes de alto nivel Como las personas resuelven problemas y se comunican en lenguajes naturales (espaol, ingles, francs, etc.), se desarrollaron lenguajes de programacin que estuvieran mas cerca de sta manera de resolver problemas. De los lenguajes de alto nivel se puede citar el Basic, Cobol, Fortran, Pascal, Turbo Pascal, C, Modula, Ada. Como es necesario traducir el programa a lenguaje de mquina, en los lenguajes de alto nivel esa operacin la realiza el compilador
09/08/2013
Paradigma Declarativo
Paradigma Estructurado
Tipos de programacin
Paradigma Funcional
3- Codificacin
La solucin se escribe en la sintaxis del lenguaje de programacin. Ejemplo: Visual Basic, C, C++, C#, etc.
4- Compilacin y ejecucin
El programa fuente se convierte a cdigo de maquina y se ejecuta el programa.
5- Verificacin
Se comprueba que el programa cumpla con los requisitos establecidos y funcione correctamente.
6- Depuracin
Se eliminan todos los errores existente y se vuelve a compilar, ejecutar y verificar el programa hasta que este libre de errores.
7- Mantenimiento
El programa se actualiza y modifica, cada vez que sea necesario, de modo que se cumplan las nuevas necesidades.
8- Documentacin
Es la escritura de las diferentes fases del ciclo de vida del software, especialmente: el anlisis, diseo y codificacin, entre otros manuales.
09/08/2013
La palabra algoritmo se deriva de la traduccin al latn de la palabra rabe alkhowarizmi, nombre de un matemtico y astrnomo rabe que escribi un tratado sobre manipulacin de nmeros y ecuaciones en el siglo IX. Un algoritmo es un mtodo para resolver un
Qu es un algoritmo?
Caractersticas de un algoritmo: 1. 2. 3. Preciso (indica el orden de realizacin en cada paso) Definido (si se sigue dos veces, obtiene el mismo resultado cada vez) Finito (tiene fin; un nmero determinado de pasos)
Cualitativos son aquellos en los que describen los pasos utilizando palabras
Cuantitativos son aquellos en los que se utilizan clculos numricos para definir los pasos del proceso
Algoritmo para obtener el promedio simple de un estudiante a partir de sus tres notas de periodo. Algoritmo: Proceso promedio
Escribir 'Nota primer periodo:' Leer per1 Escribir 'Nota segundo periodo:' Leer per2 Escribir 'Nota tercer periodo:' Leer per3 prom <- (per1+per2+per3)/3 Escribir 'Nota promedio final: ', prom
Algoritmo para preparar Pechugas de pollo en salsa de elote y chile poblano Ingredientes (para 6 personas): 3 pechugas deshuesadas, sin piel y partidas a la mitad. 1 diente de ajo. 4 gramos de pimienta negra. Sal 6 cucharadas de aceite. 5 chiles poblanos asados y limpios. tasa de leche. tasa de crema ligera. 1 lata de crema de elote. Algoritmo (preparacin) 1. Muela el ajo, la pimienta y un poco de sal y nteselo a las pechugas. 2. Caliente el aceite y dore las pechugas. 3. Licue los chiles con la leche y la crema, y mzclelos con la crema de elote. 4. En una fuente coloque las pechugas y beselas con la mezcal anterior. 5. Cubra el platn con papel de aluminio y hornee a 200 C, durante 15 minutos.
Tipos de algoritmos
FinProceso
09/08/2013
PROBLEMA 1: elaborar un algoritmo para preparar una tasa de caf instantneo, teniendo un recipiente con agua caliente, un bote de caf, la tasa, azcar y cuchara; listos.
PROBLEMA 2: elaborar un algoritmo para cambiar la llanta pinchada de un carro, teniendo un gato mecnico en buen estado, una llanta de repuesto y una llave cruz; listos.
Ejercicios
1. 2.
Lenguaje Natural: es el lenguaje comn (coloquial). Lenguaje Estructurado: Es un lenguaje ms limitado que el anterior, con reglas de sintaxis y semntica definidas, esto quiere decir que consiste en crear programas con instrucciones agrupadas en un estricto orden secuencial, el cual es imprescindible conservar para la resolucin de un problema. a. Pseudocdigo: lenguaje universal para comunicarse entre programadores, esto quiere decir que es un conjunto de instrucciones en lenguaje natural, como el castellano o el ingls, de acuerdo a la persona que desarrollar un algoritmo basado en dicho lenguaje natural, en conclusin, es elaborar el algoritmo usando palabras y frases que se comprendan fcilmente. Cdigo: lenguaje orientado a un tipo de compilador especifico, para ser interpretado por el computador, en otras palabras es un conjunto de instrucciones que son parte de un lenguaje de programacin especifico que se escriben en orden secuencial y se almacenan en un archivo al que se denomina programa, cuando el programa es pequeo se le denomina miniprograma o con el nombre de macro (en ingls se le denomina Script)
09/08/2013
Ejemplo seudocdigo
Ejemplo Cdigo
09/08/2013
3.
Lenguaje Simblico: es una representacin que usa smbolos predefinidos para diagramar un algoritmo, con el fin de que sea fcil de seguir la lgica de la solucin que se desea expresar en forma de un flujo de pasos a realizar, indicando el inicio y el termino de los mismos. a. Diagramas de flujo: es un esquema para representar grficamente un algoritmo. Se basan en la utilizacin de diversos smbolos para representar operaciones especficas. Se les llama diagramas de flujo porque los smbolos utilizados se conectan por medio de flechas para indicar la secuencia de operacin. Carta N-S: el diagrama N-S (Nassi Schneiderman) o tambin conocido como diagrama de Chapn es una tcnica de especificacin de algoritmos que combina la descripcin textual, propia del pseudocdigo, con la representacin grfica del diagrama de flujo.
b.
09/08/2013
Problema
09/08/2013
Algoritmo
Datos de
Impresin de resultados
Entrada
Para la elaboracin de Algoritmos en pseudocdigo, diagramas de flujo y diagramas N-S se utilizar el programa PSeInt el cual es un software interprete de pseudocdigo y generador de diagramas.
Herramientas de programacin
09/08/2013
Todo algoritmo en pseudocodigo tiene la siguiente estructura general: Proceso Ttulo accin 1; accin 2; . .. accin n; FinProceso
10
09/08/2013
Acciones secuenciales
Ejemplo
11
09/08/2013
Este pseudolenguaje dispone de un conjunto bsico de operadores que pueden ser utilizados para la construccin de expresiones ms o menos complejas.
Operadores en PSeInt
Las funciones en el pseudocdigo se utilizan de forma similar a otros lenguajes. Se coloca su nombre seguido de los argumentos para la misma encerrados entre parntesis (por ejemplo trunc(x)).
Funciones en PSeInt
12
09/08/2013
PROBLEMA 1: construya un algoritmo en pseudocdigo que lea los datos enteros A y B. luego escriba el resultado de la siguiente expresin: ( + )2 3 PROBLEMA 2: escriba un algoritmo en pseudocdigo que permita calcular e imprimir el cuadrado y el cubo de un nmero entero positivo capturado por teclado.
Ejercicios
PROBLEMA 3: construya un algoritmo en pseudocdigo que lea los datos de base y altura de un rectngulo, calcule e imprima el permetro y la superficie del mismo. = = 2 ( + )
Tarea
Responder las siguientes preguntas en el foro sobre la importancia de aprender programacin: 1. Cul es la importancia de aprender a programar hoy en da? 2. Qu se necesita para aprender a programar? 3. Con cual de los personajes que se encuentran en el sitio www.code.org comparte su punto de vista sobre la importancia de aprender a programar y por qu?
13