Vous êtes sur la page 1sur 66

Instituto tecnolgico de cerro azul

Carrera
Ingeniera Industrial
Catedrtico
Ing. Oscar Alberto Garizurrieta Castillo
Nombre de la asignatura
Algoritmos y Lenguajes de Programacin
Clave de la asignatura
INC-1005
Grupo: AC43
Horario:
Lunes y mircoles (13:00-15:00 P.M)
Integrantes del equipo:
Nmero de control:
Garca Domnguez Francisco
13500205
Hernndez Hernndez Luis David 13500090
Hernndez Hernndez No
13500093
Iglesias Daz Juan Antonio
13500107
Miguel Cruz Mauricio
13500211
Periodo Escolar: Enero- Junio (2015)

Fecha de entrega: 06 de mayo del 2015

UNIDAD 3
INTRODUCCIN A LA
PROGRAMACIN.

Definicin de programa
Un programa es un conjunto de instrucciones

u rdenes basadas en un lenguaje de


programacin que una computadora
interpreta para resolver un problema o una
funcin especfica.
1.- Es la relacin ordenada de actividades, en
informtica se le conoce como la serie
codificada de instrucciones.
2. Redaccin de un algoritmo en un lenguaje
de programacin.

Definicin de programacin
Se llamaProgramacina la implementacin

de un algoritmo en un determinado lenguaje


de programacin, para realizar un programa.
Algoritmoes una secuencia no ambigua, finita
y ordenada de instrucciones que han de
seguirse para resolver un problema.
Programa(Software en ingls) es una
secuencia de instrucciones que una
computadora puede interpretar y ejecutar.

Definicin de lenguaje de
programacin
Lenguaje de programacines el idioma

utilizado para controlar el comportamiento de


una mquina, particularmente una
computadora. Consiste en un conjunto de
smbolos y reglas sintcticas y semnticas que
definen su estructura y el significado de sus
elementos y expresiones.

Tipos de lenguajes de
programacin
Los lenguajes de programacin se clasifican

en varios tipos, los hay por nivel, y por la


forma como se ejecutan.
Por nivel:Hay lenguajes de programacin de

alto nivel y lenguajes de bajo nivel. Los


lenguajes de alto nivel permiten que con
pocas palabras se logre hacer lo mismo que
se logra con un lenguaje de bajo nivel.

Por la forma como se ejecutanHay

lenguajes compilados e interpretados

Los lenguajes compilados necesitan de un

programa especial que lea el cdigo fuente y


cree un archivo binario ejecutable para una
plataforma especfica. Ejemplo: C++, Pascal.

Los lenguajes interpretados necesitan de un

programa que traduzca en directo el cdigo


fuente escrito a instrucciones de la plataforma
en la que se ejecutan. Ejemplo: Python, Visual
Basic Script.

Los principales tipos de lenguajes utilizados en la actualidad


son tres:

Lenguajes mquina
Se llama lenguaje mquina a las instrucciones

que se dan directamente a la computadora,


utilizando una serie de dgitos binarios o bits,
representados por los nmeros 0 y 1 que
especifican una operacin. Aunque este
lenguaje es el que entiende la computadora,
es muy difcil de manejar en la comunicacin
humana.

Lenguajes de bajo nivel


(ensamblador)
Los lenguajes de bajo nivel son ms fciles de

utilizar que los lenguajes mquina, pero, al


igual que ellos, dependen de la mquina en
particular. El lenguaje de bajo nivel por
excelencia es el ensamblador (assembler
lenguaje). Las instrucciones en lenguaje
ensamblador son conocidas como
mnemotcnicos.
Por ejemplo, mnemotcnicos tpicos de
operaciones aritmticas son:
en ingles, ADD, SUB, DIV, etc.

Lenguajes de alto nivel


Los lenguajes de alto nivel son los mas

utilizados por los programadores. Estn


diseados para que las personas escriban y
entiendan los programas de un modo mucho
ms fcil que los lenguajes mquina y
ensambladores. Otra razn es que un
programa escrito en un lenguaje de alto nivel
es independiente de la mquina; esto es, las
instrucciones del programa de la computadora
no dependen del diseo del hardware o de
una computadora en particular.

3.2 Estructura bsica


de un programa.

Un programa tiene una estructura


bsica o general como una plantilla
para realizar un programa

Entrada de Datos:
La constituyen todas las instrucciones que

toman los datos de entrada desde un


dispositivo externo y los almacena en la
memoria principal para que puedan ser
procesados.

Proceso o algoritmo:
Est formado por las instrucciones que

modifican los objetos a partir de su estado


