You are on page 1of 14

BIENVENIDOS A LA INTRODUCCIÓN

DE PROGRAMACIÓN

• PROF. ALEJANDRO FUENTES AÑO LECTIVO


2018-2019 1
INTRODUCCIÓN A LA PROGRAMACIÓN
• 1 Conceptos básicos
• 2 Los algoritmos
• Concepto de algoritmo. Descripción de algoritmos
• Estructuras básicas: secuencia, condición, iteración
• Refinamiento por pasos sucesivos (top-down).
• Modularidad
• 3 Los lenguajes de programación
• Motivación y concepto. Ventajas de los LP de alto nivel
• Clasificación de los LP. Ejemplos de LP de alto nivel
• 4 La traducción
• Introducción. Compilación. Interpretación

2
Comparación entre ambos métodos
INTRODUCCIÓN A LA PROGRAMACIÓN.
CONCEPTOS BÁSICOS
• Uso del ordenador para resolver problemas más o menos
complejos. Pero el ordenador sólo realiza operaciones sencillas
(aritméticas, comparaciones, almacenar y transferir datos...)
• Instrucción: sentencia, orden. Ej.: x = 2 * y
• de entrada de datos (y recuperación)
• operaciones sobre los datos (manipulación)
• de salida (presentación) de resultados y almacenamiento
• Programa: lista de instrucciones. Descripción de pasos a dar
para resolver un problema. El programa (software) dirige el
funcionamiento del ordenador (hardware).
3
INTRODUCCIÓN A LA
PROGRAMACIÓN. LOS ALGORITMOS
• Algoritmo: descripción exacta no ambigua de la secuencia de
pasos a aplicar para encontrar una solución a un problema a
partir de unos datos. Método de resolución general de un
problema.
• Ej.: receta de cocina.
• Para programar hay que analizar el problema y diseñar una
estrategia de resolución. Hay que contemplar todas las
alternativas lógicas posibles (no dejar cabos sueltos).
• Problema  Algoritmo  Programa
• Programa: la codificación de un algoritmo en un lenguaje de
programación concreto.
4

• Características: completo, no ambiguo, finito (tiempo)


INTRODUCCIÓN A LA PROGRAMACIÓN.
LOS ALGORITMOS. DESCRIPCIÓN
• Pseudocódigo
• descripción verbal.
• lenguaje “casi natural”.
• Organigramas
• descripción gráfica
• cada símbolo representa una acción (entradas, salidas,
procesos, comparaciones...)
• todos los símbolos tienen una flecha de entrada y otra de
salida (al menos), salvo los símbolos inicial y final. 5
INTRODUCCIÓN A LA PROGRAMACIÓN.
LOS ALGORITMOS. DESCRIPCIÓN
• Ejemplo: programa para escribir 5 primeras potencias de un número
(pseudocódigo):
1 programa Potencias;
2 leer(x)
3 i = 1; res = 1;
4 res = res*x;
5 escribir(x “ elevado a ” i “ es ” res);
6i = i + 1
7 si (i > 5) entonces
terminar
8 ir al paso 4
6
9 fin.
INTRODUCCIÓN A LA PROGRAMACIÓN.
LOS ALGORITMOS. DESCRIPCIÓN
• Organigramas. Símbolos
Inicio i=1 res=res*x
x
res=1

Cálculo i, res
Entrada
Salida (pantalla)
i=i+1

Fin SI i>5 NO
7

Comparación
INTRODUCCIÓN A LA PROGRAMACIÓN.
LOS ALGORITMOS. ESTRUCTURAS BÁSICAS

ASIGNACION
ENTRADA/SALIDA
longitud = 2 * 3.14 * radio
leer(edad)
x=x+1
imprimir(valor)
CONDICION
si (edad < 18) entonces
imprimir(“No puedes votar”)
si no
voto = leer(“Elija su voto”)
fin si 8
INTRODUCCIÓN A LA PROGRAMACIÓN.
LOS ALGORITMOS. ESTRUCTURAS BÁSICAS
ITERACIÓN
mientras (num <> 8) hacer
num = leer(“Otra vez. Número:”)
fin mientras

para i=1 hasta 10 hacer


imprimir(3 “x” i “=” 3*i)
fin para

repetir
x=x+2 9

hasta que (x > 50)


INTRODUCCIÓN A LA PROGRAMACIÓN.
LOS ALGORITMOS. REFINAMIENTO
• Refinamiento por pasos sucesivos (top-down)
• Descomposición de un problema en subproblemas en etapas
sucesivas.
• Atención al principio a los aspectos globales del sistema. Al avanzar
el diseño, descomposición en subsistemas (detalles).
• Composición hacia arriba (bottom-up)
• Identificar conjunto primitivo de objetos, acciones y relaciones que
proporcionarán una base para la solución
• Conceptos de alto nivel expresados en términos del conjunto de
primitivos (combinaciones).
• Necesidad de un conjunto completo de primitivas 10
INTRODUCCIÓN A LA PROGRAMACIÓN.
LOS ALGORITMOS. REFINAMIENTO
• Ejemplo. Problema: Dibujar la función Y = X3+2x-3
• Top-Down
• Etapa 1.
• 1. Calcular puntos
• 2. Dibujarlos

• Modularidad

11
INTRODUCCIÓN A LA PROGRAMACIÓN.
LOS LENGUAJES DE PROGRAMACIÓN
• Motivación y concepto.
• Lenguajes de programación.
• Lenguaje máquina (ceros y unos)
• Lenguaje de alto nivel. Traductores.
• Ventajas de los LP de alto nivel
• Portabilidad.
• Facilidad de uso
• Clasificación de los LP.
• Propósito general / específico
• Imperativos / Declarativos / Orientados a Objeto 12
INTRODUCCIÓN A LA PROGRAMACIÓN.
LENGUAJE DE PROGRAMACIÓN DE ALTO
NIVEL
• FORTRAN
• COBOL
• BASIC
• Pascal
•C
• C++
• C#
• Java
• LISP 13

• PROLOG
INTRODUCCIÓN A LA
PROGRAMACIÓN. LA TRADUCCIÓN
• Introducción
• Compilación
• código fuente / código objeto.
• Interpretación
• Comparación entre ambos métodos

14

You might also like