You are on page 1of 32

LENGUAJES DE PROGRAMACION

Un lenguaje de programacin es un lenguaje que


puede ser utilizado para controlar el
comportamiento de una mquina, particularmente
una computadora. Consiste en un conjunto de
reglas sintcticas y semnticas que definen su
estructura y el significado de sus elementos,
respectivamente. Aunque muchas veces se usa
lenguaje de programacin y lenguaje informtico
como si fuesen sinnimos, no tiene por qu ser as,
ya que los lenguajes informticos engloban a los
lenguajes de programacin y a otros ms, como,
por ejemplo, el HTML.

Segn la forma de ejecucin


Lenguajes compilados

Naturalmente, un programa que se escribe en un


lenguaje de alto nivel tambin tiene que traducirse
a un cdigo que pueda utilizar la mquina. Los
programas traductores que pueden realizar esta
operacin se llaman compiladores. stos, como los
programas ensambladores avanzados, pueden
generar muchas lneas de cdigo de mquina por
cada proposicin del programa fuente. Se requiere
una corrida de compilacin antes de procesar los
datos de un problema.
Los compiladores son aquellos cuya funcin es
traducir un programa escrito en un determinado
lenguaje a un idioma que la computadora entienda
(lenguaje mquina con cdigo binario).
Al usar un lenguaje compilado (como lo son los
lenguajes del popular Visual Studio de Microsoft),
el programa desarrollado nunca se ejecuta

mientras haya errores, sino hasta que luego de


haber compilado el programa, ya no aparecen
errores en el cdigo.
Lenguajes interpretados

Se puede tambin utilizar una alternativa diferente


de los compiladores para traducir lenguajes de alto
nivel. En vez de traducir el programa fuente y
grabar en forma permanente el cdigo objeto que
se produce durante la corrida de compilacin para
utilizarlo en una corrida de produccin futura, el
programador slo carga el programa fuente en la
computadora junto con los datos que se van a
procesar. A continuacin, un programa intrprete,
almacenado en el sistema operativo del disco, o
incluido de manera permanente dentro de la
mquina, convierte cada proposicin del programa
fuente en lenguaje de mquina conforme vaya
siendo necesario durante el proceso de los datos.
No se graba el cdigo objeto para utilizarlo
posteriormente.
La siguiente vez que se utilice una instruccin, se le
debe interpretar otra vez y traducir a lenguaje
mquina. Por ejemplo, durante el procesamiento
repetitivo de los pasos de un ciclo, cada instruccin
del ciclo tendr que volver a ser interpretado cada
vez que se ejecute el ciclo, lo cual hace que el
programa sea ms lento en tiempo de ejecucin
(porque se va revisando el cdigo en tiempo de
ejecucin) pero ms rpido en tiempo de diseo
(porque no se tiene que estar compilando a cada
momento el cdigo completo). El intrprete elimina
la necesidad de realizar una corrida de compilacin
despus de cada modificacin del programa cuando
se quiere agregar funciones o corregir errores; pero
es obvio que un programa objeto compilado con
antelacin deber ejecutarse con mucha mayor

rapidez que uno que se debe interpretar a cada


paso durante una corrida de produccin.
ALGUNOS LENGUAJES DE PROGRAMACIN:

ABAP

FORTRAN

Parlog

ABC

Gambas

Perl

Ada

GML

PHP

ActionScrip

GRAFCET

PL/1

FP

Plankalkl

Haskell

PostScript

Icon

PowerBuilder

Inform

Prolog

INTERCA

Python

Afnix

ALGOL

APL

ASP

ASP.NET

AWK

ISWIM

BASIC

Java

BCPL

JavaScript

Befunge

Boo

KWC

LADDER

C++

Lexico

C#

Lingo

Caml

Lisp

Clipper

Logo

CLIPS

Lua

CLU

MAGIC

COBOL

Mainsail

CORAL

Mesa

Miranda

Delphi

ML

DIV

Modula

Joy

Rapid

REXX

RPN

RPG

Ruby

Sail

Sather

Scheme

Scriptol

Seed7

Self

Sh

Simula

Smalltalk

Snobol

SPARK

Squeak

SR

Standard ML

Dylan

Modula-2

TI-Basic

Eiffel

Modula-3

TCL

Erlang

Natural

VBA

Ensamblad
or

Extended
ML

Euphoria

Fnix

Flow-Matic

Forth

NetREXX
Oberon
Object
REXX

Visual Basic

Visual C++

Visual DialogScript

Objective-C

Ocaml

Occam

Visual Foxpro
Yurix
ZPL

Oz
Pascal

PROGRAMACIN MODULAR
La programacin estructurada es una tcnica de diseo de programas que
comenz a ponerse en
prctica a principios de los aos 70. Su utilizacin tiene como objetivo paliar
algunas deficiencias:
1. Los programas que estn constituidos por un nico bloque, ms o menos grande,
de cdigo, dependiendo de la complejidad y tamao de la aplicacin, por ejemplo
5000 6000 lneas de cdigo sin comentar, sin documentar y sin estructurar, esto
es, sin hacer uso de un slo submdulo, son programas pocos legibles, difciles de
depurar y modificar y poco reutilizables.
2. Un problema complejo no puede solucionarse de una sola vez y con un nico
algoritmo; adems, existen operaciones que se repiten una y otra vez a lo largo del
programa, de tal manera que es necesario el mismo bloque de cdigo pero con
diferentes datos. Con el fin de dar solucin a los puntos anteriores se introdujo la
programacin estructurada. Su objetivo primordial es resolver un problema, ms o
menos complejo, dividindolo en otros ms sencillos, que
ligados convenientemente, nos den la solucin del problema original.
Cada subproblema se representar mediante uno o varios mdulos segn su
complejidad. La idea es que estos mdulos sean independientes, es decir, que se
puedan modificar o reemplazar sin afectar al resto del programa o que puedan ser
reutilizados en otros programas. Supongamos el siguiente ejemplo. Un profesor