inicial (datos de entrada) hasta el estado final
(resultados) dejando los objetos que lo
contiene disponibles en la memoria principal.

Salida de resultados:
Conjunto de

instrucciones que
toman los datos
finales (resultado)
de la memoria
principal y los
envan a los
dispositivos
externos.

3.3 Tipos de datos

El tipo de un dato es el conjunto de valores

que puede tomar durante el programa. Si se


le intenta dar un valor fuera del conjunto se
producir unerror.
La asignacin de tipos a los datos tienedos
objetivosprincipales:
Por un lado, detectar errores en las
operaciones
Por el otro, determinar cmo ejecutar estas
operaciones

Clasificaciones en los tipos de


datos
EnPascalexisten gran variedad y cantidad de

tipos de datos. Pero en este tutorial slo se


trataran losbsicospara que puedas ir
construyendo tus primeros programas.
Existen muchas clasificaciones para los tipos

de datos, y dependiendo de la fuente que


mires, te mostrarn una u otra. A continuacn
tienes una de las posibles clasificaciones.:

Dinmicos
Estticos
Ordinales

No-ordinale
s

El tipo cade
na
Simples

Estructurad
os

3.4 Identificadores.

Un identificador es un conjunto de caracteres

alfanumricos de cualquier longitud que sirve


para identificar las entidades del programa
(clases, funciones, variables, tipos
compuestos) Los identificadores pueden ser
combinaciones de letras y nmeros. Cada
lenguaje tiene sus propias reglas que definen
como pueden estar construidos.

Palabras clave

Literales
Una literal es un valor constante formado por

una secuencia de caracteres. Cualquier


declaracin en Java que defina un valor
constante -un valor que no pueda ser
cambiado durante la ejecucin del programaes una literal.

Son ejemplos de literales los nmeros, los

caracteres y las cadenas de caracteres.


Literales numricas

Se pueden crear literales numricas a partir


de cualquier tipo de dato primitivo.
Ej.
123
//literal int
123.456
//literal double
123L
//literal long
123.456F //literal float

Literales booleanas

Las literales boolenas consisten de las


palabras reservadastrueyfalse.
Literales de caracteres

Las literales de caracteres se expresan por un


solo caracter entre comillas sencillas
Ej.
'a', '%', '7'

Expresiones y Operadores

Expresin
Una expresin es una combinacin de

variables, operadores y llamadas de mtodos


construida de acuerdo a la sintaxis del
lenguaje que devuelve un valor.

Operadores
Los operadores son smbolos especiales que

por lo comn se utilizan en expresiones.

3.5 Almacenamiento, direccionamiento y


representacin en memoria.

Almacenamiento
La computadora posee determinada cantidad

de almacenamiento interno denominado


memoria principal, memoria RAM o memoria
voltil. Esta memoria se activa al encender la
computadora y se desactiva al apagarla. Para
que un programa se ejecute, debe cargarse
en la memoria principal, as como los datos
necesarios.

Direccionamiento
La memoria principal de la computadora se divide en

pequeas unidades de tamao uniforme denominadas


palabras, que tienen una direccin nica.
Cada una de stas palabras es capaz de almacenar
una unidad de informacin (como, por ejemplo,
resultados numricos), y determina el nmero ms
grande y el ms pequeo que puede almacenar.
Las direcciones de memoria sirven para identificar

cada palabra individualmente, de tal manera que


pueda accederse al dato contenido en ella.

DIRECCIONAMIENTO
LGICO
El sistema de numeracin utilizado por los

informticos para representar las direcciones


de memoria en el texto escrito no suele ser la
decimal (como parecera razonable), sino el
hexadecimal
La razn es que los nmeros hexadecimales

guardan cierta concordancia con las potencias


de 2. Por ejemplo, un bus de direcciones de 8
bits puede acceder a 256 posiciones (en
hexadecimal es el rango 00-FFh).

DIRECCIONAMIENTO
SEGMENTADO
Hemos indicado que el bus de direcciones del

PC XT era de 20 bits, por lo que tericamente


podan manejarse un total de 220
posibilidades (1.048.576). Sin embargo, el
procesador 8088 utilizado tiene registros de
16 bits, por lo que solo puede contener
directamente 216 posiciones (65.536).

Representacin en
memoria
La representacin en memoria de los

caracteres no reviste mayor complicacin,


debido a que los cdigos utilizados, como el
ASCII (American Standard Code for
Information Interchange), les asignan valores
enteros positivos.
En el caso de los datos numricos hay que
considerar la distincin entre nmeros
negativos y positivos, y la que hay entre
nmeros de punto flotante y enteros.

