Vous êtes sur la page 1sur 23

UNIDAD I: ESTRUCTURAS DE CONTROL BÁSICAS

SEMANA N° 1

ALGORITMOS Y SU
REPRESENTACIÓN
Mg. Hernán Nina Hanco
Interés

https://www.pqs.pe/actualidad/noticias/perfiles-de-carrera-como-sera-el-programador-de-software-en-el-futuro
Interés

¿Qué crees que


representa la
figura?

https://www.fundaciontelefonica.com.ar/conferencias/conferencia-pensamiento-computacional-analisis-de-una-
competencia-clave/
AGENDA

1. Definición de Algoritmo
2. Definición de un programa de computadora
3. Metodología de desarrollo de programas de
computador
4. Representación de algoritmos
5. Lenguaje de programación
6. Evaluación / actividad aplicativa
Descubrimiento
ESTRUCTURA PPT

LOGRO DE LA SESIÓN

Al término de la sesión de aprendizaje, el estudiante elabora

programa de computador, en base a estructuras

secuenciales, que cumpla con los requerimientos o tareas

solicitadas por el usuario.


DEFINICIÓN DE ALGORITMOS

• Un Algoritmo es un método para resolver un problema mediante


una serie de pasos precisos, definidos y finitos.
• Características de un algoritmo:
• Un algoritmo debe ser preciso e indicar el orden de realización
de cada paso.
• Un algoritmo debe estar bien definido. si se sigue un algoritmo
dos veces, se debe obtener el mismo resultado cada vez
• Un algoritmo debe ser finito. Si se sigue un algoritmo, se debe
terminar en algún momento; o sea, debe tener un número finito
de pasos
EJEMPLO SOBRE CREAR UN ALGORITMO

• Un cliente ejecuta un pedido a una fábrica. La fábrica examina en su banco de datos


la ficha del cliente, si el cliente es solvente entonces la empresa acepta el pedido; en
caso contrario, rechazará el pedido.
• Algoritmo:
• 1. Inicio.
• 2. Leer el pedido.
• 3. Examinar la ficha del cliente.
• 4. Si el cliente es solvente, aceptar pedido; en caso contrario, rechazar pedido.
• 5. Fin.
DEFINICIÓN DE UN PROGRAMA DE COMPUTADORA

• Un programa de computadora es un conjunto de


instrucciones, órdenes dadas a la máquina, que
producirán la ejecución de una determinada
tarea.

Mejores Programadores
METODOLOGÍA DE DESARROLLO DE PROGRAMAS DE
COMPUTADOR

• Resolver problemas con computadoras es un proceso creativo y es necesario cumplir


con las siguientes fases:
• 1) Análisis. El problema se analiza teniendo presente la especificación de los requisitos
dados por el cliente de la empresa o por la persona que encarga el programa.
• 2) Diseño. Una vez analizado el problema, se diseña una solución que conducirá a un
algoritmo que resuelva el problema.
• 3) Codificación (implementación). La solución se escribe en la sintaxis del lenguaje de
alto nivel (por ejemplo, C++) y se obtiene un programa fuente que se compila a
continuación.
• 4) Ejecución, verificación y depuración. El programa se ejecuta, se comprueba
rigurosamente y se eliminan todos los errores (bugs) que puedan aparecer.
• 5) Mantenimiento. El programa se actualiza y modifica, cada vez que sea necesario, de
modo que se cumplan todas las necesidades de cambio de sus usuarios.
• 6) Documentación. Escritura de las diferentes fases del ciclo de vida del software,
1. DEFINICIÓN Y ANÁLISIS DEL PROBLEMA

• Lo que debe hacer el programa y el resultado o solución deseada. Se deben precisar


las entradas y salidas.
• Preguntas:
• ¿Qué entradas se requieren? (tipo de datos con los cuales se trabaja y cantidad)
• ¿Cuál es la salida deseada? (Tipo de datos de los resultados y cantidad)
• ¿Qué método produce la salida deseada?
• Requisitos o requerimientos adicionales y restricciones a la solución.
DEFINICIÓN Y ANÁLISIS DEL PROBLEMA
EJEMPLO: CALCULAR EL ÁREA DE UN RECTÁNGULO

• El cálculo del área del rectángulo se puede dividir en:


• Entrada de datos (altura, base)
• Proceso: Cálculo del área (= base x altura)
• Salida de datos (base, altura, área)
2. DISEÑO DEL ALGORITMO

• En la etapa de diseño se determina como hace el programa la tarea solicitada


• Los métodos más eficaces para el proceso de diseño se basan en el conocido por
divide y vencerás (top-down)
• El proceso de romper el problema en cada etapa y expresar cada paso en forma más
detallada se denomina refinamiento sucesivo.
• El diseño del algoritmo es independiente del lenguaje de programación en el que se
vaya a codificar posteriormente.
EJEMPLO DE DISEÑO PARA EL PROBLEMA DEL ÁREA DEL
TRIÁNGULO
REPRESENTACIÓN DE ALGORITMOS

• Las dos herramientas más utilizadas comúnmente para diseñar algoritmos son:
diagramas de flujo, y pseudocódigos.
• Diagramas de flujo:
• Un diagrama de flujo (flowchart) es una representación gráfica de un algoritmo. Los
símbolos utilizados han sido normalizados por el Instituto Norteamericano de
Normalización (ANSI).
• Pseudocódigo:
• Es una herramienta de programación en la que las instrucciones se escriben en
palabras similares al inglés o español, que facilitan tanto la escritura como la lectura de
programas. En esencia, el pseudocódigo se puede definir como un lenguaje de
especificaciones de algoritmos.
EJEMPLO DEL DIAGRAMA DE FLUJO
EJEMPLO DE PSEUDOCÓDIGO
LENGUAJE DE PROGRAMACIÓN

• Programas que sirven para escribir programas que permiten la comunicación


usuario/máquina. Unos programas especiales llamados traductores (Compiladores o
intérpretes) convierten las instrucciones escritas en lenguajes de programación en
instrucciones escritas en lenguaje máquina (0 y 1, bits) que ésta pueda entender.
EJEMPLO DE PROGRAMACIÓN EN C++
Experiencia
ESTRUCTURA PPT

Actividades de aplicación
colaborativa
1. Desarrolle un programa para determinar el cociente y resto de la
división de dos números enteros
2. Escribir un programa que permite intercambiar o permutar el valor de
dos variables enteras
3. Escribir un programa para determinar la hipotenusa de un triángulo
rectángulo conocidas las longitudes de sus dos catetos.
Aprendizaje
ESTRUCTURA PPTevidenciado

TRABAJO APLICATIVO
1. Desarrolle un algoritmo que le permita leer un valor para radio (R), calcular el
área (A) de un círculo A = PI * R² y escribir su valor.
2. Desarrolle un algoritmo que le permita leer un valor que represente una
temperatura expresada en grados Celcius y convierta dicho valor en un valor
expresado en grados Fahrenheit.
3. Desarrolle un algoritmo que le permita calcular el área de un triángulo en
función de las longitudes de sus lados previamente leídos desde el teclado
4. Dada una medida de tiempo expresada en horas, minutos y segundos con
valores arbitrarios, elabore un programa que transforme dicha medida en una
expresión correcta. Por ejemplo, dada la medida 3h 118m 195s, el programa
deberá obtener como resultado 5h 1m 15s.
5. La tribuna de un estadio está numerada del 1 al 500 en la parte superior
horizontal que corresponde al número de asiento por columna; y del 1 al 50 en
la parte izquierda vertical que corresponde al número de asiento por fila. Los
boletos tienen una numeración correlativa del 1 al 25000. Para cualquier
número de boleto determinar el número de fila y el número de columna que le
correspondería a la ubicación de su asiento.:
INSTRUMENTO DE EVLUACIÓN

INSTRUMENTO DE EVALUACIÓN
• RÚBRICA N° 1 PARA PROGRAMAS DE COMPUTADORAS DE
ESTRUCTURAS SECUENCIALES
REFERENCIAS

1. Luis Joyanes Aguilar, Fundamentos de programación: algoritmos y estructura de


datos, Cuarta Edición, McGraw-Hill, 2008, Madrid España.
2. Luis Joyanes Aguilar, Ignacio Zahonero, Programación en C: metodología,
algoritmos y estructuras de datos, McGraw-Hill, 2005, Madrid España.

Vous aimerez peut-être aussi