quiere crear un programa para gestionar la notas de sus alumnos. Quiere que
dicho programa le permita realizar tareas tales como asignar notas, cambiar notas,
ver las notas segn las distintas calificaciones, etc. Un posible divisin del
problema en mdulos sera: Esta subdivisin nos permitira, fcilmente, cambiar la
forma de visualizar a los alumnos, reutilizar el mdulo Visualizar en otro
programa y sobre todo es mucho ms fcil de comprobar su funcionamiento.
Por tanto, las ventajas del diseo modular se traducen, principalmente, en que los
programas son:
ms fciles de escribir y probar (los mdulos pueden escribirse y probarse
separadamente)
ms fciles de mantener y documentar.

Programacin Estructurada.
Se refiere a un conjunto de tcnicas que han ido
evolucionando. Estas tcnicas aumentan
considerablemente la productividad del programa
reduciendo el tiempo requerido para escribir,
verificar, depurar y mantener los programas. La
programacin estructurada utiliza un nmero
limitado de estructuras de control que minimizan la
complejidad de los problemas y que reducen los
errores. sta incorpora entre otros elementos: el
diseo descendente, recursos abstractos y
estructuras bsicas. La programacin
estructurada es una forma de
escribir programacin de ordenador de forma clara,
para ello utiliza nicamente tres estructuras:
secuencial, selectiva e iterativa; siendo innecesario
y no permitindose el uso de la instruccin o
instrucciones de transferencia incondicional ( GOTO
).
QU ES UNA INTERFAZ GRAFICA DE USUARIO?
En el contexto del proceso de interaccin persona-ordenador, lainterfaz grfica de
usuario (IGU), es el artefacto tecnolgico de unsistema interactivo que posibilita, a

travs del uso y la representacin del lenguaje visual, una interaccin amigable con
un sistema informtico.
La interfaz grfica de usuario (en ingls Graphical User Interface,GUI) es un tipo
de interfaz de usuario que utiliza un conjunto de imgenes y objetos grficos
(iconos, ventanas, tipografa) para representar la informacin y acciones
disponibles en la interfaz. Habitualmente las acciones se realizan
mediante manipulacin directa para facilitar la interaccin del usuario con
la computadora.
Surge como evolucin de la lnea de comandos de los primerossistemas
operativos y es pieza fundamental en un entorno grfico.
Como ejemplo de interfaz GUI podemos citar el escritorio o desktopdel sistema
operativo Windows y el entorno X-Window de Linux.
About these ads

Identificador
Los identificadores (IDs) son smbolos lxicos que nombran entidades. El concepto es anlogo al
de "nombres de procesamiento de la informacin". Nombrar las entidades hace posible referirse a
las mismas, lo cual es esencial para cualquier tipo de procesamiento simblico.

Identificadores en lenguajes informticos[editar]


En los lenguajes informticos, los identificadores son elementos textuales (tambin
llamados smbolos) que nombran entidades del lenguaje. Algunas de las de entidades que un
identificador puede denotar son las variables, las constantes, los tipos de dato, lasetiquetas,
las subrutinas (procedimientos y funciones) y los paquetes, tambin conocidos como palabras raras.
En muchos lenguajes algunas secuencias tienen la forma lxica de un identificador pero son
conocidos como palabras clave (opalabras reservadas). Lo habitual es que si un identificador se
corresponde con una palabra clave o reservada, ste ya no pueda utilizarse para referirse a otro tipo
de entidades como variables o constantes (en unos pocos lenguajes, como PL/1, esta distincin no
est del todo clara).
Los lenguajes informticos normalmente ponen restricciones en qu caracteres pueden aparecer en
un identificador. Por ejemplo, en las primeras versiones de C y C++, los identificadores estn
restringidos para que sean una secuencia de una o ms letras ASCII, dgitos numricos (que en
ningn caso deben aparecer como primer carcter) y barras bajas. Las versiones posteriores de

estos lenguajes, as como otros muchos ms lenguajes modernos soportan casi todos los
caracteres Unicode en un identificador. Una restriccin comn es que no est permitido el uso de
espacios en blanco ni operadores del lenguaje.
En lenguajes de programacin compilados, los identificadores generalmente son entidades
en tiempo de compilacin, es decir, entiempo de ejecucin el programa compilado contiene
referencias a direcciones de memoria y offsets ms que identificadores textuales (estas direcciones
de memoria u offsets, han sido asignadas por el compilador a cada identificador).
En lenguajes interpretados los identificadores estn frecuentemente en tiempo de ejecucin, a veces
incluso como objetos de primera clase que pueden ser manipulados y evaluados libremente.
En Lisp, stos se llaman smbolos.
Los compiladores e intrpretes normalmente no asignan ningn significado semntico a un
identificador basado en la secuencia de caracteres actual. Sin embargo, hay excepciones. Por
ejemplo:

En Perl una variable se indica utilizando un prefijo llamado sigil, que especifica aspectos de
cmo se interpreta la variable en lasexpresiones.

