Sunteți pe pagina 1din 16

FUNDAMENTOS DE PROGRAMACIN

Estructura de contenidos
Introduccin
1.
Conceptos generales de programacin ....................................................4
1.1 Qu es computador? ................................................................................4
1.2
Software y hardware ................................................................................5
2.
Organizacin fsica del computador .........................................................5
3.
Algoritmos y programa...............................................................................7
3.1 Ejemplo........................................................................................................7
3.2 Caractersticas de un algoritmo ................................................................8
3.3 Algoritmos cualitativos y algoritmos cuantitativos ................................9
4.
Proceso de programacin ..........................................................................10
4.1 Definicin y anlisis del problema.............................................................10
4.2 Diseo de algoritmo ...................................................................................10
4.3 Codificacin del programa ........................................................................10
4.4 Implantacin del programa .......................................................................10
4.5 Mantenimiento del programa ...................................................................11
5.
Tcnica de representacin de algoritmos ................................................11
5.1 Diagrama de flujo .......................................................................................11
5.2 Pseudocdigo .............................................................................................12

FAVA - Formacin en Ambientes Virtuales de Aprendizaje

SENA - Servicio Nacional de Aprendizaje

ORGANIZADOR GRFICO

FAVA - Formacin en Ambientes Virtuales de Aprendizaje

SENA - Servicio Nacional de Aprendizaje

INTRODUCCIN
La computadora es uno de los
elementos ms importantes
y esenciales en laactualidad,
es una herramienta fundamental
para las empresas industriales,
lasinvestigaciones cientficas y la
educacin; prcticamente se puede
afirmar que seencuentra implcita en
todos los campos de la vida.Hoy en
da, la computadora es utilizada para
almacenar y visualizar cualquierforma
de datos, los cuales son procesados
generando informacin. Estos datos yel
procedimiento utilizado se encuentran
almacenados en forma de un
programa,el cual est constituido por
una serie de instrucciones secuenciales
y codificadasen un lenguaje de
programacin.
En el documento se encuentran
definiciones bsicas como
algoritmo, definidocomo una serie
de instrucciones secuenciales, a
travs del cual es posibleresolver
un problema. Esta secuencia ordenada
de instrucciones que se ejecutaen
un tiempo determinado, es un
procedimiento con un uso de recursos
finito, porconsiguiente los algoritmos
tienen un inicio y un final; los
algoritmosposteriormente se codifican
en los lenguajes de programacin.

1-Conceptos generales de
programacin
En las ltimas dcadas, el computador
se ha convertido en una herramienta
indispensable para realizar cualquier tipo
de trabajo, ya sea en el hogar, la industria
o el estudio.
Actualmente se destaca por su gran
capacidad de almacenamiento de datos
y procesamiento de informacin, los
cuales son necesarios para generar
resultados en muy poco tiempo.
En el desarrollo de un programa, el
computador interpreta las instrucciones
que se le dan y las ejecuta gracias a la
secuencia dada por el programador;
dicha secuencia debe cumplir con
reglas ya establecidas en el lenguaje de
programacin; este proceso es la forma
de comunicarle a la mquina lo que debe
hacer.
El papel de los programadores es
fundamental en la solucin del problema
planteado, traduciendo el problema en
lenguaje de programacin entendible
para la mquina, el cual se convierte en
cdigo ejecutable o programa final.

FAVA - Formacin en Ambientes Virtuales de Aprendizaje

Todo lo anterior no sera posible sin el


computador, por esta razn es necesario
delimitar Qu es esta herramienta?,
Cules son sus partes y cul es su
funcionalidad bsica?

1.1 Qu es un computador?
Un computador es un dispositivo
electrnico utilizado para procesar
informacin y obtener resultados.
Los datos y la informacin se pueden
introducir en la computadora por la
entrada, la cual se denomina input y a
continuacin se procesan para producir
una salida denominada output (ver
Figura 1).
El computador se puede considerar
como una unidad en la que se almacenan
ciertos datos; hay entrada de datos, luego
se procesan los mismos, con el fin de
producir unos datos de salida. Los datos
de entrada y los datos de salida pueden
ser cualquier tipo de archivo, ya sea una
hoja de texto o de clculo, fotos o videos.
La forma ms sencilla que una persona
se pueda comunicar con el computador,
es mediante un ratn (mouse), un teclado
y una pantalla (monitor). Hoy da existen
otros dispositivos muy populares como:

