1. Universidad Mariano Gálvez De Guatemala
Facultad De Humanidades
Sede Escuintla
Licenciatura En Educación Con Especialidad en Administración Educativa
Organización y métodos.-
Lic. Jorge Cruz
DIARIO DE CLASE
Nombre: Carné:
Marlis Xiomara González López 1371-06-13561
Escuintla, 08 de junio de 2013
2. LENGUAJE DE PROGRAMACIÓN
Un lenguaje de programación es un idioma
artificial diseñado para expresar procesos que
pueden ser llevados a cabo por máquinas como
las computadoras.
Pueden usarse para crear programas que
controlen el comportamiento físico y lógico de una
máquina, para expresar algoritmos con precisión,
o como modo de comunicación humana.1
Está formado por un conjunto de símbolos y reglas
sintácticas y semánticas que definen su estructura
y el significado de sus elementos y expresiones. Al
proceso por el cual se escribe, se prueba, se
depura, se compila y se mantiene el código fuente
de un programa informático se le llama
programación.
También la palabra programación se define como el proceso de creación de un
programa de computadora, mediante la aplicación de procedimientos lógicos, a través
de los siguientes pasos:
El desarrollo lógico del programa para resolver un problema en particular.
Escritura de la lógica del programa empleando un lenguaje de programación
específico (codificación del programa).
Ensamblaje o compilación del programa hasta convertirlo en lenguaje de máquina.
Prueba y depuración del programa.
Desarrollo de la documentación.
Existe un error común que trata por sinónimos los términos 'lenguaje de programación'
y 'lenguaje informático'. Los lenguajes informáticos engloban a los lenguajes de
programación y a otros más, como por ejemplo HTML (lenguaje para el marcado de
páginas web que no es propiamente un lenguaje de programación, sino un conjunto
de instrucciones que permiten diseñar el contenido de los documentos).
Permite especificar de manera precisa sobre qué datos debe operar una computadora,
cómo deben ser almacenados o transmitidos y qué acciones debe tomar bajo una
variada gama de circunstancias. Todo esto, a través de un lenguaje que intenta estar
relativamente próximo al lenguaje humano o natural. Una característica relevante de
los lenguajes de programación es precisamente que más de un programador pueda
usar un conjunto común de instrucciones que sean comprendidas entre ellos para
realizar la construcción de un programa de forma colaborativa.
3. ALGORITMO
En matemáticas, lógica, ciencias de la
computación y disciplinas relacionadas, un
algoritmo (del griego y latín, dixit algorithmus y
este a su vez del matemático persa Al-
Juarismi1
) es un conjunto preescrito de
instrucciones o reglas bien definidas, ordenadas
y finitas que permite realizar una actividad
mediante pasos sucesivos que no generen
dudas a quien deba realizar dicha actividad.2
Dados un estado inicial y una entrada, siguiendo
los pasos sucesivos se llega a un estado final y
se obtiene una solución. Los algoritmos son el
objeto de estudio de la algoritmia.1
En la vida cotidiana, se emplean algoritmos frecuentemente para resolver problemas.
Algunos ejemplos son los manuales de usuario, que muestran algoritmos para usar un
aparato, o las instrucciones que recibe un trabajador por parte de su patrón. Algunos
ejemplos en matemática son el algoritmo de la división para calcular el cociente de
dos números, el algoritmo de Euclides para obtener el máximo común divisor de dos
enteros positivos, o el método de Gauss para resolver un sistema lineal de
ecuaciones.
Medios de expresión de un algoritmo
Los algoritmos pueden ser expresados de muchas maneras, incluyendo al
lenguaje natural, pseudocódigo, diagramas de flujo y lenguajes de programación
entre otros. Las descripciones en lenguaje natural tienden a ser ambiguas y
extensas. El usar pseudocódigo y diagramas de flujo evita muchas ambigüedades
del lenguaje natural. Dichas expresiones son formas más estructuradas para
representar algoritmos; no obstante, se mantienen independientes de un lenguaje
de programación específico.
La descripción de un algoritmo usualmente se hace en tres niveles:
1. Descripción de alto nivel. Se establece el problema, se selecciona un modelo
matemático y se explica el algoritmo de manera verbal, posiblemente con
ilustraciones y omitiendo detalles.
2. Descripción formal. Se usa pseudocódigo para describir la secuencia de pasos
que encuentran la solución.
3. Implementación. Se muestra el algoritmo expresado en un lenguaje de
programación específico o algún objeto capaz de llevar a cabo instrucciones.
4. También es posible incluir un teorema que demuestre que el algoritmo es correcto,
un análisis de complejidad o ambos.
Diagrama de flujo
Diagrama de flujo que expresa un algoritmo para calcular la raíz cuadrada de un número
Artículo principal: Diagrama de flujo.
Los diagramas de flujo son descripciones gráficas de algoritmos; usan símbolos
conectados con flechas para indicar la secuencia de instrucciones y están regidos
por ISO.
Los diagramas de flujo son usados para representar algoritmos pequeños, ya que
abarcan mucho espacio y su construcción es laboriosa. Por su facilidad de lectura
son usados como introducción a los algoritmos, descripción de un lenguaje y
descripción de procesos a personas ajenas a la computación.
Los algoritmos pueden ser expresados de muchas maneras, incluyendo al
lenguaje natural, pseudocódigo, diagramas de flujo y lenguajes de programación
entre otros. Las descripciones en lenguaje natural tienden a ser ambiguas y
extensas. El usar pseudocódigo y diagramas de flujo evita muchas ambigüedades
del lenguaje natural. Dichas expresiones son formas más estructuradas para
representar algoritmos; no obstante, se mantienen independientes de un lenguaje
de programación específico.
5. PSEUDOCÓDIGO
El pseudocódigo (falso lenguaje, el prefijo pseudo significa falso) es una
descripción de alto nivel de un algoritmo que emplea una mezcla de lenguaje
natural con algunas convenciones sintácticas propias de lenguajes de
programación, como asignaciones, ciclos y condicionales, aunque no está regido
por ningún estándar. Es utilizado para describir algoritmos en libros y
publicaciones científicas, y como producto intermedio durante el desarrollo de un
algoritmo, como los diagramas de flujo, aunque presentan una ventaja importante
sobre estos, y es que los algoritmos descritos en pseudocódigo requieren menos
espacio para representar instrucciones complejas.
El pseudocódigo está pensado para facilitar a las personas el entendimiento de un
algoritmo, y por lo tanto puede omitir detalles irrelevantes que son necesarios en
una implementación. Programadores diferentes suelen utilizar convenciones
distintas, que pueden estar basadas en la sintaxis de lenguajes de programación
concretos. Sin embargo, el pseudocódigo, en general, es comprensible sin
necesidad de conocer o utilizar un entorno de programación específico, y es a la
vez suficientemente estructurado para que su implementación se pueda hacer
directamente a partir de él.
Así el pseudodocódigo cumple con las funciones antes mencionadas para
representar algo abstracto los protocolos son los lenguajes para la programación.
Busque fuentes más precisas para tener mayor comprensión del tema.
6. DIAGRAMA DE ÁRBOL
Un diagrama de árbol es una herramienta que se utiliza para determinar todos los
posibles resultados de un experimento aleatorio. En el cálculo de la probabilidad
se requiere conocer el número de objetos que forman parte del espacio muestral,
estos se pueden determinar con la construcción de un diagrama de árbol. Ejemplo:
Si Juan tiene 3 pantalones y 2 camisas basta multiplicar 3x2=6 y son 6
posibilidades de que se pueda vestir.
El diagrama de árbol es una representación gráfica de los posibles resultados del
experimento, el cual consta una serie de pasos, donde cada uno de los pasos
tiene un número finito de maneras de ser llevado a cabo. Se utiliza en los
problemas de conteo y probabilidad.
Para la construcción de un diagrama en árbol se partirá poniendo una rama para
cada una de las posibilidades, acompañada de su probabilidad. Cada una de
estas ramas se conoce como rama de primera generación.
En el final de cada rama de primera generación se constituye a su vez, un nudo
del cual parten nuevas ramas conocidas como ramas de segunda generación,
según las posibilidades del siguiente paso, salvo si el nudo representa un posible
final del experimento (nudo final).
Hay que tener en cuenta que la construcción de un árbol no depende de tener el
mismo número de ramas de segunda generación que salen de cada rama de
primera generación y que la suma de probabilidades de las ramas de cada nudo
ha de dar 1.
Existe un principio sencillo de los diagramas de árbol que hace que éstos sean
mucho más útiles para los cálculos rápidos de probabilidad: multiplicamos las
probabilidades si se trata de ramas adyacentes (contiguas), el ejemplo de alumna
de la primera facultad, o bien las sumamos si se trata de ramas separadas que
emergen de un mismo punto, el ejemplo de encontrar un alumno.
Ejemplos
Una universidad está formada por tres facultades:
• La 1ª con el 50% de estudiantes.
• La 2ª con el 25% de estudiantes.
• La 3ª con el 25% de estudiantes.
7. Las mujeres están repartidas uniformemente, siendo un 60% del total en cada
facultad.
¿Probabilidad de encontrar una alumna de la primera facultad?
¿Probabilidad de encontrar un alumno varón?
8. NODOS
En la conectividad de los nodos no se pueden cruzar ni pasar una sobre la otra, y se
colocan flechas con líneas.
Toda actividad representada por unas flechas discontinua es ficticia a no real quiere
decir que no representa ni involucra tiempo (Se coloca esta flechita solo para
cerrar un conectivos)
MOMENCLATURA
CODIGO LITERAL
1,2 A
1,3 B
2, 3 C
CODIGO LITERAL
1,2 A
1,3 B
1,4 C
2,4 D
3,4 E
33
11
22A
B
C
11
33
22
44
A
B
C
D
E
9. CODIGO LITERAL
1,2 A
1,3 B
2,4 C
2,5 D
3,6 E
4,6 F
5,6 G
LITERAL CODIGO
A 1,2
B 1,3
C 1,4
D 2,3
E 2,5
F 3,4
G 3,6
H 4,6
I 5,6
11
5
4
22
3
6
A
B
C
D
F
G
E
1
3
4
2
6
5
A
B
C
E
D
F
G
I
H
10. EAURLY: Este indica el momento o fecha donde se puede iniciar
el evento.
LAST: Indica la fecha, el tiempo, el momento más lejano en que
se puede realizar un evento
ALGORITMO PARA PINTAR UNA PUERTA
NO ACTIVIDAD TIEMPO PREDECESOR
1. Limpiar la puerta 15 minutos -
2. Lijar la puerta 45 minutos A
3. Abrir lata de pintura 5 minutos B
4. Preparar la pintura y
brochas 5 minutos C
5. Limpiar la puerta 5 minutos B
6. Pintar la puerta 30 minutos E
7. Limpiar 10 minutos F
11 22
55
33
44 66
88
77
A B
C
D
E1=0
15 45
05
0
5
05
30 10
E2=15 E3=60
E4=65
E5=65
E6=70
E7=95 E8=80
E7=70
F1
=0
E8=105
L8=105
L7=95
L6=95L4=90
L5=65
L3=85
L2=15L1=0
L3=60
11. RUTA CRÍTICA
DIAGRAMA DE GANTT
5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 90 95
10
0
10
5 110
A
B
C
D
E
F
G
12. TABLA DE ACTIVIDADES
No. ACTIVIDAD TIEMPO PREDECESOR
1 A 2 -
2 B 1 -
3 C 1.5 -
4 D 2 A
5 E 4 B
6 F 9 C
7 G 0.5 D
RUTA CRUTICA
4
9
11
33
22
44
55
66
A
B
C
D
E
F
G
2
1
1.5
2
0.5
E1=0
E2=2
E3=1
E4=1.5
E5=4
E6=10.5
E6=5.5
E5=5
L6=10.5
L5=10
L4=1.5
L2=8
L3=6
L1=7
L6=6
L1=0
13. DIAGRAMA DE GATT
1 2 3 4 5 6 7 8 9 10 11 12
A
B
C
D
E
F
G
CALCULO DE HOLGURA
ACTIVIDAD EI EF LI LF RT DURACIÓN EI + D LI+
D
HT HL HI
A 0 2 8 6 F 2 2 10 4 0 -8
B 0 1 6 5 F 1 1 7 4 0 -6
C 0 1.5 1.5 0 V 1.5 1.5 3 -1.5 0 -1.5
D 2 4 10 8 F 2 4 12 4 0 -8
E 1 5 10 6 F 4 5 14 1 0 -9
F 1.5 10.5 10.5 1.5 V 8 10.5 19.5 -9 0 -9
G 5 5.5 10.5 10 F 0.5 5.5 11 4.5 0 -5.5
EI= Eaurly Inicial
EF= Eaurly Final
LI= Last inicial
LF= Last final
RT= Ruta critica
EI + D= Eaurly Inicial más duración
LI + D= Last inicial más duración
HT= Holgura total ---- LF – (EI + D)
HL= Holgura Libre ---- EF – (EI + D)
HI= Holgura Independiente ---- EF – (LI + D)