En Ruby una variable se considera automticamente como inmutable si su identificador


empieza con una letra mayscula.

En Fortran, la primera letra de una variable indica si por defecto es creada como entero o
como flotante.

Tipo de dato
Tipo de dato informtico es un atributo de una parte de los datos que indica al ordenador (y/o
al programador) algo sobre la clase de datos sobre los que se va a procesar. Esto incluye
imponer restricciones en los datos, como qu valores pueden tomar y qu operaciones se
pueden realizar. Tipos de datos comunes son: enteros, nmeros de coma flotante (decimales),
cadenas alfanumricas, fechas, horas, colores, etc.
Por ejemplo, por lo general el tipo "int" representa un conjunto de enteros de 32 bits cuyo rango
va desde el -2.147.483.648 al 2.147.483.647, as como las operaciones que se pueden realizar
con los enteros, como son la suma, la resta, y la multiplicacin. Los colores, por su parte, se
representan como tres bytes denotando la cantidad de rojo, verde y azul, y una cadena de
caracteres representando el nombre del color; las operaciones permitidas en este caso incluyen
la adicin y la sustraccin, pero no la multiplicacin.
ste es un concepto propio de la informtica, ms especficamente de los lenguajes de
programacin, aunque tambin se encuentra relacionado con nociones similares de
la matemtica y la lgica.

En un sentido amplio, un tipo de datos define un conjunto de valores y las operaciones sobre
estos valores.1 Casi todos los lenguajes de programacin explcitamente incluyen la notacin
del tipo de datos, aunque lenguajes diferentes pueden usar terminologas diferentes. La mayor
parte de los lenguajes de programacin permiten al programador definir tipos de datos
adicionales, normalmente combinando mltiples elementos de otros tipos y definiendo las
operaciones del nuevo tipo de dato. Por ejemplo, un programador puede crear un nuevo tipo de
dato llamado "Persona" que especfica que el dato interpretado como Persona incluir, por
ejemplo, un nombre y una fecha de nacimiento.
Un tipo de dato puede ser tambin visto como una limitacin impuesta en la interpretacin de
los datos en un sistema de tipificacin, describiendo la representacin, la interpretacin y la
estructura de los valores u objetos almacenados en la memoria del ordenador. El sistema de
tipificacin usa informacin de los tipos de datos para comprobar la verificacin de los
programas que acceden o manipulan los datos.
ndice
[ocultar]

1 Tipos de datos primitivos

2 Tipos simples

3 Tipos compuestos

4 Tipo de dato abstracto

5 Tipo puntero y referencia

6 Tipos algebraicos

7 Tipos objeto

8 Tipo funcin

9 Notas

10 Referencias

11 Vase tambin

Tipos de datos primitivos[editar]


Artculo principal: Tipos de datos primitivos

Los tipos de datos hacen referencia al tipo de informacin que se trabaja, donde la unidad
mnima de almacenamiento es el dato, tambin se puede considerar como el rango de valores
que puede tomar una variable durante la ejecucin del programa.
DATOS PRIMITIVOS:

NINGUNO

CARACTERES
El tipo de dato carcter es un dgito individual el cual se puede representar como numricos (0
al 9), letras (a-z) y smbolo ($,_). NOTA: En lenguaje java la codificacin Unicode permite
trabajar con todos los caracteres de distintos idiomas.

Tipo de dato
char

Rango

Tamao de bits

0 a 65535

16 bits

NUMRICOS Este tipo de dato puede ser real o entero, dependiendo del tipo de dato que se
vaya a utilizar.
Enteros: son los valores que no tienen punto decimal, pueden ser positivos o negativos y el
cero.

tipo de dato: byte

tamao= 8 bits

tipo de dato: short

tamao= 16 bits

tipo de dato: int

tamao= 32 bits

tipo de dato: long

tamao= 64 bits

Reales: estos caracteres almacenan nmeros muy grandes que poseen parte entera y parte
decimal.

tipo de dato: float= 32 bits


tipo de dato: double= 64 bits

BOOLEANOS
Este tipo de dato se emplea para valores lgicos, los podemos definir como datos comparativos
dicha comparacin devuelve resultados lgicos.

tipo de dato: boolean

Rango= true - false

Tipos simples[editar]

Introduccin
Se pueden utilizar muchos lenguajes para programar una computadora. El ms bsico es el
lenguaje de maquina, una coleccin de instrucciones muy detallada que controla la circuiteria interna de la
maquina. Este es el dialecto natural de la maquina. Muy pocos programas se escriben actualmente
en lenguaje de maquina por dos razones importantes: primero, porque el lenguaje de maquina es muy
incomodo para trabajar y segundo por que la mayora de las maquinas se pide programar en diversos
tipos de lenguajes, que son lenguajes de alto nivel, cuyas instrucciones son ms compatibles con los
lenguajes y la forma de pensar humanos como lo es el lenguaje c que adems es de propsito general.
Debido a que los programas diseados en este lenguaje se pueden ejecutar en cualquier maquina , casi
sin modificaciones. Por tanto el uso del lenguaje de alto nivel ofrece tres ventajas importantes, sencillez,
uniformidad y portabilidad.
1.1. Lenguaje de programacin: Sistema de smbolos y reglas que permite la construccin de
programas con los que la computadora puede operar as como resolver problemas de manera eficaz.
Estos contienen un conjunto de instrucciones que nos permiten realizar operaciones de entrada / salida,
calculo, manipulacin de textos, lgica / comparacin y almacenamiento / recuperacin.
Los lenguajes de programacin se clasifican en:

Lenguaje Mquina: Son aquellos cuyas instrucciones son directamente entendibles por la
computadora y no necesitan traduccin posterior para que la CPU pueda comprender y ejecutar
el programa. Las instrucciones en lenguaje maquina se expresan en trminos de la unidad
de memoria ms pequea el bit (dgito binario 0 1).

Lenguaje de Bajo Nivel (Ensamblador): En este lenguaje las instrucciones se escriben en


cdigos alfabticos conocidos como mnemotcnicos para las operaciones y direcciones simblicas.

Lenguaje de Alto Nivel: Los lenguajes de programacin de alto nivel (BASIC, pascal, cobol,
fortran, etc.) son aquellos en los que las instrucciones o sentencias a la computadora son escritas con
palabras similares a los lenguajes humanos (en general en ingles), lo que facilita la escritura y
comprensin del programa.
1.2. Algoritmo. 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.
La solucin a cualquier problema de cmputo involucra la ejecucin de una serie de acciones en orden
especifico. Un procedimiento para resolver un problema en trminos de: a) Las acciones a ejecutarse y b)
el orden en el cual estas acciones deben ejecutarse se llama algoritmo.
Un ejemplo de un algoritmo para llegar a la escuela
a.
b.

Salir de la cama

c.

Quitarse la pijamas

d.

Darse un bao

e.

Vestirse

f.

Desayunar
1.3 Programa.

o
o

Secuencia de instrucciones mediante las cuales se ejecutan diferentes acciones de


acuerdo con los datos que se estn procesando.

o
o

Es un algoritmo desarrollado para ser utilizado por la computadora

o
o

g.

Expresin de un algoritmo en un lenguaje preciso que puede llegar a entender una


mquina de cmputo.
Utilizar el transporte ( autobs, carro , bicicleta, etc)

2. Fases para la creacin de un programa.

2.1 Definicin del Problema


Esta fase est dada por el enunciado del problema, el cual requiere una definicin clara y precisa. Es
importante que se conozca lo que se desea que realice la computadora; mientras esto no se conozca del
todo no tiene mucho caso continuar con la siguiente etapa.
2.2 Anlisis del Problema
Una vez que se ha comprendido lo que se desea de la computadora, es necesario definir:
Los datos de entrada.
Cual es la informacin que se desea producir (salida)
Los mtodos y frmulas que se necesitan para procesar los datos.
Una recomendacin muy practica es el que nos pongamos en el lugar de la computadora y analicemos
que es lo que necesitamos que nos ordenen y en que secuencia para producir los resultados esperados.
2.3 Diseo del Algoritmo
Las caractersticas de un buen algoritmo son:
Debe tener un punto particular de inicio.
Debe ser definido, no debe permitir dobles interpretaciones.
Debe ser general, es decir, soportar la mayora de las variantes que se puedan presentar en la definicin
del problema.
Debe ser finito en tamao y tiempo de ejecucin.
2.4 Codificacin
La codificacin es la operacin de escribir la solucin del problema (de acuerdo a la lgica
del diagrama de flujo o pseudocdigo), en una serie de instrucciones detalladas, en un cdigo reconocible
por la computadora, la serie de instrucciones detalladas se le conoce como cdigo fuente, el cual se
escribe en un lenguaje de programacin o lenguaje de alto nivel.
2.5 Prueba y Depuracin
Los errores humanos dentro de la programacin de computadoras son muchos y aumentan
considerablemente con la complejidad del problema. El proceso de identificar y eliminar errores, para dar
paso a una solucin sin errores se le llama depuracin.
La prueba consiste en la captura de datos hasta que el programa no presente errores (los ms comunes
son los sintcticos y lgicos).
2.6 Documentacin
Es la gua o comunicacin escrita es sus variadas formas, ya sea en
enunciados, procedimientos, dibujos o diagramas.
A menudo un programa escrito por una persona, es usado por otra. Por ello la documentacin sirve para
ayudar a comprender o usar un programa o para facilitar futuras modificaciones (mantenimiento).
La documentacin se divide en tres partes:
Documentacin Interna
Documentacin Externa
Manual del Usuario

Documentacin Interna: Son los comentarios o mensaje que se aaden al cdigo fuente para
hacer mas claro el entendimiento de un proceso.

Documentacin Externa: Se define en un documento escrito los siguientes puntos:


Descripcin del Problema
Nombre del Autor
Algoritmo (diagrama de flujo o pseudocdigo)
Diccionario de Datos
Cdigo Fuente (programa)

Manual del Usuario: Describe paso a paso la manera como funciona el programa, con el fin de
que el usuario obtenga el resultado deseado.

2.7 Mantenimiento
Se lleva acabo despus de terminado el programa, cuando se detecta que es necesario hacer
algn cambio, ajuste o complementacin al programa para que siga trabajando de manera correcta.
Para poder realizar este trabajo se requiere que el programa este correctamente documentado

Leer ms: http://www.monografias.com/trabajos38/programacion/programacion.shtml#ixzz2xSYJ9TCs

PROGRAMACIN
LOS DATOS Y OPERACIONES BSICAS.
1. IDENTIFICADOR. Un identificador es una serie de caracteres formados por letras, dgitos y
el carcter subrayado ( _ ) que no inicie con dgito, asi mismo es el nombre que damos a todo lo que
manipulamos dentro de un programa (variables, constantes, funciones, etc). Por ejemplo variables,
constantes, funciones, tipos definidos por el usuario etc.
2. TIPOS DE DATOS. Todos los datos tienen un tipo asociado con ellos. Un dato puede ser un simple
carcter, tal como b, un valor entero tal como 35. El tipo de dato determina la naturaleza del conjunto
de valores que puede tomar una variable.