SENA - Servicio Nacional de Aprendizaje

escneres,
micrfonos,
altavoces,
cmaras de vdeo, cmaras digitales;
de igual manera, mediante mdems,
es posible conectar su computador con
otros computadores, a travs de redes,
siendo Internet, la red ms importante.
COMPUTADORA

SOFTWARE

Datos de entrada

Datos de salida

encuentra el sistema operativo, el cual


permite funcionar correctamente los
dems programas.

2. Organizacin fsica del


computador
Por lo general, la mayora de
computadores ya sean grandes o
pequeos, constan de tres componentes
principales entre ellos estn: la Unidad
Central de Proceso (CPU) o procesador,
la memoria principal y el programa.

Procesador (CPU)

Figura 1. Elementos que componen el computador


Fuente: Prieto y Torres (2005)

La unidad central de proceso, es el


cerebro del computador, su funcin es
controlar el perfecto funcionamiento
de todos los componentes y ejecutar
las instrucciones aritmticas y lgicas.
La memoria es utilizada para que los
programas del computador puedan
iniciar o se ejecuten y queden a
disposicin del usuario.
Ver representacin grfica en la figura 2.

Memoria principal

UAL

1.2 Hardware y software


Todos los componentes fsicos o
tangibles que conforman el computador
al igual que los dispositivos de entrada y
salida, se conocen como hardware.
El conjunto de programas o instrucciones
que permiten el correcto funcionamiento
del computador, se le denomina
software. El software es la parte lgica
que conforma el computador para la
realizacin de tareas especficas, all se

Unidad de
control,
UC

Entrada de datos

Programa

Salida de datos

Figura 3. Organizacin Fsica del computador


Fuente: Prieto y Torres (2005)

FAVA - Formacin en Ambientes Virtuales de Aprendizaje

SENA - Servicio Nacional de Aprendizaje

FAVA - Formacin en Ambientes Virtuales de Aprendizaje

SENA - Servicio Nacional de Aprendizaje

3. Algoritmos y programa

3.1 Ejemplo

Un algoritmo es un conjunto de
instrucciones ordenadas, definidas y
finitas con el cual se realiza una tarea en
la solucin de un problema determinado.
Entre los pasos que se utilizan para la
realizacin de un algoritmo, siempre
debe existir un punto de inicio y un punto
de terminacin o fin, deben ser nicos y
de fcil identificacin.
Las personas que realizan diariamente
tareas asociadas con acciones que
buscan alcanzar un resultado o la
solucin de un problema, ejecutan
tareas siguiendo unos pasos de forma
ordenada y adecuada, que comparados
con un algoritmo, son exactamente lo
mismo.
Un ejemplo prctico de la vida diaria es
abrir y cerrar una puerta. Como es lgico,
en la cotidianidad se repite la misma
accin una y otra vez y no se presta
atencin a los pasos que se deben
seguir para poder realizar esta actividad
sin contratiempos.

A continuacin, se tiene un ejemplo


que fue tomado en su totalidad del
texto Fundamentos de programacin de
Cair. La tarea es construir un algoritmo
para preparar la siguiente receta: chiles
morita rellenos con salsa de nuez.
Primero hay que tener en cuenta los
ingredientes y luego el algoritmo que
ayudar a preparar este delicioso plato.
Ingredientes:

A continuacin, se desarrollar un
algoritmo con todos los pasos a seguir
para finalizar con un objetivo, en este
caso, preparar un plato internacional
mexicano.

150 g de chiles morita (unos 20)


2 cucharadas de aceite
12 dientes de ajo
1 cebolla cortada en aros finos
2 tazas de vinagre de vino tinto
Sal
10 granos de pimienta negra
11/2 cucharadas de organo seco
185 g de piloncillo rallado
Relleno:
1 cucharada de aceite
1/2 cebolla finamente picada
2 dientes de ajo finamente picados
1/2 taza (125 g) de tomate finamente
picado
1/4 taza (30 g) de almendras peladas y
picadas

