Ayudantia 1
-
Upload
daniel-barraza-rodriguez -
Category
Documents
-
view
702 -
download
4
Transcript of Ayudantia 1
Algoritmos
¿Que es un algoritmo? “Una lista de instrucciones donde se
especifica una sucesión de operaciones necesarias para resolver cualquier problema de un tipo dado”.
Ejemplo sumar dos números
Algoritmos
1. 5+1=62. Anotar 63. 2+9=114. Anotar 1 y guardar
15. 4+0=46. 4+1=57. Anotar 58. El resultado es 516
491+ 25
516
Algoritmos
Entrada ¿Qué se necesita para realizar los pasos?
Salida ¿Que se obtiene al final del algoritmo?
Tipos de datos Números: enteros, reales,etc. Carácter: letras, palabras, frases Lógicos
Algoritmos
Sirven para resolver un tipo de problema especifico.
Son secuencias de pasos concretos. Requiere la definición de la entrada y la
salida. Adecuados para ser ejecutados por un
computador
Algoritmos
¿Qué tiene que ver con la programación? La programación consiste en crear
programas de computador que resuelvan problemas específicos.
Un programa de computador es la implementación de un algoritmo.
Pregunta
Un algoritmo se caracteriza por tener un conjunto finito de instrucciones para resolver un problema determinado, en donde el orden de las instrucciones existentes en él no altera mayormente el resultado final.
respuesta
Falso. Por definición, un algoritmo es un conjunto finito de instrucciones que especifican la secuencia de operaciones a realizar, en orden, para resolver un problema determinado. Por lo anterior, si se altera el orden de las operaciones o instrucciones en un algoritmo, no existe forma de asegurar que dicho algoritmo continuará resolviendo de manera adecuada el problema abordado.
Descripción de un algoritmo
Es necesario contar con formas de expresar algoritmos Diseño del algoritmo antes de codificar Diseño del algoritmo de manera independiente del
lenguaje de programación
Diferentes alternativas Pseudo - código Diagramas de flujo Diagramas de Nassi-Schneidermann
Descripción de un algoritmo
Pseudo – código El algoritmo se expresa en lenguaje natural Expresa de manera genérica los pasos del
algoritmo No provee detalles de la implementación
particular del código final
Partes de un algoritmo
Cabecera Nombre del algoritmo
Bloque del algoritmo Bloque de declaraciones
Variables Contantes
Bloque de pasos
Ejercicio prueba: Calcular la hipotenusa de un triangulo
rectángulo
/*Cabecera*/Algoritmo Hipotenusa_de_un_triangulo
/*Bloque de declaraciones*/Var Real: hipotenusa, auxiliar, cateto_a, cateto_b
/*Bloque de pasos*/inicio
escribir("Ingrese el valor del cateto a")leer(cateto_a)escribir("Ingrese el valor del cateto b")leer(cateto_b)auxiliar<-cateto_a*cateto_aauxiliar<-auxiliar+cateto_b*cateto_bhipotenusa=root(auxiliar) /*sqrt(auxiliar)*escribir("La hipotenusa vale :",hipotenusa)
Fin
Algoritmo que calcule el factorial de un número cualquiera
Algoritmo Factorial /*Cabecera*/
Var numero, factorial /*Bloque de declaraciones*/
inicio /*Bloque de pasos*/factorial<-1escribir("Ingrese el valor del numero que desea la factorial ")leer(numero)desde i<-1 hasta numero
hacerfactorial<-factorial*i
fin_desdeescribir("La factorial vale :",factorial)
Fin
Ejercicios
Desarrollar un algoritmo que calcule la raíz cuadrada de un número, con 3 cifras significativas.
Obtener un algoritmo que permita multiplicar dos números enteros por medio de sumas sucesivas.
Desarrollar un algoritmo que determine todos los números primos existentes entre 1 y unnúmero ingresado.