3. VARIABLES. Una variable es un identificador que puede tomar diferentes valores dependiendo del tipo
que esta se declare.
Una variable es un identificador que puede cambiar de valor durante la ejecucin de un programa.
Una variable es una posicin de memoria donde se puede almacenar una valor para uso de un programa.
5. INICIALIZACIN DE VARIABLES
Inicializar una variable es el darle un valor despus que se ha declarado pero antes de que se ejecuten
las sentencias en las que se emplea.
6. CONSTANTES. Constantes son los valores que no pueden ser modificados. En C, pueden ser de
cualquier tipo de datos.
Adems de los ejemplificados anteriormente, Podemos crear constantes de caracteres con barra
invertida. Estos corresponden a los caracteres que son imposibles introducir desde el teclado.
7. OPERADORES
Un operador es un smbolo que indica al compilador que realice manipulaciones lgicas
o matemticas especficas.
Los operadores del mismo nivel de precedencia son evaluados por el compilador de izquierda a derecha.
Por supuesto, se puede utilizar parntesis para ordenar la evaluacin.
Tambin, conviene utilizar parntesis para hacer ms claro el orden en que se producen las evaluaciones,
tanto para la persona que lo elabora o para los que despus tengan que seguir el programa.
Operadores Lgicos:
Estos operadores se utilizan para establecer relaciones entre valores lgicos.
Estos valores pueden ser resultado de una expresin relacional.
Operadores Lgicos
And Y
Or O
Not Negacin
Prioridad de los Operadores Lgicos
Not
And
Or

Operadores de Asignacin. Los operadores de asignacin se utilizan para formar expresiones de


asignacin, en las que se asigna el valor de una expresin a un identificador. ***** Por definir el operador
de asignacin** .
Cada expresin toma un valor que se determina tomando los valores de las variables y constantes
implicadas y la ejecucin de las operaciones indicadas.
Una expresin consta de operadores y operandos. Segn sea el tipo de datos que manipulan, se
clasifican las expresiones en:

Aritmticas

Relacinales

Lgicas
9. PALABRAS RESERVADAS.
Son palabras que tienen un significado especial para el lenguaje y no se pueden utilizar como
identificadores.
10. COMENTARIOS.
Los comentarios pueden aparecer en cualquier parte del programa, mientras estn situados entre los
delimitadores /* comentario */. Los comentarios son tiles para identificar los elementos principales de un
programa o para explicar la lgica subyacente de estos.
Un diagrama de flujo es la representacin grfica de un algoritmo. Tambin se puede decir que es la
representacin detallada en forma grfica de como deben realizarse los pasos en la computadora para
producir resultados.
Esta representacin grfica se da cuando varios smbolos (que indican diferentes procesos en la
computadora), se relacionan entre s mediante lneas que indican el orden en que se deben ejecutar los
procesos.
Los smbolos utilizados han sido normalizados por el instituto norteamericano de normalizacin (ANSI).

Recomendaciones para el diseo de Diagramas de Flujo.

Un diagrama de flujo es la representacin grfica de un algoritmo. Tambin se puede decir que es la


representacin detallada en forma grfica de como deben realizarse los pasos en la computadora para
producir resultados.
Esta representacin grfica se da cuando varios smbolos (que indican diferentes procesos en la
computadora), se relacionan entre si mediante lneas que indican el orden en que se deben ejecutar los
procesos.
Los smbolos utilizados han sido normalizados por el instituto norteamericano de normalizacin (ANSI).

Todo diagrama debe tener un inicio y un fin.

Se deben se usar solamente lneas de flujo horizontales y/o verticales.

Se debe evitar el cruce de lneas utilizando los conectores.

Se deben usar conectores solo cuando sea necesario.

No deben quedar lneas de flujo son conectar.

Se deben trazar los smbolos de manera que se puedan leer de arriba hacia abajo y de izquierda
a derecha.

Todo texto escrito dentro de un smbolo deber ser escrito claramente, evitando el uso de
muchas palabras.

Evitar la terminologa de un lenguaje de programacin o maquina.

Utilizar comentarios ya sea al margen o mediante el smbolo grafico comentarios para que este
sea entendible por cualquier persona que lo consulte.

Si el diagrama abarca mas de una hoja es conveniente enumerarlo e identificar de donde viene y
a donde se dirige.
2. Pseudocdigo

Mezcla de lenguaje de programacin y espaol (o ingles o cualquier otro idioma) que se emplea, dentro
de la programacin estructurada, para realizar el diseo de un programa. En esencial, el pseudocdigo se
puede definir como un lenguaje de especificaciones de algoritmos.
Es la representacin narrativa de los pasos que debe seguir un algoritmo para dar solucin a un problema
determinado. El pseudocdigo utiliza palabras que indican el proceso a realizar.
El pseudocdigo se concibi para superar las dos principales desventajas del Diagrama de Flujo: el
diagrama de flujo es lento de crear y difcil de modificar sin un nuevo redibujo. Por otra parte el
pseudocdigo es mas fcil de utilizar ya que es similar al lenguaje natural.
Al contrario de los lenguajes de programacin de alto nivel como Pascal o Basic no existe un conjunto de
reglas que definan con precisin lo que es y lo que no es pseudocdigo. Varia de un programador a otro.
El pseudocdigo requiere de ciertos smbolos que ya tienen significado preciso y establecido a los que se
les conoce como palabras clave. Es necesario que exista una palabra clave para la seleccin y otra para
la iteracin condicional, as como para las instrucciones adicionales y otras estructuras de control.
Programacin estructurada
Mtodo disciplinado de escribir programas que sean claros, que se demuestren que son correctos y
fciles de modificar
Un programa se compone de:
a.
b.

