El documento presenta información sobre metodologías de algoritmos, incluyendo definición de problemas, diseño de algoritmos, tipos de datos, variables, expresiones, operadores, técnicas de diseño como top-down y bottom-up, y diagramas de flujo. Explica conceptos como identificadores, constantes, variables, tipos de operadores (aritméticos, relacionales, lógicos), y prioridad de operadores.
2. • Metodología de algoritmos
• Definición y análisis de un problema
• Diseño de un algoritmo
• Elementos y tipos de datos
• Constantes variables y expresiones
• Clasificación de una variable
• Clasificación de una expresión
• Operadores y Operando
• Clasificación de operadores
• Técnicas de diseño
• Bottom Up
• Diagrama de flujo
3. • La creación de un algoritmo y su programación es una
etapa, pero como futuro programador debes realizar
varios pasos antes y después.
• La computadora es una máquina que por sí sola no
puede hacer nada, necesita ser programada, es decir,
introducirle instrucciones u órdenes que le digan lo que
tiene que hacer.
4. • Esta fase esta dada por el enunciado del problema, el
cual requiere una definición clara y precisa para que la
computadora sepa que debe hacer, sino se conoce todo,
no tiene caso continuar
5. • Una vez que se ah comprendido lo que se desea de la
computadora, es necesario definir
• Los datos de entrada
• Cuál es la información que se desea producir (salida)
• Los métodos y formulas que se necesitan para procesar
los datos
6. • Debe tener un punto particular de inicio
• Debe ser definido, no debe permitir dobles
interpretaciones
• Debes ser soportar la mayoría de las variantes que
puede representar el problema
• Debe ser finito en tamaño y tiempo de ejecución
• Diseño del algoritmo
• Prueba de escritorio
Se denomina prueba de escritorio a la comprobación que
se hace de un algoritmo para saber si esta bien hecho
7. • Todos los datos tienen un tipo asociado con ellos. Un
dato puede ser un simple carácter con un valor entero. El
tipo de dato determina la naturaleza del conjunto de
valores que puede tomar una variable
Tipos de datos
Simples
Estructurados
Numéricos
Lógicos
Alfanuméricos
Arreglos
Registros
Apuntadores
Archivos
8. • Datos numéricos:
Permiten representar valores de forma numérica, esto
incluye a los números enteros y los reales
• Datos lógicos:
Son aquellos que solo pueden tener dos valores (V o F) ya
que representan el resultado de una comparación
• Datos alfanuméricos:
Es una secuencia de caracteres alfanuméricos que
permiten representar valores identificables de forma
descriptiva
Se pueden representar números como alfanuméricos pero
pierden su propiedad matemática. El dato se representa
entre comillas
9. • Identificadores:
Los identificadores representa los datos de un programa.
Un identificador es una secuencia de caracteres que sirve
para identificar una posición en la memoria de la
computadora para poder acceder al contenido
»Nombre
»Num_hrs
»Calif2
Reglas para formar un identificador
• Debe comenzar con una deletrea (A a Z mayúscula o
minúscula) sin espacios en blanco
• Letras, dígitos y caracteres con la subraya están
permitidos después del primer carácter
• La longitud de identificadores puede ser de varios
caracteres
• El nombre del identificador debe dar una idea de un valor
10. Constaste:
Una constante es un dato numérico o alfanumérico que no
cambia durante la ejecución del programa
Ej: Pi = 3,1416
Variable:
Es un espacio de la computadora de que permite
almacenar temporalmente un dato durante la ejecución de
un proceso, puede cambiar
Ej: área = Pi * radio ^2
Clasificación de variables
Variable
Por su contenido
Numéricas
Lógicas
Alfanuméricas
Por su uso
De trabajo
Contadores
Acumuladores
11. Por su contenido:
• Variables Numéricas:
Son aquellas en las cuales se almacenan valores
numéricos, positivos o negativos
Ej: 0,15 pi = 3,1416 costo = 2500
• Variables Lógicas:
Son aquellas que solo pueden tener dos valores ( V o F)
estos representan el resultado de una comparación entre
oros datos
• Variables Alfanuméricas:
Esta formada por caracteres alfanuméricos ( letras,
números y caracteres especiales)
Letra = a apellido = López dirección = Av. Lberdator#190
12. Por su uso:
• Variables de Trabajo:
Variables que reciben el resultado de una operación
matemática completa y que se usan normalmente dentro de
un programa.
Ej: Suma = a+b/c
• Contadores:
Se utilizan para llevar el control del numero de ocasiones en
que se realiza una operación
• Acumuladores:
Forma que toma una variable y que sirve para llevar la suma
acumulativa de una serie de valores
13. • Las expresiones son combinadas de constantes,
variables, símbolos de operación, paréntesis y nombres
de funciones especiales
Por Ej: a+(b+3)/c
Cada expresión toma un valor que se determina tomando
los valores de las variables y constantes
Una expresión consta de operadores y operando. Según
sea el tipo de dato que manipulan, se clasifica la expresión
• Arrítmica
• Relacionales
• Lógicas
14. • Operadores:
• Son elementos que relacionan de forma diferente, los
valores de una o mas variables y constantes
• Operadores Aritméticos:
Los operadores aritméticos permiten la realización de
operaciones matemáticas con los calores
Los operadores aritméticos pueden ser enteros o reales. Si
ambos son enteros el resalado es entero, si hay un real, el
resultado es real
Tipos de Operadores
Aritméticos
Relaciones
Lógicos
Operando (Operador) Operando
Valor
(constantes o variables)
15. • Operadores Aritméticos:
+ Suma
- Resta
* Multiplicación
/ División
Mod o modulo (residuo de la división entera)
Ej:
7/2 3,5 12 mod 7 5 4+2*5 14
Prioridad de los operadores aritméticos
Todas las expresiones paréntesis se evalúan primero, las
expresiones con paréntesis anidados se evalúan de adentro a
fuera, el paréntesis mas inerme va primero
Dentro de una misma expresión los operadores se evalúan:
1. ^Exponenciación
2. *,/,mod
3. +,-
16. Los operadores en una misma expresión con igual nivel de
prioridad se evalúan de izquierda a derecha
Ej: 4+2*5= 14 23*2/5=9,2
3+5*(10-(2+4))=23 2,1*(1,5+12,3)=2,1*13,8=28,98
Se utilizan para establecer una relación entre dos valores.
Luego compara estos valores entre si y esta comparación
produce un resulta (V o F)
Los operadores relacionales comparan valores del mismo tipo
(numéricos o cadenas) y tienen el mismo tipo de prioridad en la
evaluación
17. • > menor que > = menor o igual que
• < mayor que <> diferente
• < = mayor o igual que = igual
Ej:
Si a = 10, b = 20, c=30
a-b>c Falso
a-b<c Verdadero
a-b=c Falso
A*b<>c Verdadero
Ej no lógicos:
a<b<c
10<20<30
T>5<30 No lógicos porque tienen diferentes
operandos
18. Estos operadores se utilizan para establecer relaciones entre
valores lógicos. Estos valores pueden ser el resultado de una
presión racional
Tipos de Operadores Lógicos:
And Y
Or O
Not negación
Ej: para las siguientes ej. T significa verdadero y F falso
(a<b) and (b<c)
(10<20) and (20<30)
and
T
T T
19. Operador Not
Operando Resultado
T F
F T
Operador And
Operando1 Operador Operando2 Operando3
T
T
F
F
And T
F
T
F
T
F
F
F
Operando1 Operador Operando2 Operando3
Operador Or
T
T
F
F
T
F
T
F
T
T
T
F
Or
20. • Prioridad de los operadores lógicos:
1. Not
2. And
3. Or
Prioridad de los Operadores en general
1. ()
2. ^
3. *,/,mod, Not
4. +,-, And
5. >,< <,> =, <=, <>, =, Or
Ejemplos
1. ((a>b) or (a<c)) and ((a=c) or (a >= b))
F T
T
F F
F
F
21. • 2.
• 3.
((a>=b) or (a<d)) and ((a>=d) or (c>d))
T
F F
F
T T
T
F
Not (a=c) and (c>b)
F T
T
22. • Top Down
También conocida como de arriba-abajo y consiste en
establecer una serie de niveles de mayor o menor complejidad
que den solución al problema. Estructuración de forma que una
etapa jerárquica y su inmediato inferior se relacionen mediante
entradas y salidas de información. El diseño consiste en una
serio de descomposiciones sucesivas del problema inicial.
Tienen sus técnica de diseño
• Simplificación del problema y de los subprogramas de cada
descomposición
• Las diferentes partes del problema pueden ser programadas
de modo independiente
• El programa final queda estructurado en forma de bloqueo o
módulos que hace mas sencilla su lectura
23. El diseño ascendentes se refiere a la identificación de
aquellos procesos que necesitan computarizarse con
forme vayan apareciendo.
Cuando la programación se realiza internamente y
haciendo u enfoque ascendente, es difícil llegar a integrar
los subsistemas al grado del desempeño global. Aunque
cada subsistema parece ofrecer lo que se requiere, cuando
se contempla al sistema como una entidad global.
Uno de ellos es la duplicación de esfuerzos para acceder
el software y mas aun.
24. Otro es, que se introducen al sistema muchos datos carentes
de valor.
Un tercer y tal vez el mas serio inconveniente del enfoque
ascendente, es que los objetivos globales de la organización no
fueron considerados y en consecuencia no se satisfacen
La diferencia entre las dos técnicas de programación se
fundamenta en el resultado que presentan frente a un problema
dado.
La creación de algoritmos es basado sobre la técnica
descendente, la cual brinda el diseño ideal para la solución de
un problema
25. • Un diagrama de flujo es la representación grafica de un
algoritmo. También se puede decir que es la
representación detallada en forma grafica en pasos en
la computadora para producir resultados