3.6 Proposicin de asignacin.

Proposicin de asignacin es una letra o una

frase, a la cual, se le puede asignar dos valores:


o bien es verdadera, o bien es falsa, pero no
ambas cosas. La forma de una proposicin de
asignacin es :a=b, donde b es una expresin
permitida, y a es el valor donde se dejar el valor
resultante de evaluar b.
El signo igual, =, de a=b tiene el sentido de
asignar a la variable a el
Valor que resulte de evaluar la expresin
permitida b. Es decir, a=obtiene el sentido a b,
que no es la misma definicin usada en
matemticas para =.

Operadores lgicos
Los operadores lgicos son usualmente

usados con sentencias condicionales o


relacionales, los operadores bsicos lgicos
son: && Y lgico, || O lgico y ! Negacin.

3.7 Operadores, operandos y


expresiones.

Operadores:
Un operador es el smbolo que determina el

tipo de operacin o relacin que habr de


establecerse entre los operandos para
alcanzar un resultado, se clasifican en tres
grupos:
Los operadores son un tipo de tokens que
pueden aparecer en las expresiones, e indican
al compilador la realizacin de determinadas
operaciones matemticas, lgicas y
numricas.

Operadores aritmticos:

(Suma (+), sustraccin multiplicacin (*),


divisin (/) y exponente (^) Que se usan en una
hoja de clculo y el software de base de datos
para clculos.
Operadores lgicos:

Se usan para combinar expresiones relacionales


lgicamente en una hoja de clculo y en
software de base de datos (por ejemplo, AND,
OR).

Expresiones.
Una expresin es una combinacin de

operadores y operandos de cuya evaluacin


se obtiene un valor. Los operandos pueden ser
nombres que denoten objetos variables o
constantes, funciones, literales de cualquier
tipo adecuado de acuerdo con los operadores
u otras expresiones ms simples. La
evaluacin de una expresin da lugar a un
valor de algn tipo, una expresin se dice que
es del tipo de su resultado. Ejemplos de
expresiones:

a + 5*b

(a >= 0) and ((b+5) > 10)


a
-a * 2 + b
-b + sqrt(b**2 - 4*a*c)
length(s) > 0
Las expresiones se evalan de acuerdo con la

precedencia de los operadores. Ante una


secuencia de operadores de igual precedencia,
la evaluacin se realiza segn el orden de
escritura, de izquierda a derecha. El orden de
evaluacin puede modificarse usando
parntesis.

3.8 Prioridad de operadores,


evaluacin de expresiones.

Todas las expresiones entre parntesis se

evalan primero. Las expresiones con


parntesis anidados se evalan de dentro a
fuera, el parntesis ms interno se evala
primero.
Dentro de una misma expresin los
operadores se evalan en el siguiente orden:

1. ^ Exponenciacin
2. *, /, mod Multiplicacin, divisin, modulo.
3. +, - Suma y resta.

Operadores Relacionales
Se utilizan para establecer una relacin entre
dos valores. Luego compara estos valores entre
si y esta comparacin produce un resultado de
certeza o falsedad (verdadero o falso).
Los operadores relacionales comparan valores
del mismo tipo (numricos o cadenas). Estos
tienen el mismo nivel de prioridad en su
evaluacin.

Tipos de operadores Relacionales

>
<
>
<
<
=

Mayor que
Menor que
= Mayor o igual que
= Menor o igual que
> Diferente
Igual

Operadores Lgicos

Estos operadores se utilizan para establecer


relaciones entre valores lgicos. Estos valores
pueden ser resultado de una expresin
relacional.
Tipos de operadores Lgicos
And Y
Or O
Not Negacin

3.9 Elaboracin de programas.

Creacin de programas a la
medida:
Son los programas o software los que permiten a los

componentes fsicos y redes, procesar y distribuir


los datos y generar informacin. Ningn sistema de
informacin computarizado est completo sin el
software adecuado. Al desarrollar un sistema de
informacin, se precisan las necesidades y
requerimientos que se deben resolver. Se emplean
las seis fases del ciclo de desarrollo de sistemas. La
programacin forma parte de la fase 4, el desarrollo
de sistemas, en el cual se resuelven los
requerimientos mediante la programacin del
software.

Programas:
Un programa de cmputo o programa

informtico (software) es un conjunto o


secuencia de instrucciones (llamadas tambin
cdigo) que pueden ser interpretadas y
ejecutadas en el CPU de la computadora. Esta
secuencia de instrucciones se escribe en
alguno de los diversos lenguajes de
programacin que existen, como BASIC,
Pascal o C.

Caractersticas de un buen
programa:
A continuacin se enumeran algunas de las

caractersticas con que debera contar un


buen programa. Es recomendable tenerlas en
cuenta. A medida que contine leyendo el
tema podr darse cuenta del por qu de las
mismas.

Confiabilidad, es decir, el programa debe

funcionar en prcticamente cualquier situacin.


Debe advertir los errores de entrada comunes y
obvios.
Deben ser bien estructurados, es decir,
programas que utilicen organizaciones de la
programacin estructurada.
Estar adecuadamente documentado y ser
comprensible, no slo para quien lo crea, sino para
otros programadores. Esto es para facilitar las
futuras y muy posibles modificaciones que requiera.

Algoritmos:
Se denomina algoritmo a una serie finita de pasos o

instrucciones mediante los cuales se resuelve un


problema o se ejecuta una tarea especfica. Ms
formalmente los algoritmos se caracterizan por:
Ser finitos, porque tienen un nmero determinado de
pasos.
Ser definidos, lo que implica que cada vez que se
siga se obtendr invariablemente el mismo resultado.
Ser precisos, pues cada paso tiene un orden a
seguir.

Enfoques de Programacin:
En los inicios de la programacin y hasta

principios de los sesenta, no haba estructuras


bien definidas en la forma en que se escriba
el cdigo. Se dispona una lnea tras otra de
programacin construyendo un nico e
inmenso bloque, que constituira el programa.
Pero el control del flujo a travs de gran
cantidad de lneas de instrucciones, resultaba
difcil de seguir no slo por su tamao, sino
porque no siempre es posible programar
siguiendo la secuencia de una lnea tras otra.

Programacin estructurada:
La investigacin a travs del estudio de los

cdigos logr demostrar que cualquier


programa se poda escribir, usando las tres
estructuras siguientes de control:

1. La estructura

secuencial:Est definida
por el flujo de control
automtico de un
programa. De manera
natural, a menos que otra
cosa se indique, la
computadora ejecuta las
lneas de cdigo en el
orden en que fueron
escritas. El control del
programa fluye de la lnea
anterior a la lnea
siguiente.

2. Las estructuras de

seleccin:Se basan en una


declaracin condicional. Si
es verdadera, ciertas lneas
de cdigo son ejecutadas. Si
tal declaracin es falsa,
esas lneas no sern
ejecutadas. Las dos
estructuras de seleccin
ms comunes son: SiEntonces (If-Then) y SiEntonces-de lo contrario (IfThen-Else).

3. Las estructuras de

repeticin (o de ciclos):

Su construccin tambin

hace uso de declaraciones


condicionales. Si la condicin
evaluada es verdadera, un
bloque de una o ms
instrucciones se repetir,
hasta que la condicin sea
falsa. La computadora prueba
la condicin una primera vez,
si es verdadera, ejecuta el
bloque de comandos.

Programacin orientada a
objetos (POO):
Los entusiastas de la POO aseguran que, a

pesar de que sus conceptos bsicos puedan


parecer un tanto abstractos al principio, este
tipo de programacin se asemeja ms a la
manera natural de pensar y concebir el
mundo. Por esta razn, el proceso de
modelado es ms intuitivo, y se hace posible
crear y mantener programas de manera ms
sencilla y rpida.

Objetos:
En general cuando se observa o se piensa sobre un

objeto, por ejemplo un carro, siempre se le percibe


como un todo. No es comn enfocarse en sus
componentes de acero, vidrio o plstico, sino ms
bien, la mente lo percibe como unidad completa,
como un objeto, como un todo. Si se desea describir
el carro, se puede pensar en su color, tamao y
forma. Como todos los objetos, el carro posee
atributos que permiten describirle. Se puede pensar
adems en las cosas que el carro puede hacer,
como acelerar, retroceder, girar a derecha o
izquierda,

El carro tiene un conjunto

defuncionesque puede
realizar. Adems, es fcil notar
que el carro contiene
elementos que le constituyen:
Los cauchos, el chasis, el
sistema de traccin, y otros.
Pero esos elementos a su vez
estn formados por otros
elementos. Como es el caso
del motor y de las partes que
le forman. De manera muy
similar, en la POO se emplean
mdulos llamados objetos, que
poseen atributos y funciones.

Pasos de la

Programacin:Los
programas son los bloques
constitutivos del software del
sistema de informacin. Para
la elaboracin de programas,
se usa una adaptacin del
proceso del ciclo de vida de
desarrollo de sistemas. Los
pasos para la creacin de
programas son los siguientes
(ver tambin la Tabla 1
Resumen de los pasos de la
programacin):