FAVA - Formacin en Ambientes Virtuales de Aprendizaje

1/4 taza (30 g) de uvas pasas sin semillas


1 pechuga entera de pollo cocida y
finamente desmenuzada
1 cucharadita de sal
1/2 cucharada de pimienta recin molida
Salsa:
2 huevos, separadas las claras de las
yemas
3/4 taza (90 g) de harina
Aceite para frer
3/4 taza (90 g) de nueces
1 taza de crema de leche espesa, no
azucarada
Algoritmo (preparacin):

Lave los chiles y squelos bien.


Caliente el aceite en un sartn grande y
saltee los chiles, los ajos y la cebolla.

Aada el vinagre, la sal, los granos


de pimienta, el organo y el piloncillo y
contine salteando durante 10 minutos.
Retire del fuego, deje que se enfre
la mezcla y pngala en una cazuela,
preferentemente de barro, tapada.
Refrigere 24 horas.

Para preparar el relleno, caliente


el aceite en un sartn y saltee la cebolla
durante cinco minutos o hasta que este
quede transparente. Agregue los ajos,
el tomate, las pasas, las almendras y
dos cucharadas de vinagre en el que se

SENA - Servicio Nacional de Aprendizaje

cocieron los chiles. Mezcle bien y aada


el pollo, la sal y la pimienta. Cueza a
fuego lento durante ocho minutos, sin
dejar de mover. Reserve. Muela el ajo, la
pimienta y un poco de sal y nteselos a
las pechugas.
Con unos guantes (para evitar que se
irrite la piel), corte cada chile a lo largo.
Quteles las semillas y desvnelos.
Ponga el relleno a cada chile con una
cuchara pequea. Ponga poca cantidad
para evitar que se desparrame al frer los
chiles.
Bata las claras al punto de nieve.
Agregue una a una las yemas, pero sin
agitar demasiado para evitar que las
claras pierdan volumen.
En un sartn grande, caliente entre 2 y 3
cm de aceite y djelo al fuego hasta que
est muy caliente. Ponga la harina en un
plato y revuelque en ella cada chile hasta
que este quede cubierto; sumrjalo en el
huevo batido e inmediatamente pngalo
en el aceite. Fra cada chile hasta que se
dore por un lado y luego dele vuelta para
que se dore el otro lado.
En un procesador de alimentos o
similar, haga un pur con las nueces y
la crema con una pizca de sal. Sirva los
chiles con un poco de la crema de nuez
encima de ellos (el resto se presenta en
una salsera).

En la siguiente figura se pueden observar claramente las etapas a seguir, para


solucionar el problema planteado.

Pr oblem a

Anlisis del
programa

Construccin
de algoritmo

Etapa 1E

tapa 2E

tapa 3

Figura 4. Etapas para la solucin de un problema


Fuente: Cair (2006)
3.2 Caractersticas del algoritmo
Existen unas caractersticas que debe cumplir el algoritmo, estas son:
Preciso: los pasos a realizar en el algoritmo deben ser claros
Determinado: debe arrojar los resultados esperados
Finito: independientemente de lo complejo que sea, el algoritmo debe tener
longitud finita
Por definicin, un algoritmo debe cumplir con tres partes fundamentales: entrada,
proceso y salida. En el algoritmo de la receta de cocina del ejemplo 1, citado
anteriormente, se tiene lo siguiente:
Entrada: ingredientes y utensilios empleados
Proceso: preparacin de la receta
Salida: plato terminado

FAVA - Formacin en Ambientes Virtuales de Aprendizaje

SENA - Servicio Nacional de Aprendizaje

3.3 Algoritmos cualitativos


algoritmos cuantitativos

Se dice que un algoritmo es cualitativo


cuando sus instrucciones dadas son
descritas por medio de palabras y no
incluye clculos numricos; por ejemplo
cambiar una llanta de un automvil o
hacer una llamada telefnica, como se
plantea el siguiente ejemplo:
Ejemplo 2
Una persona desea realizar una llamada
telefnica a travs de su telfono celular.
El algoritmo sera el siguiente:
1. Inicio
2. Marca el nmero de telefnico
3. Presiona el botn para llamar
4. Hablar
5. Terminar la llamada
6. Fin
Mientras que los algoritmos cuantitativos
son una serie de pasos o instrucciones
ordenadas y lgicas que involucran
clculos matemticos para llevar a cabo
una solucin.
Ejemplo 3
Realizar un algoritmo para encontrar el
rea de un tringulo:
1. Inicio