Estructuras de datos.- Los hechos reales, representacin en forma de datos, manera en que se
organizan los datos.

c.

Operaciones primitivas elementales.- Son acciones que se ejecutan sobre los datos para
transformarlos en informacin.

d.

Estructuras de control.- Son los mtodos que existen para dirigir el flujo de acciones que la
computadora deber ejecutar sobre los datos manejados por el programa.

Estructura de control secuencial


La computadora ejecutar automticamente enunciados uno despus del otro, en el orden en el cual se
han escrito de inicio a fin.

Ejemplo Sumar dos nmeros:


Pseudocdigo
Inicio
Entero a,b,c declara las variables a utilizar
Leer a,b solicita el valor de a y b
c= a+b suma a y b y lo almacena en c
Imprimir c muestra el resultado almacenado en la variable c
fin
Diagrama de flujo

ESTRUCTURA DE CONTROL SELECTIVA


Existen tres tipos de estructuras de control selectivas, estas se basan en una condicin o en una opcin
para decidir la parte del programa por el que pasar.
a.
b.

Simple b)Doble o compuesta c)Mltiple

Selectiva simple.- evala una condicin, si esta es verdadera ejecuta la accin o acciones especificadas,
si es falsa no realiza ninguna accin.

Nota: Si existe sola una instruccin o sentencia dentro de la condicin no es necesario marcarlos con
inicio y fin, en caso contrario si, como se muestra en el diagrama anterior.
Selectiva doble o compuesta.- evala una condicin, si esta es verdadera ejecuta la accin o acciones
especificadas, si es falsa ejecuta otra accin o acciones.

Nota: Si existe sola una instruccin o sentencia dentro de la condicin no es necesario marcarlos con
inicio y fin como en este caso que la condicin fue falsa, en caso contrario si, en este ejemplo cuando la
condicin fue verdadera.
Ejemplo: Imprimir si un nmero es positivo o negativo

Nota: las variables no se especifican en el diagrama de flujo, pero si en el pseudocdigo .

BIBLIOGRAFA

D Appleby, y J.J. VandeKopple, Lenguajes de programacin: paradigma y prctica, McGraw-Hill


Interamericana, 1998

T.W. Pratt y M.V. Zelkowitz, Lenguajes de programacin: diseo e implementacin, Prentice-Hall


Hispanoamericana, 3 ed., 1998

R. Sethi, Lenguajes de programacin: conceptos y constructores, Addison-Wesley


Iberoamericana, 1992

Leer ms: http://www.monografias.com/trabajos38/programacion/programacion2.shtml#ixzz2xSYZwKmJ

Presentacin

Programacin
Prcticas

Control

En esta seccin presentamos algunos


ejemplos
sencillos
y
resueltos
de
programacin de autmatas as como una
serie de automatismos sin resolver para que
puedas crear tus propios programas. Todos
los ejemplos tienen la misma disposicin:
Definicin de las entradas, salidas y
estados del sistema
Realizacin del GRAFCET del sistema
Realizacin del DIAGRAMA
RELES o ESQUEMA DE CONTACTOS

DE

Los ejemplos que te presentamos estn


dispuestos de menor a mayor complejidad y
deben ser suficientes para poder resolver los
ejemplos sin resolver.
En el apartado de prcticas podrs
comprobar y ejecutar los programas que
realices.
Ejemplo 1: Sistema que realiza dos
acciones
Ejemplo 2: Automatizacin de una
puerta de garaje

Ejemplo
puente-gra

3: Automatizacin

de

un

Qu es programacin modular?
Los procedimientos (parmetros)
Variables globales y locales
Un ejemplo sobre los
procedimientos
Las funciones predefinidas
Las funciones de usuario
Un ejemplo con las funciones

Qu es programacin modular?
Uno de los mtodos ms conocidos para resolver un problema
es dividirlo en problemas ms pequeos, llamados
subproblemas. De esta manera, en lugar de resolver una
tarea compleja y tediosa, resolvemos otras ms sencillas y a
partir de ellas llegamos a la solucin. Esta tcnica se usa
mucho en programacin ya que programar no es ms que
resolver problemas, y se le suele llamar diseo descendente,
metodologa del divide y vencers o programacin top-down.
Es evidente que si esta metodologa nos lleva a tratar
con subproblemas, entonces tambin tengamos la
necesidad de poder crear y trabajar con subprogramaspara
resolverlos. A estos subprogramas se les suele
llamar mdulos, de ah viene el nombre de programacin
modular. En Pascal disponemos de dos tipos de mdulos:
los procedimientos y las funciones.
Veamos un ejemplo de cmo emplear el diseo descendente
para resolver un problema. Supongamos que un profesor
quiere crear un programa para gestionar lasnotas de sus
alumnos. Quiere que dicho programa le permita realizar
tareas tales como asignar notas, cambiar notas, ver las notas
segn distintas calificaciones, etc. A continuacin tines un
esquema que representa una de las posibles divisiones del
problema en mdulos.

