Beruflich Dokumente
Kultur Dokumente
USUARIO 2
INTRODUCCIN Y CONCEPTOS BSICOS
INTRODUCCIN
Para que esta automatizacin resulte un trabajo eficaz y eficiente debemos analizar
mucho el origen del problema, saber hacia dnde est enfocado y poder seleccionar el
estilo de programacin y el lenguaje ms adecuado.
CONCEPTOS BSICOS
Informtica:
La informtica es la ciencia que estudia el procesamiento automtico de la
informacin a travs de mtodos, tcnicas, procesos para solucionar un problema o
una necesidad. Definiendo finalmente como una rama de la tecnologa que estudia el
tratamiento automtico de la informacin.
Aunque la necesidad de razonar sobre este tipo de procesos existe desde tiempo atrs,
la consolidacin de la informtica como ciencia slo se produce con el desarrollo de los
USUARIO 3
computadores, a partir de los aos cuarenta. Se trata, por lo tanto, de una ciencia muy
joven, pero que ha evolucionado a gran velocidad.
Lenguajes de programacin.
Las computadoras para solucionar y apoyar en el trabajo de las personas realizan
procesos los cuales son escritos en un lenguaje formal diseado para el efecto, a este
lenguaje se le conoce como lenguaje de programacin.
A todo el proceso por el cual pasa el planteamiento de una solucin hasta llegar a su
completo funcionamiento dentro del computador se le llama programacin (es decir
es la creacin de un programa de computadora).
Es necesaria la aplicacin de procedimientos lgicos, a travs de los siguientes pasos:
El desarrollo lgico del programa para resolver un problema en particular.
Escritura de la lgica del programa empleando un lenguaje de programacin
especfico (codificacin del programa).
Ensamblaje o compilacin del programa hasta convertirlo en lenguaje de
mquina.
Prueba y depuracin del programa.
Desarrollo de la documentacin.
USUARIO 4
RPG (1959)
APL, Simula, Snobol (1962)
Pascal, C, SQL (dcada del 70)
USUARIO 5
Lenguajes ensambladores o de bajo nivel
Una de las grandes ventajas de estos lenguajes radica en que la traduccin del
programa escrito en lenguaje de alto nivel (programa fuente) al lenguaje de mquina
(programa objeto) que, como recordamos, es el nico que puede ser ejecutado por el
computador, es automtica y se realiza por un programa traductor.
USUARIO 6
Para ello, junto con las especificaciones del lenguaje, reglas de sintaxis y semntica, se
desarrollan los necesarios programas de traduccin. Durante el proceso de traduccin
se suelen detectar errores, debidos al incumplimiento de las reglas sintcticas del
lenguaje que deben corregirse antes de poder ejecutar el programa. Si durante la
ejecucin de un programa se realizan operaciones no permitidas (tales como divisiones
por cero, accesos fuera de lmites, etc.) se producen los llamados errores de ejecucin.
Aunque un programa se haya traducido eliminando todos los errores sintcticos y de
ejecucin, an puede no realizar
correctamente la tarea para la que
fue creado, por contener errores
lgicos. Por lo tanto es necesario
comprobar el funcionamiento del
programa utilizando datos de
prueba que permitan realizar los
clculos a mano y comprobar as las
partes ms conflictivas del
programa. Este proceso se conoce
como depuracin de los programas.
Programacin:
Como decamos al principio, consideramos al computador como una herramienta que
nos ayuda en la resolucin de problemas; para ello es preciso conocer previamente un
algoritmo (pasos) que lleve a su solucin. Partiendo de esos conceptos conocidos se
dice que:
Estilos de programacin.
Los estilos de programacin hacen referencia a las reglas con las que se da forma al
cdigo que se escribe para crear los programas. A travs de la historia se han
USUARIO 7
desarrollado varios estilos basados en los lenguajes y en el enfoque que se da a los
programas. Revisaremos algunos de ellos:
Programacin estructurada
Los programas que utilizan slo estas tres instrucciones de control bsicas o sus
variantes (como los bucles for, repeat o la instruccin condicional switch-case), pero
no la instruccin goto (instruccin de lenguajes de programacin antiguos como el
FORTRAN, que rompa la estructura del programa hacindole muy difcil su
entendimiento), se llaman estructurados
USUARIO 8
Ventajas de la programacin estructurada
Programacin modular
Cada uno de estos mdulos se analiza, codifica y pone a punto por separado. Cada
programa contiene un mdulo denominado programa principal (main) que controla
todo lo que sucede; se transfiere el control a submdulos (posteriormente se
denominarn subprogramas), de modo que ellos puedan ejecutar sus funciones; sin
embargo, cada submdulo devuelve el control al mdulo principal cuando se haya
completado su tarea. Si la tarea asignada a cada submdulo es demasiado compleja,
ste deber romperse en otros mdulos ms pequeos.
El proceso sucesivo de subdivisin de mdulos contina hasta que cada mdulo tenga
solamente una tarea especfica que ejecutar. Esta tarea puede ser entrada, salida,
manipulacin de datos, control de otros mdulos o alguna combinacin de estos. Un
mdulo puede transferir temporalmente (bifurcar) el control a otro mdulo; sin
embargo, cada mdulo debe eventualmente devolver el control al mdulo del cual se
recibe originalmente el control.
Los mdulos son independientes en el sentido en que ningn mdulo puede tener
acceso directo a cualquier otro mdulo excepto el mdulo al que llama y sus propios
submdulos. Sin embargo, los resultados producidos por un mdulo pueden ser
utilizados por cualquier otro mdulo cuando se transfiera a ellos el control.
USUARIO 9
RAIZ
Mdulo Mdulo
21 22
Mdulo Mdulo
221 222
Dado que los mdulos son independientes, diferentes programadores pueden trabajar
simultneamente en diferentes partes del mismo programa. Esto reducir el tiempo
del diseo del algoritmo y posterior codificacin del programa. Adems un mdulo se
puede modificar radicalmente sin afectar a otros mdulos, incluso sin alterar su
funcin principal.
Objeto: es una unidad que contiene datos y las funciones que operan sobre
esos datos.
USUARIO 10
Atributo: contenedor de un tipo de datos asociados a un objeto (o a una clase
de objetos).
Herencia: La herencia es la propiedad que permite a los objetos construirse a
partir de otros objetos.
Clase: Es una coleccin de objetos similares y un objeto es una instancia de una
definicin de una clase.
Operadores:
Toda expresin est compuesta por operadores y operando.
Un operador es un smbolo o palabra que indica que accin se ha debe realizar entre
uno o dos valores llamados operandos.
Operando 1 OPERADOR
OPERADOR Operando 1
Tipos de operadores
En las expresiones podemos encontrar cuatro tipos de operadores que se para crear
expresiones aritmticas o lgicas o relacionales. Estos operadores son:
Asociativos
USUARIO 11
Aritmticos
Relacionales
Lgicos
Operadores Asociativos:
Cuando una expresin se encuentra entre parntesis, indica que las operaciones que
estn dentro de ellos deben realizarse primero. Si en una expresin se utilizan ms de
un parntesis se deber proceder primero con los que se encuentren ms hacia el
centro de la expresin.
Operadores Aritmticos:
OPERADOR OPERACIN
^ Potenciacin
*,/ Multiplicacin, Divisin
+, - Suma, Resta
Para resolver una expresin aritmtica se deben seguir las siguientes reglas:
USUARIO 12
Despus de haber terminado todos los parntesis, se
procede con lo dems, respetando la jerarqua de
operadores, por lo cual, en este caso, se sigue con la
multiplicacin y divisin, pues la potenciacin no se 15 - 5 / 2 + 1
encuentra en esta expresin. Pero como la multiplicacin y
la divisin tienen la misma jerarqua, se realizar primero 15 - 2.5 + 1
la multiplicacin 5 * 3, que es la que est ms a la izquierda
y luego se realiza la divisin 5 / 2. Resultado as:
A continuacin se procede con la resta y la suma que tienen 12.5 + 1
la misma jerarqua, se realiza de izquierda a derecha.
Dando como resultado final: 13.5
Operadores Relacionales:
Son smbolos que se usan para comparar dos valores, sean numricos o alfanumricos.
El resultado obtenido es un valor de verdad, que puede ser V (verdadero) o F (falso)
segn sea correcta o incorrecta la comparacin. La comparacin entre un dato
numrico y uno alfanumrico no puede llevarse a cabo.
Por ejemplo, 8>4 (ocho mayor que cuatro) es verdadera, se representa por el
valor true del tipo bsico boolean, en cambio, 8<4 (ocho menor que cuatro) es
falsa, false.
Operadores Lgicos:
USUARIO 13
Son operadores que permiten realizar las operaciones lgicas de conjuncin,
disyuncin, y negacin. El resultado obtenido es un valor de verdad que puede ser V
(verdadero) o F (falso). Los operadores lgicos se muestran a continuacin, indicando
la jerarqua de mayor a menor:
A NOT (~ A)
V F
F V
En la conjuncin (AND) se necesitan dos (todos) los valores verdaderos para producir
otro valor verdadero; en cualquier otro caso se produce un valor de falso.
A B A ^ B (A AND B)
V V V
V F F
F V F
F F F
En la disyuncin (OR), basta que un operando sea verdadero para obtener un resultado
de verdadero; en caso contrario el valor ser falso.
A B A V B (A OR B)
V V V
V F V
F V V
F F F
Las reglas para resolver las expresiones lgicas son las siguientes:
Por ejemplo:
USUARIO 14
Se tiene la Expresin: (2 >= 3) (5 > 3 3 < 2)
(Se presentan dos formas de escribir la misma
expresin)
~ (2 >= 3) ^ (5 > 3 3 < 2)
Primero se resuelven los (2 >= 3) Se obtiene un resultado de F.
parntesis
(5 > 3 3 < 2) se resuelve por separado cada
expresin relacionada que est dentro del
parntesis:
(5>3) Da como resultado V.
(3<2) Resulta F.
Uniendo se obtiene (V OR F). Resolviendo este
parntesis tenemos V.
Tablas de Verdad
Para construir una tabla de verdad se hace una interpretacin de los signos lgicos
como los vimos anteriormente (negacin, conjuncin y disyuncin) La interpretacin
corresponde al sentido que estas operaciones tienen dentro del razonamiento.
USUARIO 15
Con los conectores lgicos revisados anteriormente podemos construir enunciados
compuestos ms elaborados que los llamamos proposiciones. El valor de verdad de
una proposicin depende de los valores de verdad de sus variables.
p q ~q p ^ ~q ~ ( p ^ ~q )
V V F F V
V F V V F
F V F F V
F F V F V
Las dos primeras columnas de la tabla de verdad son para las variables p y q (o ms
variables de ser el caso).
Se colocar las suficientes lneas para permitir todas las posibles combinaciones de V y
F para las variables. El nmero de lneas se calcula en base a la potencia de dos 2n,
donde n es el nmero de variables presentes. En el caso del ejemplo tenemos 2 2 = 4
lneas porque solo tenemos 2 variables (p, q). Para el caso de 3 variables tendremos 23
= 8 lneas
Tendremos una columna para cada etapa elemental de la construccin del enunciado,
y se va trabajando paso a paso de acuerdo a los conectores presentados.
RESOLUCIN DE PROBLEMAS
Mtodo de Plya
Para nuestro estudio de resolucin de problemas emplearemos el mtodo Plya
desarrollado por el hngaro George Plya quien generaliz su mtodo en cuatro pasos
principales:
USUARIO 16
1. Entender el problema.
2. Configurar un plan
3. Ejecutar el plan
4. Mirar hacia atrs
USUARIO 17
Concdete un tiempo razonable para resolver el problema. Si no tienes xito
solicita una sugerencia o haz el problema a un lado por un momento (puede
que "se te prenda el foco" cuando menos lo esperes!).
No tengas miedo de volver a empezar. Suele suceder que un comienzo fresco o
una nueva estrategia conducen al xito.
USUARIO 18
ACTIVIDADES UNIDAD I
ACTIVIDAD 1:
1. Investigar sobre los tipos de software y realizar un mapa conceptual incluyendo
ejemplos de cada uno.
Horizontal: Vertical:
2 Operador lgico Tecnologa que estudia el tratamiento
1
Operadores que se usan para comparar automtico de la informacin
4 dos valores, sean numricos o 3 Elemento de la POO
alfanumricos 5 Tipo de operadores
Tipo de lenguaje de programacin que Accin de expresar el algoritmo en un
7
se utiliza actualmente lenguaje de programacin, que pueda
6
En letras la respuesta de la expresin: ser comprendido y ejecutado por el
9
(2 * 3 - 2 ) ^ 2 4 * 8 / ( 2 ^ 3 / 4 ) = computador
Resultado de la expresin lgica: Estilo de programacin en que las
10
( (3 < 2 ) OR ( 5 > 3 ) ) 8 instrucciones se ejecuten
sucesivamente una tras otra
USUARIO 19
ACTIVIDAD 2:
PROBLEMAS PROPUESTOS DE OPERADORES ARITMETICOS
1. 4+1*5^2-1
2. 9/3+4^2-5*1+9/-2+3
3. 5/2+3-4*5/2
4. (4+1)*5^2-1
5. 17/2+3^2^2-2*2/2
ACTIVIDAD 3:
PROBLEMAS PROPUESTOS DE OPERADORES RELACIONALES Y LOGICOS
ACTIVIDAD 4:
1.- Resolver los siguientes ejercicios aritmticos.
(2*3-2)2 4*8/2(23/4)
3+5*(10-(2+4))
2.1*(1.5+3.0*4.1)
2.- Resolver los siguientes ejercicios lgicos, tomar en cuenta estos valores: a= 10, b=
20, c= 30.
(a < b) AND(b < c)
((a > b)OR(a < c))AND((a = c)OR(a >= b))
NOT (a = c) AND (c > b)
3.- Llenar el cuadro con los valores faltantes.
USUARIO 20
ACTIVIDAD 5:
Operadores y Mtodo Plya
p q
V V
V F
F V
F F
b. ( p q ) ~ ( p v q )
c. ~[ p v ( ~ p v ~q )]
d. [(p v ~q) q]
e. [~p(q v r)]
f. [(p v r) q]
2. Resuelva la siguiente sopa de letras. Debe encontrar pasos del mtodo Plya
y los tipos de operadores.
USUARIO 21
Cul es el paso del Mtodo Plya que est faltando en la sopa de letras?
________________________________________________________________
USUARIO 22