Вы находитесь на странице: 1из 33

Algoritmia y

Programacin
CONCEPTOS GENERALES

JOS L. SANTIAGO

Fundamentos de Informtica
El trmino informtica se refiere al tratamiento y procesamiento automtico de
la informacin a travs de diferentes sistemas computacionales.

Los sistemas de informacin deben cumplir tres tareas bsicas:


Captacin de informacin (Entrada)
Procesamiento de la informacin
Muestra de resultados (Salida)
Su importancia se logra ver en diferentes campos como son el tratamiento de
informacin, el manejo de procesos, el procesamiento y administracin de
negocios, en el campo de transportes, en la medicina, entre otros.

Fundamentos de Informtica
Las tecnologas de la informacin y la comunicacin (TIC) son
un conjunto de servicios, redes, software, aparatos que tienen
como fin el mejoramiento de la calidad de vida de las personas
dentro de un entorno, y que se integran a un sistema de
informacin interconectado y complementario.

Cul es su importancia?
Cules son sus ventajas en el campo de la ingeniera?

APLICACIONES DE TIC

Qu es la computadora?
Capacitada para operaciones lgicas o aritmticas de forma automtica.

Se compone por:
Memoria
Procesador o CPU (Unidad de control / Unidad aritmtico lgica)
Dispositivos de E/S (Entrada/Salida)

OJO: Historia de la computacin?

Enlaces de inters
http://www.webopedia.com/DidYouKnow/Hardware_Software/2002/Fiv
eGenerations.asp
http://www.computersciencelab.com/ComputerHistory/History.htm
http://www.computerhistory.org/

Hardware y Software

Estructura del computador

Dato e Informacin
El mundo est compuesto de objetos fsicos y simblicos.

Numros Letras Signos Smbolos.

Dato e Informacin
Qu es un dato?
Representacin simblica
No tienen sentido semntico
No transmiten mensaje
Describen situaciones, hechos

Son objetos simblicos que representan objetos fsicos del


mundo real. Sirven para describir una informacin de manera
desglosada.

Dato e Informacin
Qu es informacin?
Es una coleccin de datos o hechos agrupados, que permiten la
descripcin de sucesos o entidades.
Conjunto de Datos procesados
Conjunto de Datos organizados
Tienen un significado
Transmiten un mensaje
Permite la toma de decisiones
Favorece a la resolucin de problemas
Incrementa el conocimiento

Dato e Informacin
Datos VS Informacin:
Bogot: 22C

Barranquilla: 22C

Dato e Informacin
Cmo convertir un dato en informacin?
Mtodos:
Contextualizar.
Categorizar.
Calcular.
Corregir.
Condensar.

Variable
Es un objeto simblico que representa o identifica a un
elemento no especificado dentro de un conjunto dado.

Elemento de un algoritmo que puede adquirir o ser sustituido


por un valor cualquiera (siempre dentro de su universo)

Variable
Por ejemplo:
x es una variable del universo {2, 4, 6, 8}.
x puede ser igual a cualquiera de esos valores.
x puede ser cualquier nmero par que sea inferior o igual a
8.

Tipos de variables
En programacin:
Booleano
Entero
Decimal de coma flotante
Arreglo
Matriz
Caracter

Ejemplo de aplicacin con variables


Por ejemplo:

Si existe una variable de tipo Entero con nombre num y se


almacena el valor 10 en esa variable, en programacin podra
ejecutarse una instruccin como:
num num + 1
El resultado sera que la variable es num = 11

Qu es un algoritmo?

Explicacin dinmica de un algoritmo

Solucin de Problemas
Problema
Una abstraccin de la realidad
Requiere una solucin.

Solucin
Procedimiento o mtodo
Transformacin
Satisface ciertos requerimientos.

Solucin de Problemas
1.General

2.Mediante el Computador

Pasos para solucionar un problema


(General)
1. Definicin del problema (planteamiento original)

Conceptualizacin
Contexto.
Objetivo.
Elementos involucrados.

Pasos para solucionar un problema


(General)
1. Definicin del problema (planteamiento original)
2. Conceptualizacin de la solucin
Descomposicin.
Dividir el problema en subproblemas
Subproblema
o Unidad lo suficientemente simple para ser descrita en forma concisa
o Utilizando nicamente operaciones elementales o referencias a otros
subproblemas.

Tareas.
Variables.

Pasos para solucionar un problema


(General)
1. Definicin del problema (planteamiento original)

2. Conceptualizacin de la solucin
3. Especificacin del algoritmo
Secuencia de actividades que conforman la solucin del
problema.
Autocontenida y en trminos de las tareas definidas

Pasos para solucionar un problema


(General)
1. Definicin del problema (planteamiento original)
2. Conceptualizacin de la solucin
3. Especificacin del algoritmo

4. Validacin del algoritmo


Dominios.
conjunto de problemas y sus soluciones, que caracterizan el dominio del
problema

Ejecucin.
Ejecutar el algoritmo para cada uno de los problemas
Validar que se alcancen los objetivos propuestos

Pasos para solucionar un problema


(General)
1. Definicin del problema (planteamiento original)
2. Conceptualizacin de la solucin

3. Especificacin del algoritmo


4. Validacin del algoritmo
5. Limitaciones del algoritmo
Identificar
Puntos dbiles
Escenarios en los cuales el algoritmo no funciona
Deficiencias (condiciones crticas)

Pasos para solucionar un problema


(General)
1. Definicin del problema (planteamiento original)
2. Conceptualizacin de la solucin
3. Especificacin del algoritmo
4. Validacin del algoritmo
5. Limitaciones del algoritmo

Resolucin de problemas mediante


computador
1. Anlisis del Problema
Definir
Qu hace?
Con cules datos?
Cules son los procedimientos?
Cules son los resultados?

Resolucin de problemas mediante


computador
2. Diseo del algoritmo
Cmo hace el programa la tarea solicitada?
Mtodos para el proceso
Diseo descendente (top-down) o modular

Independiente del lenguaje de programacin


Herramientas
Diagrama de Flujo
Pseudocdigo

Resolucin de problemas mediante


computador
3. Codificacin
Escribir el algoritmo mediante un lenguaje de programacin
Programa fuente
Editor

Resolucin de problemas mediante


computador
4. Compilacin, ejecucin y verificacin
Compilacin
Traducir el programa fuente a lenguaje de mquina
Programa objeto

Ejecucin
Programa ejecutable
Programa objeto + enlace con rutinas de libreras

Verificacin
Ejecutar el programa con una amplia variedad de datos para identificar
errores

Resolucin de problemas mediante


computador
5. Mantenimiento
Cambiar el programa de acuerdo a las necesidades de los
usuarios

6. Documentacin
Descripcin del proceso
Interna
Externa

Resolucin de problemas mediante


computador
1. Anlisis del Problema

2. Diseo del algoritmo


3. Codificacin
4. Compilacin, ejecucin y verificacin
5. Depuracin y mantenimiento
6. Documentacin