2. Definir variables rea, base, altura:


real
3. Solicitar base y altura
4. Calcular rea = base * altura /2
5. Imprimir rea
6. Fin

Programa

Un programa o software de computadora,


es un conjunto de instrucciones
encaminadas a la realizacin de una
tarea o actividad especfica.
El programa puede clasificarse segn las
funciones que este realiza: un ejemplo
de ello es un software de sistema, el cual
sirve para que el computador funcione
correctamente; otro claro ejemplo, es
un software de aplicacin para que el
usuario realice tareas cotidianas, por
ejemplo, un procesador de texto como
Word, un programa para elaborar hojas
de clculo como Excel, o un software
para realizar presentaciones como
PowerPoint.
Por ltimo y de gran importancia, hay que
destacar que hoy en da los programas
se codifican usando lenguajes de
programacin.
En la figura 5 se observan las partes
fundamentales de un programa.

FAVA - Formacin en Ambientes Virtuales de Aprendizaje

Entrada de datos

PROCESO

Salida de datos
Figura 5. Partes de un Programa
Fuente: Cair (2006)

SENA - Servicio Nacional de Aprendizaje

4. Proceso de Programacin

4.1 Definicin y anlisis del problema

Es importante tener en cuenta que los programas se hacen con un lenguaje de


programacin.

Este proceso inicia cuando se presenta


la necesidad de resolver un problema
especfico, esta es la parte ms crtica;
por esta razn se debe entender el
problema que se quiere solucionar.

Elaborar un programa para computador implica varias etapas, en cada una de ellas se
realiza una serie de pasos ordenados, con el propsito de dar solucin al problema
propuesto.
Con el fin de que se lleve a buen trmino la solucin del problema propuesto, se
debe tener en cuenta los siguientes puntos:

4.2 Diseo de algoritmo


En esta etapa se procede a disear la
parte lgica para la solucin del problema,
a travs de tcnicas existentes de
representacin de algoritmos, entre las
ms conocidas se encuentra el diagrama
de flujo y el pseudocdigo.

4.3 Codificacin del programa

Mantenimiento
de programa

Diseo de
algoritmo

En esta etapa se realiza el cdigo fuente


utilizando un lenguaje de programacin.
El cdigo fuente debe ser compilado para
que pueda se entendible por la mquina.

4.4 Implantacin del programa

Implantacin del
programa

FAVA - Formacin en Ambientes Virtuales de Aprendizaje

Finalmente despus de haber realizado


las anteriores etapas, el programa se
instala para poner en funcionamiento la
solucin planteada en la primera etapa.

SENA - Servicio Nacional de Aprendizaje

10

4.5 Mantenimiento del programa

de mediana complejidad.

En el caso de detectar fallas o algn


cambio en el desarrollo de la solucin al
problema, se realizan ajustes necesarios
para producir los resultados esperados.

Los siguientes son los smbolos bsicos


para la creacin de diagramas de flujo
para representar la solucin a crear. A
continuacin se muestran algunos de
los smbolos ms utilizados:

5. Tcnicas de representacin de
algoritmos
Los mtodos ms usados son:
- Diagramas de flujo
- Pseudocdigo
A continuacin se explicar en qu
consisten estos mtodos:

5.1 Diagrama de flujo


Un diagrama de flujo es una
representacin grfica y lgica de un
problema, para el diseo se utilizan
smbolos
simples
y
aprobados
universalmente, de tal manera que por
su sencillez cualquier persona puede
interpretarlos; los diagramas de flujo
se conectan con flechas denominadas
lneas de flujo, las cuales indican la
secuencia de operacin.
Es importante destacar que el diagrama
de flujo es una herramienta til en la
etapa de anlisis y diseo de software

Indica repeticin

Lneas de flujo que indican la secuencia en la


que se realizan las operaciones

Indica el envo de datos


a la impresora

Indica el inicio o el final


del diagrama de flujo

