Documentos de Académico
Documentos de Profesional
Documentos de Cultura
CIENCIAS BASICAS
Línea de Investigación
Design and Optimization of HPC Systems for Specific Workloads
2
CONTENIDO
1. Qué es software
2. Problemas
3. Algoritmo
3
Software
Software: conjunto de instrucciones que le dicen
al hardware que hacer.
Sistema Operativo
Herramientas de Desarrollo
Aplicaciones
1. Arquitectura de un Computador 4
Arquitectura de Software
Lenguaje Lenguaje Lenguaje Hardware
Alto Nivel Ensamblador Maquina
Sistema Operativo
Aplicaciones Herramientas
1. Arquitectura de un Computador 5
Sistema Operativo
1. Arquitectura de un Computador 6
Lenguaje de Máquina
1. Arquitectura de un Computador 7
Lenguaje Ensamblador
Software, generalmente escrito en lenguaje de
máquina, capaz de traducir de lenguaje ensamblador
a lenguaje de máquina.
1. Arquitectura de un Computador 9
Lenguaje de Alto Nivel
1. Arquitectura de un Computador 10
Aplicaciones
APLICACIÓN: software que le permite al
computador realizar una tarea específica.
Procesadores de
Texto Video Juegos Hojas de Calculo
1. Arquitectura de un Computador 11
Herramientas de Desarrollo
Es una aplicación que presenta un ambiente en el
que, empleando un lenguaje de programación, se
puede desarrollar nuevo software.
1. Arquitectura de un Computador 12
2. Problemas
13
Solución de problema
Solucionar el problema, es encontrar los
resultados desconocidos.
2. Problemas 14
Tipos de problemas
Problemas indecidibles
2. Problemas 15
Programación de Computadores
Modulo 1. Introducción
2. Problemas 16
Ejemplos de problemas mal
condicionados
De las siguientes imágenes, cuál
es la más llamativa?
2. Problemas 17
Ejemplos de problemas
indecidible
¿Existe en la expansión decimal de Pi una
secuencia de tamaño n para cualquier
número natural n?
2. Problemas 18
3. Algoritmo
19
Características de un Algoritmo
De finitud o
Precisión Finitud
Determinismo
20
Estructura de un Algoritmo
21
Ejemplo de algoritmo
22
Ejemplo de algoritmo
1. Dormir hasta que suene el despertador (o lo llame
la mamá).
2. Mirar la hora.
3. Hay tiempo suficiente?
3.1. Si, entonces
3.1.1. Bañarse.
3.1.2. Vestirse.
3.1.3. Desayunar.
3.2. No, entonces
3.2.1. Vestirse.
2. Problemas 23
Ejemplo de algoritmo
4. Lavarse la boca.
5. Despedirse de la mamá y el papá.
6. Hay tiempo suficiente?
6.1. Si, entonces
6.1.1. Caminar al paradero.
6.2. No, entonces
6.2.1. Correr al paradero.
7. Hasta que pase un bus para la universidad hacer:
7.1. Esperar el bus
7.2. Ver a las demás personas que esperan un bus.
3. Algoritmos 24
Ejemplo de algoritmo
8. Tomar el bus.
9. Mientras que no llegue a la universidad hacer:
9.1. Seguir en el bus.
9.2. Pelear mentalmente con el conductor.
10. Timbrar.
11. Bajarse.
12. Entrar a la universidad.
13. Caminar hasta llegar al salón donde se dicta su
curso de pensamiento algorítmico.
14. Ingresar al salón.
3. Algoritmos 25
Representación de
Algoritmos
Pseudo-código.
3. Algoritmos 26
Diagramas de Flujo
3. Algoritmos 27
Pseudo Código
Esquema de representación de algoritmos que
usa un subconjunto del lenguaje natural del
diseñador de algoritmos.
3. Algoritmos 28
Pseudo Código
leer A, B, C sino
si A>B si B>C
si A>C Mayor B
Mayor A
sino
sino
Mayor C
Mayor C
fin_si fin_si
fin_si
escribir Mayor
3. Algoritmos 29
4. Soluciónde Problemas
Algorítmicos
Problema
Metodología
Programa
30
Metodología de
Programación
✓ Análisis del problema.
✓ Especificación del problema.
✓ Diseño del algoritmo.
✓ Prueba del algoritmo y refinamiento.
✓ Codificación.
✓ Prueba y verificación.
4. Solución de Problemas Algorítmicos 31
Análisis del Problema
Entender de manera clara el problema que se
esta resolviendo.
32
Especificación del Problema
Descripción clara y precisa de:
33
Ejemplo de Especificación
Entradas: La cantidad total de animales (50),
cantidad de patas totales (140).
Especificación:
36
Prueba del Algoritmo y
Refinamiento
37
Codificación
38
Prueba y
Verificación
39
FIN
Gracias su atención
40
41