Transcript

La descripcin de un algoritmo usualmente se hace en tres niveles:Descripcin de alto nivel. Se establece el problema, seselecciona un modelo matemtico y se explica el algoritmo demanera verbal, posiblemente con ilustraciones y omitiendodetalles.Descripcinformal. Se usa pseudocdigo para describir lasecuencia de pasos que encuentran la solucin.Implementacin. Semuestra el algoritmo expresado enunlenguajedeprogramacinespeccooalg!nobjetocapa"dellevar a cabo instrucciones.1 Conceptos BsicosDiagrama de flujoDiagrama de flujo que expresa un algoritmo para calcular la raz cuadrada de unnmero xLos diagramas de flujo son descripciones grficas de algoritmos; usan smbolosconectados con flechas para indicar la secuencia de instrucciones y estn regidospor I!"Los diagramas de flujo son usados para representar algoritmos peque#os$ ya queabarcan mucho espacio y su construcci%n es laboriosa" &or su facilidad de lecturasonusadoscomointroducci%nalosalgoritmos$ descripci%ndeunlenguajeydescripci%n de procesos a personas ajenas a la computaci%n"Pseudocdigo'l pseudoc%digo (falso lenguaje$ el prefijo pseudo significa falso) es unadescripci%ndealtoni*el deunalgoritmoqueempleaunamezcladelenguajenatural con algunas con*enciones sintcticas propias de lenguajes deprogramaci%n$ como asignaciones$ ciclos y condicionales$ aunque no est regidopor ningn estndar" 's utilizado para describir algoritmos en libros ypublicaciones cientficas$ y como producto intermedio durante el desarrollo de unalgoritmo$ como los diagramas de flujo$ aunque presentan una *entaja importantesobre estos$ y es que los algoritmos descritos en pseudoc%digo requieren menosespacio para representar instrucciones complejas"'l pseudoc%digo est pensado para facilitar a las personas el entendimiento de unalgoritmo$ y por lo tanto puede omitir detalles irrele*antes que son necesarios enuna implementaci%n" &rogramadores diferentes suelen utilizar con*encionesdistintas$ que pueden estar basadas en la sintaxis de lenguajes de programaci%nconcretos" in embargo$ el pseudoc%digo$ en general$ es comprensible sinnecesidad de conocer o utilizar un entorno de programaci%n especfico$ y es a la*ezsuficientementeestructuradoparaquesuimplementaci%nsepuedahacerdirectamente a partir de +l",s el pseudoc%digo cumple con las funciones antes mencionadas pararepresentar algo abstracto los protocolos son los lenguajes para la programaci%n"Implementacin-uchos algoritmos son ideados para implementarse en un programa" inembargo$ los algoritmos pueden ser implementados en otros medios$ como unaredneuronal$ uncircuitoel+ctricoounaparatomecnicoyel+ctrico" ,lgunosalgoritmos inclusi*e se dise#an especialmente para implementarse usando lpiz ypapel" 'l algoritmo de multiplicaci%n tradicional$ el algoritmo de 'uclides$ la cribade 'rat%stenes y muchas formas de resol*er la raz cuadrada son s%lo algunosejemplos"Variableson elementos que toman *alores especficos de un tipo de datos concreto" Ladeclaraci%n de una *ariable puede realizarse comenzando con *ar"&rincipalmente$ existen dos maneras de otorgar *alores iniciales a *ariables.1. -ediante una sentencia de asignaci%n"2. -ediante un procedimiento de entrada de datos (por ejemplo. /read/)"Estructuras secuencialesLa estructura secuencial es aquella en la que una acci%n sigue a otra ensecuencia" Las operaciones se suceden de talmodo que la salida de una es laentrada de la siguiente y as sucesi*amente hasta el fin del proceso" La asignaci%nde esto consiste$ en el paso de *alores o resultados a una zona de la memoria"Dicha zona ser reconocida con el nombre de la *ariable que recibe el *alor" Laasignaci%n se puede clasificar de la siguiente forma.Simples: 0onsiste en pasar un *alor constante a una *ariable (a 1 23)Contador: 0onsiste en usarla como un *erificador delnmero de *eces que serealiza un proceso (a 1 a 4 2)Acumulador: 0onsiste en usarla como un sumador en un proceso (a 1 a 4 b)De trabajo: Donde puede recibir elresultado de una operaci%n matemtica quein*olucre muchas *ariables (a 1 c 4 b5678)"2 Ejercicio 1.Ejercicio 1. Calcular el sueldo de un trabajador, al cual se realizan los siguientes descuentos:Renta = 10%AFP = 6%FSV = 8%Al fnal deber imprimir el nombre del trabajador, su direccin, telfono, salario neto y total de descuento.AnlisisSalida: Nombre, Direccion, Telefono, Sueldo_Neto, Total_Desc.Entrada: Nombre, Direccion, Telefono, Sueldo.Datos Adicionales: 10%, 6%, 8%Proceso: Renta = Sueldo * 0.10 AFP = Sueldo * 0.06 FSV = Sueldo * 0.08Total_Desc = Renta + AFP + FSVSueldo_Neto =Sueldo - Total_DescDiagrama de FlujoPseudocdigoAlgoritmo Calculo_Salario3 Ejercicio 2.Ejercicio 2. Un Alumno desea saber cul ser su promedio general en las tres materias msdifciles que cursa y cul ser el promedio que obtendr en cada una de ellas.Estas materias se evalan como se muestra a continuacin:o Califcacin de Calculo I se obtiene de la siguiente manera: Examen 80%,Promedio de tareas 20%, en esta materiase pidi un total de dos tareas.o La califcacin de Fsica I se obteiene de la siguiente manera:Examen 70%,Promedio de tareas 30%, en esta materia se pidi un total de de tres tareas.o La califcacin de Programacin I se obtiene de la siguiente manera: Examen 85%,Promedio de tareas 15%, en esta materia se pidi un total de de cuatro tareas.Calcular el promedio de un alumno cualquiera por asignatura y total.AnlisisNA= Nombre_Alumno, NC = Numero_Carnet, PC = Promedio_Calculo, PF =Promedio_Fisica, PP = Promedio_Programacion, PG = Promedio_GeneralSalida: NA, NC, PC, PF, PP, PGEC = Examen_Calculo, T1C = Tarea1_Calculo, T2C = Tarea2_Calculo,EF = Examen_Fisica, T1F = Tarea1_Fisica, T2F = Tarea2_Fisica, T3F = Tarea3_Fisica,EP = Examen_Programacion, T1P = Tarea1_Programacion, T2P =Tarea2_Programacion, T3P = Tarea3_Programacion, T4P = Tarea4_ProgramacionEntrada: NA, NC, EC, T1C, T2C, EF, T1F, T2F, T3F, EP, T1P, T2P, T3P, T4PDatos Adicionales:Examen Calculo 80% tareas 20%Examen Fisica 70% tareas 30%Examen Programacin 85% tareas 15%ProcesoPC = EC * 0.80 + (T1C+T2C) / 2 * 0.20PF = EF * 0.70 + (T1F+T2F+T3F) / 3 * 0.30PP = EP * 0.85 + (T1P+T2P+T3P+T4P) / 4 * 0.15PG = (PC+PF+PP) / 3Diagrama de FlujoPseudocdigoAlgoritmo Promedios


Top Related