Smbolo de proceso, indica la asignacin de un


valor a memoria o la ejecucin de un proceso

Representa la continuidad del diagrama dentro


de la misma pgina

Indica la entrada y salida


de datos

Smbolo de decisin, indica la realizacin de una


comparacin de valores

Representa la continuidad del diagrama en otra


pgina

FAVA - Formacin en Ambientes Virtuales de Aprendizaje

Antes de continuar, se debe tener en


cuenta algunas recomendaciones para
elaborar unos diagramas de flujo:
Use solamente lneas horizontales y
verticales
Use conectores solo cuando sea
necesario
No deje lneas sin conectar
Evite cruce de lneas
Redacte el texto escrito que va dentro
de los smbolos de manera clara y concisa

SENA - Servicio Nacional de Aprendizaje

11

5.2 Pseudocdigo
Para mayor claridad, observe como
se representa un problema en un
diagrama de flujo:

Inicio

Se requiere obtener el salario


neto de un trabajador, para ello,
se debe capturar el nombre, las
horas trabajadas y el valor de la
hora. Adems, se debe realizar un
descuento correspondiente al 10%
por impuestos.

Leer nombre,
horas precio

Tenga en cuenta que para elaborar


el diagrama con los smbolos
respectivos y obtener su correcta
elaboracin,
existen
algunos
programas, ya sean libres o de
propiedad que se pueden adquirir
para realizar estos diagramas.
Algunos de ellos son: SmartDraw,
DFD,
Microsoft
Office
Visio
Professional 2010, GPL, Pseint,
entre otros.

Calcular jornal bruto =


horas * precio
Calcular neto bruto =
bruto -0.10 * bruto
Escribir nombre
horas ,
, neto

El pseudocdigo es una tcnica para


diseo de programas (algoritmos), el cual
permite definir las estructuras de datos,
las operaciones que se aplican a los
datos y la lgica que tendr el programa
de computadora para solucionar un
determinado problema.
Se utiliza un lenguaje muy parecido
al idioma espaol, pero que respeta
las directrices y los elementos de
los lenguajes de programacin. A
continuacin, se presenta el siguiente
ejemplo:
Ejemplo 5
Escribir el requerimiento planteado en
el ejemplo 4, salario neto, utilizando
pseudocdigo.
1. Inicio
2. Lea nombre, horas, valor_hora
3. Neto = salario-(salario*10%)
4. Imprima nombre, salario, neto
5. Final

Fin

FAVA - Formacin en Ambientes Virtuales de Aprendizaje

SENA - Servicio Nacional de Aprendizaje

12

CD-ROM (Compact Disk - Read Only Memory): Disco compacto de solo lectura. Tiene
una capacidad de almacenamiento de hasta 650 megabytes.
Controlador: programa que comanda los perifricos conectados a la computadora.
CPU (Central Processing Unit): en espaol significa unidad central de procesamiento,
es el procesador que contiene los circuitos lgicos que realizan las instrucciones de
la computadora.
DVD (Digital Versatile Disc): en espaol Disco Verstil Digital, en sus inicios sus
siglas se tomaron como Disco de Video Digital.
Este disco posee gran capacidad de almacenamiento y sirve para almacenar cualquier
tipo de informacin incluidos datos, video o msica.
Gigabyte (GB): unidad de medida de una memoria. 1 gigabyte = 1024 megabytes =
1.073.741.824 bytes.
Hardware: todos los componentes fsicos de la computadora y sus perifricos.
Lenguaje de programacin: sistema de escritura para la descripcin precisa de
algoritmos o programas informticos.
Memoria cach: pequea cantidad de memoria de alta velocidad que incrementa el
rendimiento de la computadora almacenando datos temporalmente.
Microprocesador (microprocessor): es el chip ms importante de una computadora.
Su velocidad se mide en MHz (Megahertz).
Monitor: unidad de visualizacin, comnmente conocida como pantalla.
Perifrico: todo dispositivo que se conecta a la computadora; por ejemplo: teclado,
monitor, mouse, impresora, escner.
Procesador (processor): conjunto de circuitos lgicos que procesa las instrucciones
bsicas de una computadora.
RAM (Random Acces Memory): en espaol significa memoria de acceso aleatorio. En
esta memoria es donde la computadora almacena datos que le permiten al procesador
acceder rpidamente al sistema operativo, las aplicaciones y los datos en uso. Tiene
estrecha relacin con la velocidad de la computadora. Se mide en megabytes.
ROM (Read Only Memory): en espaol memoria de slo lectura. Memoria incorporada
que contiene datos que no pueden ser modificados. Permite a la CPU (Central
Processing Unit): en espaol significa unidad central de procesamiento, es el