Volveraliniciodelapgina
Pasaralsiguienteapartadosobrelosprocedimientos

Los procedimientos
Un procedimiento es un subprograma que realiza una tarea
especfica. Para invocarlo, es decir, para hacer que se
ejecute, basta con escribir su nombre en el cuerpo de otro
procedimiento o en el programa principal. Pero, hay que tener
muy en cuenta que su declaracin debe hacerse antes de que
sea llamado por otro mdulo.

Una vez que has construido varios programillas en Pascal,


crear un procedimiento no es nada complicado, pues tiene
prcticamente la misma estructura que un programa. Veamos
las secciones que comparten y no comparten un
procedimiento y un programa principal:
Mientras que en el programa la cabecera consta de la
palabra reservada program seguida del nombre del
programa, en un procedimiento se compone de la
palabra procedure seguida del nombre del
procedimiento y una lista de parmetros que es
opcional.
Las secciones de declaracin de constantes (const), de
tipos (type) y de variables (var) tambin pueden
aparecer en la estructura de cualquier procedimiento.
Respecto al cuerpo del procedimiento, decir que al
igual que el de un programa se delimita por las palabras
reservadas begin y end, y en su interior puede contener
sentencias simples o estructuradas.
Por ltimo, comentar que ambos difieren en el signo de
puntuacin que marca su final, ya que en un programa
es el punto y en un procedimiento es el punto y coma.
Todas estas diferencias y similitudes que hemos comentado,
puedes apreciarlas en los siguientes esquemas que
representan las estructuras de un programa y de un
procedimiento:
program
nombre_programa;

const declarar_ctes;
type declarar_tipos;
var declarar_vars;

procedure

nombre

(lista_parametros);
const declarar_ctes;
type declarar_tipos;
var declarar_vars;

(*aqu iran los

subprogramas*)
begin
cuerpo_programa

end

(*aqu iran los

subprogramas*)
begin
cuerpo_procedimiento

end

Los parmetros (argumentos)


Como habrs observado, con los procedimientos nos llega un
concepto nuevo, el de los parmetros. A los parmetros
tambin se les conoce como argumentos y tienen la misin de
comunicar al procedimiento con el programa que lo llama. Por
ejemplo, si quieres hacer un subprograma que multimplique
dos nmeros, lo ms cmodo es que al llamar al
procedimiento le pases los valores que participarn en la
operacin. Podra ser algo como:
procedure producto (a,b

: integer; var rdo :

integer)

;
(* resto del procedimiento *)

En el ejemplo anterior se observan las dos clases de


argumentos que existen en Pascal:
Los parmetros por valor
Los parmetros por referencia
Los parmetros por valor tiene dicho nombre porque lo que
recibe el subprograma no son ms que copias de los
valores de los datos que el programa invocador le pasa. Por
tanto si en el procedimiento modificamos alguno de estos
valores, los datos originales permaneceran inalterados. En
el ejemplo, son a y b.
En cambio, en los parmetros por referencia lo que se pasa al
procedimiento son los datos en s. Y si ste los modifica, los
cambios permanecern una vez que la ejecucin vuelva al
mdulo que invoc al procedimiento. Se utilizan para obtener
valores de los clculos que haga un subprograma, y en el
anterior ejemplo es rdo.
Cmo se especifica que un parmetro es por valor o por
referencia?

Pues es tan sencillo como anteponer la palabra


reservada var cuando quieres que un argumento sea
considerado como referencia. Esto se observa claramente
con el parmetro rdo del ejemplo.
nota: si no tienes muy clara la diferencia entre parmetros por
valor y por referencia, te aconsejo que vayas al ejemplo sobre
procedimientos del que dispones en este tema, estoy seguro
que te ayudar.

Volveraliniciodelapgina
Pasaralsiguienteapartadosobrevariablesglobalesylocales

Las variables globales y locales


Despues de estudiar los procedimientos de Pascal y las
diferencias entre parmetros por valor y por referencia, es
hora de tratar otro aspecto clave en la programacin
modular: la distincin entre variables globales y locales.
Veamos un ejemplo que, como siempre, nos ayudar en la
explicacin de estos nuevos conceptos:
program varsGlobalesLocales;

var

vGlobal : integer;

procedure nombreProc(param :
integer);
var