procesador que contiene los circuitos lgicos que realizan las instrucciones de la
computadora.
DVD (Digital Versatile Disc): en espaol Disco Verstil Digital, en sus inicios sus
siglas se tomaron como Disco de Video Digital.
Este disco posee gran capacidad de almacenamiento y sirve para almacenar cualquier
tipo de informacin incluidos datos, video o msica.
Gigabyte (GB): unidad de medida de una memoria. 1 gigabyte = 1024 megabytes =
1.073.741.824 bytes.
Hardware: todos los componentes fsicos de la computadora y sus perifricos.
Lenguaje de programacin: sistema de escritura para la descripcin precisa de
algoritmos o programas informticos.
Memoria cach: pequea cantidad de memoria de alta velocidad que incrementa el
rendimiento de la computadora almacenando datos temporalmente.
Microprocesador (microprocessor): es el chip ms importante de una computadora.
Su velocidad se mide en MHz (Megahertz).
Monitor: unidad de visualizacin, comnmente conocida como pantalla.
Perifrico: todo dispositivo que se conecta a la computadora; por ejemplo: teclado,
monitor, mouse, impresora, escner.
Procesador (processor): conjunto de circuitos lgicos que procesa las instrucciones
bsicas de una computadora.
RAM (Random Acces Memory): en espaol significa memoria de acceso aleatorio. En
esta memoria es donde la computadora almacena datos que le permiten al procesador
acceder rpidamente al sistema operativo, las aplicaciones y los datos en uso. Tiene
estrecha relacin con la velocidad de la computadora. Se mide en megabytes.
ROM (Read Only Memory): en espaol memoria de slo lectura. Memoria incorporada
que contiene datos que no pueden ser modificados. Permite a lacomputadora arrancar.
A diferencia de la RAM, los datos de la memoria ROM no se pierden al apagar el
equipo.
Sistema Operativo (OS): programa que administra los dems programas en una
computadora.
Software: trmino general que designa los diversos tipos de programas usados en
computacin.
USB (Universal Serial Bus): es una interfase de tipo plug & play entre una
computadora y ciertos dispositivos, por ejemplo: teclados, telfonos, escneres e
impresoras.

FAVA - Formacin en Ambientes Virtuales de Aprendizaje

SENA - Servicio Nacional de Aprendizaje

13

FAVA - Formacin en Ambientes Virtuales de Aprendizaje

SENA - Servicio Nacional de Aprendizaje

14

PROGRAMA
NOMBRE DEL OBJET O
EXPERTO TEMTICO
DISEADORES GRFICOS
GESTOR DE REPOSITORIO
PROGRAMADORES
GUIONISTA Y PRODUCTOR DE MEDIOS AUDIOVISUALES
GUIONISTA
ASESORAS PEDAGGICAS
LDER DE L A LNEA DE PRODUCCIN

Metodologa de la programacin de sistemas informticos


Fundamentos de programacin
Carlos Felipe Domnguez Illera
Caren Xiomara Carvajal Pre z
y
Luis Guillermo Roberto Bez
Luis Carlos Reyes Parada
Nancy Astrid Barn Lpez
Nilda Ins Camargo Suescn
Fr edy Velandia Figueroa
Jheison Edimer Muoz R amrez
Adriana Carolina Acosta Caycedo
Kennia Andrea Pea Barrera
Janet Lucia Villalba Triana.
Zulma Yurany Vianch Rodrguez

FAVA - Formacin en Ambientes Virtuales de Aprendizaje

SENA - Servicio Nacional de Aprendizaje

15

FAVA - Formacin en Ambientes Virtuales de Aprendizaje

SENA - Servicio Nacional de Aprendizaje

16

S-ar putea să vă placă și