vLocal : integer;
begin
vLocal := 2 * param;
vGlobal := vLocal
end;
(*cuerpo principal del
programa*)
begin
vGlobal := 1;
nombreProc(4);
writeln('vGlobal vale :
',vGlobal)
end.

Una variable local es una variable que est declarada dentro


de un subprograma, y se dice que es local al subprograma. Y
lo que la caracteriza es que su valor slo est disponible
mientras se ejecuta el subprograma. Dicho de otra manera, el
programa principal no tiene conocimiento alguno de las
variables locales de susprocedimientos y funciones.
Las variables declaradas en la seccin correspondiente a esta
labor en el programa principal se denominan variables
globales. Y a diferencia de las locales, su valor est disponible
tanto en el cuerpo del programa principal como en el de
cualquiera de los subprogramas declarados.
En el ejemplo anterior se declara una variable local
llamada vLocal, y si se intentase usarla en el cuerpo del
programa principal, por ejemplo para asignarle un valor,
recibiramos un error del compilador. Tambin se declara una
variable global (vGlobal), cuyo valor se cambia en el cuerpo
del procedimiento, y este cambio permanece despus de
ejecutarlo, pues el resultado que se mostrara en pantalla
sera : vGlobalvale:8.
nota: aunque en el ejemplo se hace, no es una buena prctica
en programacin tratar con variables globales en los
subprogramas, porque pueden aparecer errores debidos a

algn cambio no previsto en una de estas variables. Este tipo


de errores son conocidos como efectos laterales y se evitan
usando los parmetros en la comunicacin de un programa
con sus procedimientos.

Volveraliniciodelapgina
Pasaralsiguienteejemplosobrelosprocedimientos

Un ejemplo con los procedimientos


Despus de hablar de procedimientos, parmetros por valor y
por referencia y variables globales y locales, es la hora de
presentarte un ejemplo con el que puedas reforzar lo que
hemos visto. Con l se pretende que queden absolutamente
claros estos conceptos porque son fundamentales en la
programacin.
En el ejemplo, tienes a la izquierda el cdigo de un programa
en el que hay un procedimiento. A la derecha, tienes tres
casillas en las que debes introducir numros enteros para
variables que participan en el programa. Despus de dar los
valores, deberas examinar el cdigo y determinar qu salida
crees que se producir. Por ltimo, pulsando el botn puedes
ver la salida real y compararla con la que tenas en mente.

Volveraliniciodelapgina
Pasaralsiguienteapartadosobrelasfuncionespredefinidas

Las funciones predefinidas


Este tema trata de la programacin modular, y como ya
hemos dicho, Pascal nos ofrece dos tipos de mdulos. Uno ya
lo hemos comentado, los procedimientos, y el otro, es el que
vamos a tratar ahora, las funciones.
La divisin a ms alto nivel que se suele hacer con las
funciones, es la que las divide segn quien sea el autor de
las mismas. As tenemos funciones predifinidas oestndar, y
funciones de usuario. Las de usuario las trataremos ms
adelante. Ahora nos centraremos en las predefinidas.
Las funciones predefinidas, tambin llamadas estndar, son las que el
propio lenguaje Pascal pone a disposicin del programador. Por ejemplo, si

necesitas calcular el valor absoluto de un nmero, no es necesario que


construyas la funcin, pues ya se dispone de una que lo hace.
Dependiendo del tipo de compilador de Pascal que uses,
dispondrs de ms o menos funciones estndar, pero siempre
tendrs un grupo bsico que comparten todos. A continuacin
se citan unas cuantas funciones de las bsicas:
sin(x:real) seno de x

cos(x:real) coseno de x

sqr(x:real) cuadrado de x

sqrt(x:real)

raz cuadrada
de x

ln(x:real)

logaritmo
neperiano de x

abs(x:real)

valor absoluto
de x

int(x:real)

parte entera de x frac(x:real)

parte decimal
de x

pred(x:tipo
predecesor de x
ordinal)

succ(x:tipo
sucesor de x
ordinal)

pi (*no
args.*)

odd(x:integ
si x es o no impar
er)

valor de la
constante pi

Volveraliniciodelapgina
Pasaralsiguienteapartadosobrefuncionesdeusuario

Funciones definidas por el usuario


Las funciones de usuario son, como su nombre indica, las que
el propio usuario declara, de igual manera que declara
procedimientos. Las funciones nacen con el propsito de ser
subprogramas que siempre tienen que devolver algn valor.
Las dos principales diferencias entre procedimientos y
funciones son:
Las funciones siempre devuelven un valor al programa
que las invoc.
Para llamar a un procedimiento se escribe su nombre en
el cuerpo del programa, y si los necesita, se incluyen los
parmetros entre parntesis. Para invocar una funcin es
necesario hacerlo en una expresin.
Veamos el esqueleto bsico que comparten las funciones:
function nombre [(p1,p2,...)]
tipo;
const lista_ctes;
type lista_tipos;
var lista_vars;

(*declaracion de subprogramas*)

begin
(* cuerpo de la funcin *)

nombre:=valor_devuelto
end;
Comentemos la sintaxis de una funcin que aparece en el
cuadro anterior:
La lista de parmetros (p1,p2,...) est encerrada entre
corchetes porque es opcional como en los
procedimientos.
tipo es el tipo del dato que devolver la funcin. As
podemos dividir las funciones en lgicas (boolean),
enteras (integer), reales (real) y de carcter (char)

Y al final del cuerpo de la funcin


es obligatorio asignarle un valor del tipo devuelto al
nombre de la funcin, porque como ya hemos dicho una
funcin siempre devuelve un valor.
Ahora es el momento de que vayas a un
divertido ejemplo sobre las funciones disponible en este tema.
Aunque ms que ejemplo, se le podra llamar juego, ya que en
l tienes la posibilidad de construir varias funciones pudiendo
comprobar si son o no correctas.

Volveraliniciodelapgina
Pasaralsiguienteejemplosobrelasfunciones

Un ejemplo sobre las funciones


A continuacin tienes un ejemplo para que refuerces lo
aprendido en el punto anterior sobre las funciones. El ejemplo
es como un pequeo juego con el que se pretende construir
una funcin. Para ello, puedes seleccionar lo que quieres que
haga la funcin y las instrucciones que la forman.
En la izquierda, adems de poder seleccionar el objetivo,
tienes un cuadro que contiene las instrucciones disponibles.

En la parte derecha tienes tres selectores para marcar que


instrucciones quieres utilizar, y tambin tienes un cuadro para
comprobar si la funcin es o no correcta. Suerte!!
nota: para que un programa sea considerado
como correcto no basta con que funcione, sino que tambin
es necesario que no contenga instrucciones que no aporten
nada.

You might also like