Estructuras de Programación
|
|
- Eva Alvarado Cuenca
- hace 5 años
- Vistas:
Transcripción
1 Apunte del curso ALGORITMOS y PROGRAMACIÓN (FI-UBA, Prof. Ing. F. J. LAGE, J. T. P. Ing. Z. CATALDI; A.T.P. Srta. A Pauluzzi, Sr. C Corradino, Sr. F Gómez Estructuras de Programación Todo programa puede ser escrito utilizando solamente tres tipos de estructuras de control secuenciales selectivas repetitivas Las estructuras de tipo secuencial se han visto en el práctico anterior. En esta practica veremos los otros dos tipos de estructuras. Selectivas: Las estructuras selectivas se utilizan para tomar decisiones lógicas; de ahí que se suelan denominar estructuras de decisión o alternativas. Son dos la sentencia if y la sentencia case. If esta sentencia, es considerada de alternativa doble ( si se cumple cierta condición entonces..., sino... / If... then... else... ). Pseudocódigo en español si <condición> entonces < acción S1> sino <acción S2 > Código se programa if <condición> then < acción S1> else < acción S2> Su estructugrama tiene la siguiente forma if <condición> then < acción S1> else < acción S2> Ejemplos: a) Se leen dos valores enteros A, B. Si A es mayor que B se realiza la suma de ambos, caso contrario, se hace el producto. Página 1 de 26
2 Pseudocódigo del programa nombre selección1(program); declaraciones (uses) Crt, Dos; variables A (valor que ingresa) : entero; B (valor que ingresa) : entero; R (resultado de la oper.): entero funciones(function); procedimientos (procedure); inicio (); limpieza(limpia la pantalla); ingreso; alternativa (decisión A>B): resultado (salida resultados): fin(end.) (var); Diagrama N-S nombre selección1 declaraciones Crt, Dos Variables A, B, R :enteros funciones y procedimientos comienzo (programa) limpieza ingreso alternativa resultado fin (programa) Estructura secuencial Como se puede ver tenemos varios procedimientos ya vistos. Por lo tanto solo se desarrollara el pseudocódigo y el estructurado de alternativa, y todo lo que de el dependa. algoritmo alternativa Pseudocódigo del alternativa procedimiento alternativa inicio (); si A > B entonces R A + B sino R Prod (A, B) fin(end;) Diagrama N-S A > B R A + B else R Prod (A, B) El código del procedimiento es: procedure alternativa; {* determina si A es o no mayor que B y hace los cálculos correspondientes *} {* comienzo de alternativa *} if A > B then R := A + B else R := Prod (A,B); {* llamado a la función *} end; {* fin de alternativa *} Nótese que se definió una función Prod (A, B), veremos como se trabaja con ellas. algoritmo Prod Página 2 de 26
3 Pseudocódigo de Prod función Prod ( A, B : enteros)entero inicio (); Prod A * B fin(end;) Diagrama N-S función Prod ( A, B : entero ) entero comienzo (Prod) Prod A * B fin (Prod) function Prod ( A, B: integer ): integer; {* obtiene el producto entre dos valores enteros *} {* comienzo de Prod *} Prod := A * B; end; {* fin de Prod *} Quedándonos el programa de la siguiente manera. Program Seleccion_1; {* Este es el primer programa con estructuras de selección y funciones *} uses crt, dos; {* declaraciones *} {const} {* no hay constantes *} var A, B : integer; {* valores que ingresan *} R: integer; {* salida de la operación *} function Prod ( A, B: integer ): integer; {* obtiene el producto entre dos valores enteros *} {* comienzo de Prod *} Prod := A * B; end; {* fin de Prod *} procedure limpieza; {* comienzo de limpieza de la pantalla *} ClrScr; end; {* fin de limpieza de la pantalla *} procedure ingreso; {* comienzo del ingreso de datos *} write ('Ingrese A '); {* ingreso de variable A *} readln (A); write ('Ingrese B '); {* ingreso de variable B *} readln (B); end; {* fin del ingreso de datos *} procedure alternativa; {* determina si A es o no mayor que B y hace los cálculos correspondientes *} {* comienzo de alternativa *} if A > B then R := A + B else R := Prod (A,B); {* llamado a la función *} end; {* fin de alternativa *} procedure resultado; {* comienzo la impresión de los resultados *} Var H :char; Página 3 de 26
4 writeln ( 'Resultado = ', R); writeln ( 'Presione cualquier tecla '); readln (H); {* esta instrucción y la anterior son para dar tiempo para ver resultados *} end; {* fin de la impresión de los resultados *} limpieza; {* llamado al procedimiento limpieza *} ingreso; {* llamado al procedimiento ingreso *} alternativa; {* llamado al procedimiento alternativa *} resultado; {* llamado al procedimiento resultado *} end. b) Se leen dos valores enteros A, B. Si A es mayor que B se realiza la suma de ambos y se imprime un cartel diciendo R es la suma de A y B =, caso contrario, se hace el producto y se imprime otro cartel que diga R. es el producto de A y B = Página 4 de 26
5 Pseudocódigo del programa nombre selección2program); declaraciones (uses); Crt, Dos; variables (var); A (valor que ingresa) : entero; B (valor que ingresa) : entero; R (resultado de la oper.): entero funciones(function); procedimientos (procedure); inicio (); limpieza (limpia la pantalla) ; ingreso (ingreso de datos); alternativa (decisión A>B e imp.); resultado ( para ver los resultados): fin(end.) Diagrama N-S nombre selección1 declaraciones Crt, Dos; Variables A, B, R :enteros funciones y procedimientos comienzo (programa) limpieza ingreso alternativa resultado fin (programa) Como se puede ver dentro de alternativa se colocó la impresión de resultados quedándonos este algoritmo estructurado de la siguiente manera. algoritmo alternativa Pseudocódigo del alternativa Diagrama N-S procedimiento alternativa inicio (); A > B si A > B entonces R A + B R A + B Imprimir cartel suma y resultados Imp. cartel y resultados sino R Prod (A, B) Imprimir cartel producto y resultados Else R Prod (A, B) fin(end;) Imp. cartel y resultados El código del procedimiento es: procedure alternativa; {* determina si A es o no mayor que B y hace los cálculos correspondientes *} {* comienzo de alternativa *} if A > B then {* comienzo del then *} R := A + B; writeln ( 'R es la suma de A y B = ', R); end {* fin del then *} else {* comienzo del else *} R := Prod (A,B); {* llamado a la función *} writeln ( 'R es el producto de A y B = ', R); end; {* fin del else *} Página 5 de 26
6 end; {* fin de alternativa *} Quedándonos el programa de la siguiente manera. Program Seleccion_2; {* Este es el primer programa con estructuras de selección y funciones *} uses crt, dos; {* declaraciones *} {const} {* no hay constantes *} var A, B : integer; {* valores que ingresan *} R: integer; {* salida de la operación *} function Prod ( C, D: integer ): integer; {* obtiene el producto entre dos valores enteros *} {* comienzo de Prod *} Prod := C * D; end; {* fin de Prod *} procedure limpieza; {* comienzo de limpieza de la pantalla *} ClrScr; end; {* fin de limpieza de la pantalla *} procedure ingreso; {* comienzo del ingreso de datos *} write ('Ingrese A '); {* ingreso de variable A *} readln (A); writeln ('Ingrese B '); {* ingreso de variable B *} read (B); end; {* fin del ingreso de datos *} procedure alternativa; {* compara A con B y hace los cálculos e imprime resultados *} {* comienzo de alternativa *} if A > B then {* comienzo del then *} R := A + B; writeln ( 'R es la suma de A y B = ', R); {* imprime resultados *} end {* fin del then *} else {* comienzo del else *} R := Prod (A,B); {* llamado a la función *} writeln ( 'R es el producto de A y B = ', R); {* imprime resultados *} end; {* fin del else *} end; {* fin de alternativa *} procedure resultado; {* comienzo la muestra de los resultados *} Var H :char; writeln ( 'Preione cualquir tecla '); readln (H); {* esta instrucción y la anterior son para dar tiempo para ver resultados *} end; {* fin de la muestra de los resultados *} Página 6 de 26
7 limpieza; {* llamado al procedimiento limpieza *} ingreso; {* llamado al procedimiento ingreso *} alternativa; {* llamado al procedimiento alternativa *} resultado; {* llamado al procedimiento resultado *} end. Hay varias cosas para tomar en cuenta cuando en alguna de las opciones tiene más de una instrucción dicha opción deberá llevar un con su correspondiente end. Debe notarse que el end del then no tiene puntuación en cambio el del else si lleva punto y coma (;) esto se debe que este end es el último del if. También debe notarse que las variables del llamado de la función son distintas a las de la función en si. R := Prod (A,B); function Prod ( C, D: integer ): integer; Tanto en funciones como en procedimientos esto es posible ya que el lenguaje vincula automáticamente la primera variable del llamado con la primera de la declaración, la segunda con la segunda y así sucesivamente. Esto nos permite llamar a una función (o procedimiento), con distintos juegos de variables. Sin que tengamos que atenernos a nombres específicos. Solo debemos tener en cuenta que las variables sean del mismo tipo. Mútiples salidas : Si se tiene más de dos posibles salidas, aquí aparecen dos soluciones similares al problema. IF anidado : en esta solución se utiliza un if dentro de otro. Siempre se anida por la salida Else (sino). Ejemplo : Se pide un programa donde ingresa un número entre 1 y 5 incluidos ambos y se imprime en pantalla su expresión de caracteres ( ingresa 2 imprime Dos). En este caso tenemos cinco salidas probables (uno, dos, tres, cuatro o cinco), esto indica que deberemos tener 4 if anidados. Si a = 1 Entonces impre = Uno Sino Si a = 2 Entonces impre = Dos Sino Si a = 3 Entonces impre = Tres Sino Si a = 4 Entonces impre = Cuatro Sino impre = Cinco fin_si {* fin_si no tiene equivalente en Pascal *} fin_si fin_si fin_si if <condición> then else < acción S1> Página 7 de 26
8 if <condición> then < acción S2> Else If <condición> then < acción S3> Else If <condición> then < acción S3> Else < acción S4> El código del procedimiento es: procedure alternativa; {* determina el valor de A y lo expresa en letras *} {* comienzo de alternativa *} if A = 1 then {* pregunta por uno *} writeln ( 'U n o ') {* salida por uno *} else if A = 2 then {* pregunta por dos *} writeln ( 'D o s ') {* salida por dos *} else if A = 3 then {* pregunta por tres *} writeln ( 'T r e s ') {* salida por tres *} else if A = 4 then {* pregunta por cuatro *} writeln ( 'C u a t r o ') {* salida por cuatro *} else writeln ( 'C i n c o '); {* salida por cinco *} end; {* fin de alternativa *} Quedándonos el programa de la siguiente manera. Program Seleccion_3; {* If anidados *} uses crt, dos; {declaraciones} {const} {* no hay constantes *} var A : integer; {* valor que ingresa *} procedure limpieza; {* comienzo de limpieza de la pantalla *} ClrScr; end; {* fin de limpieza de la pantalla *} Página 8 de 26
9 procedure ingreso; {* comienzo del ingreso de datos *} write ('Ingrese un numero de 1 a 5 : '); {* ingreso de variable A *} readln (A); end; {* fin del ingreso de datos *} procedure alternativa; {* determina el valor de A y lo expresa en letras *} {* comienzo de alternativa *} if A = 1 then {* pregunta por uno *} writeln ( 'U n o ') {* salida por uno *} else if A = 2 then {* pregunta por dos *} writeln ( 'D o s ') {* salida por dos *} else if A = 3 then {* pregunta por tres *} writeln ( 'T r e s ') {* salida por tres *} else if A = 4 then {* pregunta por cuatro *} writeln ( 'C u a t r o ') {* salida por cuatro *} else writeln ( 'C i n c o '); {* salida por cinco *} end; {* fin de alternativa *} procedure resultado; {* se utiliza para dejar en pantallas los resultados *} Var H :char; writeln ( 'Preione cualquir tecla '); readln (H); {* esta instrucci n y la anterior son para dar tiempo para *} {* ver resultados *} end; {* fin de resultado *} limpieza; ingreso; alternativa; resultado; end. Select : esta solución se utiliza en reemplazo del if anidado. Es más práctica y eficiente. su pseudocódigo genérico es: según...sea E hacer E1: sentencia 1 E2: sentencia 2 E3: sentencia E n : sentencia n [sino sentencia x ] fin...según Página 9 de 26
10 Case <variable> of Opción1 < acción S1> Opción2 < acción S2> Opción n... else < acción n> < acción...> < acción S m> Para el problema anterior su pseudocódigo será: según...sea A hacer 1: Imprimir U n o 2: Imprimir D o s 3: Imprimir T r e s 4: Imprimir C u a t r o sino Imprimir C i n c o fin...según y su diagrama N - S es: Case A of else Imprimir UNO Imprimir DOS Imprimir TRES Imprimir CUATRO Imprimir CINCO Página 10 de 26
11 El código del procedimiento es: procedure seleccion; {* determina el valor de A y hace su valor a letras *} {* comienzo de alternativa *} case A of {* comienza seleccion *} 1 : writeln ( 'U n o '); {* salida por uno *} 2 : writeln ( 'D o s '); {* salida por dos *} 3 : writeln ( 'T r e s '); {* salida por tres *} 4 : writeln ( 'C u a t r o '); {* salida por cuatro *} else writeln ( 'C i n c o '); {* salida por cinco *} end; {* fin del case *} end; {* fin de alternativa *} Quedándonos el programa de la siguiente manera. Program Seleccion_4; {* Uso de selectores *} uses crt, dos; {declaraciones} {const} {* no hay constantesr *} var A : integer; {* valor que ingresa *} procedure limpieza; {* comienzo de limpieza de la pantalla *} ClrScr; end; {* fin de limpieza de la pantalla *} procedure ingreso; {* comienzo del ingreso de datos *} write ('Ingrese un numero de 1 a 5 : '); {* ingreso de variable A *} readln (A); end; {* fin del ingreso de datos *} procedure seleccion; {* determina el valor de A y hace su valor a letras *} {* comienzo de alternativa *} case A of {* comienza seleccion *} 1 : writeln ( 'U n o '); {* salida por uno *} 2 : writeln ( 'D o s '); {* salida por dos *} 3 : writeln ( 'T r e s '); {* salida por tres *} 4 : writeln ( 'C u a t r o '); {* salida por cuatro *} else writeln ( 'C i n c o '); {* salida por cinco *} Página 11 de 26
12 end; {* fin del case *} end; {* fin de alternativa *} procedure resultado; {* se utiliza para dejar en pantallas los resultados *} Var H :char; writeln ( 'Preione cualquir tecla '); readln (H); {* esta instrucci n y la anterior son para dar tiempo para *} {* ver resultados *} end; {* fin de resultado *} limpieza; ingreso; seleccion; resultado; end. Resumen: Existen tres tipos de estructuras selectivas a) If b) If anidado c) case Cada uno tiene su aplicación específica y se debe tener cuidado si se tiene por salida una o más sentencias. (Si hay más de una sentencia por salida colocar Begin End ). Página 12 de 26
13 Condicionales 1. Ingresar valores numéricos enteros A, B, C, D, E y decir si su promedio es mayor que o igual a Ingresar valores numéricos reales A, B, C, y decir si su promedio es mayor que o igual a Ingresar valores numéricos reales a, b, c, que son coeficientes de una ecuación cuadrática y obtener los valores X1 y X2 reales. Si la operación dentro de la raíz diera como resultado un valor negativo, imprimir un cartel que diga La solución son dos números complejos conjugados. 4. Ingresar valores numéricos reales a, b, c, que son coeficientes de una ecuación cuadrática y obtener los valores X1 y X2 reales. Si la operación dentro de la raíz diera como resultado un valor negativo, imprimir el resultado como m + n i; m - n i. 5. Hacer un programa que permita ingresa un número de 1 a 7 y salga el correspondiente día de la semana ( Ej: 1 Lunes; 2 Martes;...). Si ingresa un valor que no este comprendido entre 1 y 7 deberá imprimir un cartel que diga ERROR... valor fuera de rango 6. Hacer un programa que permita ingresa dos números reales y el símbolo de la operación. Obteníendose el correspondiente resultado. Si el símbolo no es correcto, deberá imprimir un mensaje que indique Error en símbolo Página 13 de 26
14 Hasta ahora hemos visto dos tipos de estructuras de control secuenciales selectivas En esta practica veremos el tipo de estructura que nos queda. Repetitivas: Las estructuras repetitivas (llamadas también bucles, lazo o ciclo) se utilizan para realizar varias veces el mismo conjunto de operaciones. Dentro de ellas encontramos aquellas donde la cantidad repeticiones se manejan por un número, las que se realizan hasta que se cumple cierta condición. Son tres la sentencia for y la sentencia while y la sentencia repeat For esta sentencia, es un bucle controlado por un contador, denominado variable de control o índice. Pseudocódigo en español desde variable (v) = vi hasta vf hacer < acción S1> <acción S2 >... fin desde Código se programa for variable (v) = vi to vf do < acción S1> < acción S2>... end Su estructugrama tiene la siguiente forma desde v = vi hasta vf < acción S1> <acción S2 >... Ejemplos: a) Hacer un programa que imprima los números de 5 hasta 28. Página 14 de 26
15 Pseudocódigo del programa nombre repetición1(program); declaraciones (uses) Crt, Dos; constantes(const) A = 5; B = 28; variables (var) R (resultado de la oper.): entero funciones(function)(no hay); procedimientos (procedure); inicio (); limpieza(limpia la pantalla); ciclo (hace ciclo e imprime); salida fin(end.) Diagrama N-S nombre selección1 declaraciones Crt, Dos Constantes A, B Variables R :entero funciones y procedimientos comienzo (programa) limpieza ciclo fin (programa) Como se puede ver tenemos varios procedimientos ya vistos. Por lo tanto solo se desarrollara el pseudocódigo y el estructurado de ciclo, y todo lo que de el dependa. algoritmo ciclo Pseudocódigo del ciclo procedimiento ciclo inicio (); desde R= A hasta B hacer imprimo R fin(end;) El código del procedimiento es: Diagrama N-S desde R = A hasta B imprimir R procedure ciclo; {* comienzo el ciclo *} for R := A to B do {* se define el ciclo A *} writeln ('Numero ',R ); {* imprime salida *} end; {* fin del ciclo *} Quedándonos el programa de la siguiente manera. Program Repeticion_1; {* Este es el primer programa con estructuras de repeticion *} uses crt, dos; {declaraciones} Página 15 de 26
16 const {* constantesr *} A = 5; B = 28; var R: integer; {* controla el ciclo *} procedure limpieza; {* comienzo de limpieza de la pantalla *} ClrScr; end; {* fin de limpieza de la pantalla *} procedure ciclo; {* comienzo el ciclo *} for R := A to B do {* se define el ciclo A *} writeln ('Numero ',R ); {* imprime salida *} end; {* fin del ciclo *} procedure salida; {* comienzo del procedimiento salida *} {*solo sirve para ver los resultados *} Var H :char; writeln ( 'Preione cualquir tecla '); readln (H); {* esta instrucci n y la anterior son para dar tiempo para *} {* ver resultados *} end; {* fin del procedimiento salida *} limpieza; ciclo; salida; end. b) Hacer un programa que calcule e imprima el factorial de los números 1 a 7 Página 16 de 26
17 Pseudocódigo del programa nombre repetición2(program); declaraciones (uses) Crt, Dos; constantes(const) A = 1; B = 7; variables (var) R, Fac (resultado de la oper.): entero procedimientos (procedure); inicio (); limpieza(limpia la pantalla); ciclo2 (hace ciclo e imprime); salida fin(end.) Diagrama N-S nombre selección1 declaraciones Crt, Dos Constantes A, B Variables R, Fac :entero funciones y procedimientos comienzo (programa) limpieza ciclo2 salida fin (programa) pseudocódigo y el estructurado de ciclo, y todo lo que de el dependa. algoritmo ciclo Pseudocódigo del ciclo Diagrama N-S procedimiento ciclo inicio (); desde R= A hasta B hacer Fac Fac * R imprimo Fac fin_desde fin(end;) desde R = A hasta B Fac Fac * R imprimir Fac. Como se puede ver dentro del ciclo se hace dos procesos, el cálculo del factorial y la impresión del resultados quedándonos este algoritmo estructurado. El código del procedimiento es: procedure ciclo; {* comienzo el ciclo *} Fac := 1; for R := A to B do {* se define el ciclo A *} Fac := Fac * R; {* Calcula factorial *} writeln ('Numero : ',R, ' Factorial : ',Fac ); {* imprime salida numero y factorial *} end end; {* fin del ciclo *} Como se puede observar el se necesitó colocar un y un end para definir comienzo y fin del ciclo, ya que el mismo tiene más de una instrucción. Fac se define igual a uno, porque sino el producto nos daria siempre 0 (cero). Quedándonos el programa de la siguiente manera. Página 17 de 26
18 Program Repeticion_2; {* Este es el segundo ejemplo de For *} uses crt, dos; {declaraciones} const {* constantesr *} A = 1; B = 7; var R, Fac : integer; {* controla el ciclo *} procedure limpieza; {* comienzo de limpieza de la pantalla *} ClrScr; end; {* fin de limpieza de la pantalla *} Procedure ciclo; {* comienzo el ciclo *} Fac := 1; for R := A to B do {* se define el ciclo A *} Fac := Fac * R; {* Calcula factorial *} writeln ('Numero : ',R, ' Factorial : ',Fac ); {* imprime salida numero y factorial *} end end; {* fin del ciclo *} procedure salida; {* comienzo del procedimiento salida *} {* solo sirve para ver resultados *} Var H :char; writeln ( 'Preione cualquir tecla '); readln (H); {* esta instrucci n y la anterior son para dar tiempo para *} {* ver resultados *} end; {* fin del procedimiento salida *} limpieza; ciclo; salida; end. Hay que tomar en cuenta que los ciclos cumplen con las mismas reglas que las opciones tiene más de una instrucción el ciclo deberá llevar un con su correspondiente end cuando se tenga más de una instrucción.. Si fuera B > A el for seria for K = A donwto B do Página 18 de 26
19 Bucles controlados por una bandera (While - Repeat) Estos bucles no se repiten una cantidad definida de veces, sino se realizan hasta que se cumple una cierta condición. La diferencia entre ambos bucles (While y Repeat) es cuando se realiza la pregunta de la condición. While : en este ciclo la pregunta de condición se hace cada vez antes de comenzar el ciclo. Ejemplo : Se pide un programa donde ingresan una serie de números, el último es un valor negativo. Se pide calcular el promedio de los valores positivos (no incluir el último valor), e imprimir los valores y su promedio. En este caso tenemos que pautar si el último valor lo imprimimos o no. (si optamos por imprimirlo), esto implicará el siguiente pseudocódigo. Página 19 de 26
20 Pseudocódigo del ciclo Diagrama N-S procedimiento ciclo inicio (); N 0 N 0 S 0 leo A S 0 imprimo A Leo A mientras A >= 0 hacer Imprimo A comenzar mientras A >= 0 hacer S S + A S S + A N N + 1 N N + 1 leo A Leo A imprimo A Imprimo A. terminar fin(end;) Como se puede ver dentro del ciclo se hace dos procesos, el cálculo del factorial y la impresión del resultados quedándonos este algoritmo estructurado. El código del procedimiento es: procedure ciclo; {* comienzo de ciclo *} S := 0; N := 0; write ( 'Ingrese un valor '); read (A); {* esta instrucci n y la anterior son el ingreso de datos *} writeln ( 'El valor es : ',A ); {* esta instrucci n imprime el valor *} WHILE A >= 0 DO {* se define el ciclo *} {* comienzo de While *} S := S + A; {* Calcula la suma de valores *} N := N + 1; {* Calcula la cantidad de valores *} writeln ; {* Salta una linea *} write ( 'Ingrese un valor '); read (A); {* esta instruccion y la anterior son el ingreso de datos *} writeln ( 'El valor es : ',A ); {* esta instrucci n imprime el valor *} end {* fin de While *} end; {* fin de ciclo *} Quedándonos el programa de la siguiente manera. Program Repeticion_3; {* Este es el ejemplo de While *} uses crt, dos; {declaraciones} {const} {* constantes no hay*} var A, N, S : integer; {* controla el ciclo *} Prom :real; procedure limpieza; {* comienzo de limpieza de la pantalla *} ClrScr; end; {* fin de limpieza de la pantalla *} Página 20 de 26
21 procedure ciclo; {* comienzo de ciclo *} S := 0; N := 0; write ( 'Ingrese un valor '); read (A); {* esta instrucción y la anterior son el ingreso de datos *} writeln ( 'El valor es : ',A ); {* esta instrucción imprime el valor *} WHILE A >= 0 DO {* se define el ciclo *} {* comienzo de While *} S := S + A; {* Calcula la suma de valores *} N := N + 1; {* Calcula la cantidad de valores *} writeln ; {* Salta una linea *} write ( 'Ingrese un valor '); read (A); {* esta instrucci n y la anterior son el ingreso de datos *} writeln ( 'El valor es : ',A ); {* esta instrucci n imprime el valor *} end {* fin de While *} end; {* fin de ciclo *} procedure promedia; {* comienzo de promedia *} Prom := S / N; {* Calcula el promedio *} writeln ; {* Salta una linea *} writeln ; {* Salta una linea *} writeln ( 'Promedio es = ', Prom:5:2 ); {* Imprime el promedio *} end; {* fin de promedia *} procedure salida; {* comienzo del procedimiento salida *} {* solo sirve para ver resultados *} Var H :char; writeln ( 'Preione cualquir tecla '); readln (H); {* esta instrucci n y la anterior son para dar tiempo para *} {* ver resultados *} end; {* fin del procedimiento salida *} limpieza; ciclo; promedia; salida; end. En el procedimiento promedia en la escritura del promedio, aparece writeln ( 'Promedio es = ', Prom:5:2 ); {* Imprime el promedio *} donde Prom:5:2 significa que la variable Prom será escrita en un formato de 5 caracteres, de los cuales 2 corresponden a los decimales, se necesita un carácter para el punto decimal. Repeat : esta solución se utiliza cuando el ciclo debe incluir el último valor ingresado. Ya que la pregunta se hace al final del ciclo. Ejemplo : Se ingresan una serie de números distintos, el último es el valor 12. Se pide un programa que calcule el promedio de los valores (incluir el último valor), e imprimir los valores y su promedio. Pseudocódigo del ciclo procedimiento ciclo inicio (); Página 21 de 26
22 N 0 S 0 repetir leo A imprimo A S S + A N N + 1 hasta_que A = 12 fin(end;) Diagrama N-S N 0 S 0 Leo A Imprimo A S S + A N N + 1. hasta_que A = 12 El código del procedimiento es: procedure ciclo; {* comienzo el ciclo *} S := 0; N := 0; repeat {* comienza ciclo *} write ( 'Ingrese un valor '); read (A); {* esta instrucci n y la anterior son el ingreso de datos *} writeln ( 'El valor es : ',A ); {* esta instrucci n imprime el valor *} writeln ; {* Salta una linea *} S := S + A; {* Calcula la suma de valores *} N := N + 1; {* Calcula la cantidad de valores *} until A = 12; {* definicion al final del ciclo *} end; {* fin del ciclo *} Quedándonos el programa de la siguiente manera. Program Repeticion_4; {* Este es el ejemplo de Repeat - Until *} uses crt, dos; {declaraciones} {const} {* constantesr no hay*} var A, N, S : integer; {* controla el ciclo *} Prom :real; procedure limpieza; {* comienzo de limpieza de la pantalla *} ClrScr; end; {* fin de limpieza de la pantalla *} procedure ciclo; {* comienzo el ciclo *} S := 0; N := 0; repeat {* comienza ciclo *} write ( 'Ingrese un valor '); read (A); {* esta instrucci n y la anterior son el ingreso de datos *} Página 22 de 26
23 writeln ( 'El valor es : ',A ); {* esta instrucci n imprime el valor *} writeln ; {* Salta una linea *} S := S + A; {* Calcula la suma de valores *} N := N + 1; {* Calcula la cantidad de valores *} until A = 12; {* definicion al final del ciclo *} end; {* fin del ciclo *} procedure promedia; {* comienzo de promedia *} Prom := S / N; {* Calcula el promedio *} writeln ; {* Salta una linea *} writeln ; {* Salta una linea *} writeln ( 'Promedio es = ', Prom:5:2 ); {* Imprime el promedio *} end; {* fin de promedia *} procedure salida; {* comienzo del procedimiento salida *} {* solo sirve para ver resultados *} Var H :char; writeln ( 'Preione cualquir tecla '); readln (H); {* esta instrucci n y la anterior son para dar tiempo para *} {* ver resultados *} end; {* fin del procedimiento salida *} limpieza; ciclo; promedia; salida; end. Como se puede observar esta estructura (repeat-until) carece de y end, ya que los dos extremos están definidos por el propio ciclo. Anidación Se pueden colocar un ciclo dentro de otro (anidar), esto quiere decir que una estructura contiene en su interior a otra. Las estructuras pueden ser de igual o de distinto tipo. Siempre que se cumpla con las condiciones que aparecen en la siguientes figuras. Resumen: anidado anidado incorrecto Existen tres tipos de estructuras repetitivas a) For Página 23 de 26
24 b) While c) Repeat - until Cada uno tiene su aplicación específica y se debe tener cuidado cuando se anidan. Página 24 de 26
25 Repetitivas 1. Leer una lista de 10 valores enteros. Calcular e informar: a) La suma de los valores positivos. b) El producto de los valores negativos. (Ignorar los valores nulos) 2. a) Ingresar 5 juegos de cuatro valores cada uno. Calcular y emitir. El promedio de cada juego. b) Ingresar N juegos de cuatro valores cada uno. Calcular y emitir. El promedio de cada juego. El proceso finaliza al encontrarse un juego cuyo primer valor es Ingresar dos números enteros positivos y calcular el producto de los mismos por sumas sucesivas. 4. Leer una lista de números positivos que finaliza en 0 y emitir el valor mínimo de la lista. 5. Leer una lista de números enteros que finaliza en 0 y emitir el valor máximo de la lista. 6. Ídem 5, emitiendo además la ubicación del máximo dentro de la lista. (Suponer un único máximo). 7. Leer 4 juegos de N valores enteros cada uno, donde N se informa al comienzo de cada juego, y emitir el valor máximo de cada grupo. (Suponer un único máximo ). 8. Dada una lista de valores numéricos positivos, finalizada en 0, indicar si esta ordenada en forma ascendente. 9. Una empresa nos informa para cada uno de sus 20 vendedores: código de vendedor : 3 dígitos importe de ventas del mes : real Se desea emitir el importe máximo de ventas del mes y cuántos vendedores alcanzaron dicho importe. 10.En una Central Telefónica se procesan los llamados realizados en la siguiente forma: Por cada llamada se ingresa: código de llamada : 3 dígitos (0 al finalizar el proceso) tipo de día : 1 hábil, 2 feriado duración de la llamada : entero > 0. Siendo los importes Primeros 3 Minuto Adicional Página 25 de 26
26 Días hábiles a 10 a 2 Feriados a 15 a 3 Se deberá emitir: a) El importe a abonar por cada llamada (código - importe). b) La cantidad de llamadas que superen los 3 c) El % de llamados que superan los 3 (sobre el total de llamadas informadas). 11.Se leen 30 valores enteros (comprendidos entre 5 y 40), que representan la temperatura máxima de cada uno de los días de un mes. Se pide hallar e informar : - La temperatura máxima del mes y el día que se produjo. (Se supone única) - Cuántos días la temperatura supero los 25º C. - El promedio de las temperaturas máxima del mes. 12.Se ingresan los resultados de la evaluación de un curso de Programación ; por cada alumno se informa: número de matricula : 4 dígitos (1-9999) asistencia : 1, presente; o, ausente calificación : 2 dígitos (0-10). A partir de esta información se debe calcular e informar: a) Cantidad y % de alumnos presentes. b) Promedio de calificaciones de alumnos presentes. c) % de alumnos aprobados (sobre el total de alumnos presentes). d) Numero de matricula del alumno de mayor calificación. (Si hay varios alumnos con esa calificación: numero de matricula y cantidad de alumnos en esa situación). Página 26 de 26
Estructura If Esta sentencia, es considerada de alternativa doble (si se cumple condición entonces..., sino... / If... then... else... ).
ESTRUCTURAS SELECTIVAS En el capítulo 3 se vio que cada instrucción se ejecutaba en el orden en que se había escrito, pero esto no siempre ocurre así, ya que muchas veces es necesario usar estructuras
Más detallesEstructura de datos (arreglos) Vectores y Matrices
Apunte del curso PROGRAMACIÓN (FI-UBA,, J. T. P. Ing. Z. CATALDI; A.T.P. Srta. A Pauluzzi, Sr. C Corradino, Sr. F Gómez Estructura de datos (arreglos) Hasta aquí se han visto distintos tipos de estructuras
Más detallesSUBRANGO ENUMERADOS CONJUNTOS
Apunte del curso ALGORITMOS y PROGRAMACIÓN (FI-UBA, Prof. Ing. F. J. LAGE, J. T. P. Ing. Z. CATALDI; A.T.P. Srta. A Pauluzzi, Sr. C Corradino, Sr. F Gómez SUBRANGO ENUMERADOS CONJUNTOS SUBRANGO: Un tipo
Más detallesApunte Laboratorio ALPI - El lenguaje de programación Pascal
Apunte Laboratorio ALPI - El lenguaje de programación Pascal 1 2 ÍNDICE GENERAL Índice 1. Estructura de un Programa en Pascal 3 2. Sintaxis de Pascal 4 2.1. Uso de mayúsculas.....................................
Más detallesControl de Flujo. Estructuras de Control! Experiencia Educativa de Algorítmica CONTROL DE FLUJO
Control de Flujo Estructuras de Control Experiencia Educativa de Algorítmica 1 Introducción El estilo de como escribimos y analizamos un algoritmo se convierte en una de las principales características
Más detallesESTRUCTURA SECUENCIAL ESTRUCTURA SELECTIVA
ESTRUCTURA SECUENCIAL Es aquélla en la que una acción (instrucción) sigue a otra en secuencia. Las tareas se suceden de tal modo que la salida de una es la entrada de la siguiente y así sucesivamente hasta
Más detallesInicio del programa. Entrada de datos. Proceso de datos. Salida de datos. Fin del programa
PROGRAMACIÓN 10. Prof. Dolores Cuiñas H. Recuerde que estos son apuntes muy simplificados que deberá completar con la bibliografía recomendada APUNTES Nº 4 ESTRUCTURA SECUENCIAL GENERAL La estructura secuencial
Más detallesControl de Flujo. Estructuras de Control! Experiencia Educativa de Algorítmica CONTROL DE FLUJO
Control de Flujo Estructuras de Control Experiencia Educativa de Algorítmica 1 Introducción El estilo de como escribimos y analizamos un algoritmo se convierte en una de las principales características
Más detallesDISEÑO ESTRUCTURADO USANDO HERRAMIENTAS DE
DISEÑO ESTRUCTURADO USANDO HERRAMIENTAS DE REPRESENTACIÓN DE ALGORITMOS PSEUDOCÓDIGO El pseudocódigo es una herramienta de programación en la que las instrucciones se escriben en palabras similares al
Más detalles1. Lenguaje Pascal. 2. Módulos de un Programa. 3. Tipos de Datos más utilizados. 4. Declaración de Variables
1. Lenguaje Pascal Se procederá a la comparación de las estructuras de programación utilizadas en pseudocódigo con las respectivas en lenguaje Pascal. Para ello, se seguirá de manera análoga a la descripción
Más detallesEl 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
El 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,
Más detallesProgramación Estructurada
Programación Estructurada Técnica de programación que consiste en construir programas de fácil comprensión. Es mucho más sencillo entender la codificación del programa, que se habrá hecho en diferentes
Más detallesFUNDAMENTOS DE PROGRAMACIÓN LABORATORIO SESIÓN 2
FUNDAMENTOS DE PROGRAMACIÓN LABORATORIO SESIÓN 2 EJERCICIO 1 VALIDACIÓN DE DATOS DE ENTRADA Modificar el programa del cálculo del MCD de dos números enteros positivos para validar los datos de entrada
Más detallesMódulo 7: Sentencias de control en Pascal
Módulo 7: Sentencias de control en Pascal Tecnologías en la Educación Matemática Dr. Carlos Gonzalía DCIC - UNS Técnologías en la educación matemática Dr. Carlos Gonzalía 1 de Copyright Copyright 2010,
Más detallesSentencia1 Sentencia2 Cuerpo del bucle
PROGRAMACIÓN 10 Prof. Dolores Cuiñas H. Recuerde que estos son apuntes muy simplificados que deberá completar con la bibliografía recomendada APUNTES Nº 6 ESTRUCTURAS DE CONTROL REPETITIVAS: son aquellas
Más detallesResolución de Problemas y Algoritmos
RESOLUCIÓN DE PROBLEMAS Y ALGORITMOS CLASE 3 Definición y compatibilidad de tipos de datos. Sentencia condicional CASE. Luciano H. Tamargo http://cs.uns.edu.ar/~lt Depto. de Ciencias e Ingeniería de la
Más detalles6. Estructuras básicas de control 1. Pseudocódigo
6. Estructuras básicas de control 1 Acciones Pseudocódigo Slide 1 Estructuras de control Secuencia Selección simple (si... entonces... ) doble (si... entonces... si no... ) múltiple (según el caso... )
Más detallesTema 3. Estructuras de Datos
Tema 3! Estructuras de Datos Estructuras Simples, Doble, Anidada y Múltiple En este tema veremos las sentencias selectivas: IF (Si) IF - Then (Si - Entonces) IF - Then - Else ( Si - Entonces - Sino) Switch
Más detallesEnteros. Son los números que no contienen componentes fraccionarios y, por tanto, no contienen punto decimal.
LENGUAJE DE PROGRAMACIÓN TURBO PASCAL El lenguaje de programación de alto nivel Pascal fue diseñado el 1968 por Niklaus Wirth con una finalidad eminentemente pedagógica El 1983, el Pascal fue estandarizado
Más detallesUnidad 4. Lógica de Programación. Prof. Eliana Guzmán U.
Unidad 4. Lógica de Programación Prof. Eliana Guzmán U. 4.1 Programación Modular Raíz Módulo 1 Módulo 2 Módulo 3 Módulo 4 Módulo 11 Módulo 12 Módulo 31 Módulo 121 Módulo 122 4.2 Programación Estructurada
Más detallesUniversidad Autónoma del Estado de México Facultad de Medicina
Universidad Autónoma del Estado de México Facultad de Medicina Licenciatura en Bioingeniería Médica Unidad de Aprendizaje: Algoritmos y programación básica Unidad 3: Estructuras de control de flujo en
Más detalles24/8/2018. cuota monto/cantcuotas
PROBLEMA: A partir del monto de un crédito y la cantidad de cuotas se desea calcular el monto de cada cuota. Datos de entrada y de salida? Algoritmo ValorDeCuota DE: monto, cantcuotas (enteros) DS: cuota
Más detallesla solución a una ecuación cuadrática solicitando al usuario los términos de dicha ecuación.
ALGORITMOS SECUENCIALES: La estructura secuencial es aquella en la que una acción (instrucción) sigue a otra en secuencia. Las tareas se suceden de tal modo que la salida de una es la entrada de la siguiente
Más detallesControl de Flujo II. Estructuras Repetitivas
Control de Flujo II. Estructuras Repetitivas Fundamentos de programación Plan general... Introducción... Control de flujo toma de decisiones... Estructuras condicionales. Resumen. OBJETIVOS Presentar unos
Más detallesResolución de Problemas y Algoritmos Clase 6: Repetición (continuación)
Resolución de Problemas y Algoritmos Clase 6: Repetición (continuación) Dr. http://cs.uns.edu.ar/~sag Departamento de Ciencias e Ingeniería de la Computación Universidad Nacional del Sur Bahía Blanca,
Más detallesProgramación I. Ingeniería Técnica Informática. Ejercicios de los Temas 4, 5, 6 y 7
Estructuras selectivas Programación I Ingeniería Técnica Informática Ejercicios de los Temas 4, 5, 6 y 7 24.- Elabore un programa para determinar si una hora leída en la forma horas, minutos y segundos
Más detallesESTRATEGIA DIDÁCTICA Estructura de control de secuencia: IF THEN ELSE
I.DATOS GENERALES PROFESOR(A) ASIGNATURA SEMESTRE ESCOLAR PLANTEL Margarita Lugo Rocha Cibernética y Computación II Sexto Semestre Vallejo FECHA DE ELABORACIÓN 10 de diciembre 2010 II.PROGRAMA UNIDAD TEMÁTICA
Más detalles28/08/2018. Dra. Jessica Andrea Carballido. cuota monto/cantcuotas
PROBLEMA: A partir del monto de un crédito y la cantidad de cuotas se desea calcular el monto de cada cuota. Dra. Jessica Andrea Carballido jac@cs.uns.edu.ar Datos de entrada y de salida? Algoritmo ValorDeCuota
Más detallesALGORÍTMICA. Dpto. Ingeniería de Sistemas y Automática Facultad de Ciencias Universidad de Valladolid.
ALGORÍTMICA Dpto. Ingeniería de Sistemas y Automática Facultad de Ciencias Universidad de Valladolid. Indíce Algoritmo Elementos de un algoritmo: Variables, Constantes, Expresiones Datos: Definición y
Más detallesResolución de Problemas y Algoritmos
RESOLUCIÓN DE PROBLEMAS Y ALGORITMOS CLASE Estructura de control condicional. Luciano H. Tamargo http://cs.uns.edu.ar/~lt Depto. de Ciencias e Ingeniería de la Computación Universidad Nacional del Sur,
Más detallesFundamentos de Programación. Flujo de Control I: Estructuras selectivas
Fundamentos de Programación Flujo de Control I: Estructuras selectivas El Flujo de Control de un Programa Un algoritmo puede ser construido utilizando combinaciones de tres estructuras de control de flujo
Más detalles3.2. Programación estructurada. Principal. Modulo 1 Modulo 2 Modulo 3 Modulo 4. Modulo Modulo Modulo 3 1 Modulo 4 1 Modulo 4 2. Pág.
CAP. 3. PROGRAMACION ESTRUCTURADA 3.1. Técnicas de programación Las herramientas de programación fundamentalmente los diagramas de flujo, son las representaciones gráficas utilizada para el diseño de algoritmos
Más detallesIteración Diagrama de SINTAXIS: IF
VISION ESTATICA VISION DINAMICA Dra. Jessica Andrea Carballi jac@cs.uns.edu.ar Dpto. de Ciencias e Ingeniería de la Computación UNIVERSIDAD NACIONAL DEL SUR Diagrama de SINTAXIS: IF estática Diagrama de
Más detallesTema 3. Estructuras de control
Tema 3. Estructuras de control 3.1. Secuencial 3.2. Selección 3.3. Repetición 2 Objetivos Objetivos del tema: Conocer y saber la utilidad de las tres estructuras de control (secuencial, alternativa y repetitiva)
Más detallesProgramación Estructurada
Programación Estructurada Código de materia 01 Prof Titular Ing Rafael Brizuela Facultad de tecnología informática UNIVERSIDAD ABIERTA INTERAMERICANA GUÍA DE REPASO CONCEPTUAL PREGUNTAS Unidad 1: Conceptos
Más detallesResolución de Problemas y Algoritmos Segundo cuatrimestre 2015 Clase 11: Construcción de primitivas (Funciones)
Resolución de Problemas y Algoritmos Segundo cuatrimestre 2015 Clase 11: Construcción de primitivas (Funciones) Dr. Sergio A. Gómez http://cs.uns.edu.ar/~sag Departamento de Ciencias e Ingeniería de la
Más detallesALGORITMOS Y ESTRUCTURAS DE DATOS PRIMERA PARTE
ALGORITMOS Y ESTRUCTURAS DE DATOS Ejercicios Resueltos: CUADERNILLO DE PRACTICA PRIMERA PARTE I - Entrada, salida, asignación de datos Algoritmos y Estructuras de Datos Ejercicio Resuelto: Dados dos números
Más detallesTipos y Estructuras de Control. Dpto. de Ciencias e Ingeniería de la Computación UNIVERSIDAD NACIONAL DEL SUR
Tipos y Estructuras de Control Dpto. de Ciencias e Ingeniería de la Computación UNIVERSIDAD NACIONAL DEL SUR Datos: variables y constantes Tipos básicos: entero, real, char, lógico Estructuras de control
Más detallesTrabajo Práctico Nº 4 Iteración
Trabajo Práctico Nº 4 Iteración Ejercicio 1: Realice una traza y muestre la salida de cada secuencia de instrucciones. for i:= 0 to 0 do for i:= 1 to -1 do for i:= 1 downto 0 do Ejercicio 2: Escriba un
Más detalles1. ESTRUCTURA DE UN PROGRAMA PASCAL Todo programa escrito en lenguaje Pascal, del más simple al más complejo, tiene la siguiente estructura:
1. ESTRUCTURA DE UN PROGRAMA PASCAL Todo programa escrito en lenguaje Pascal, del más simple al más complejo, tiene la siguiente estructura: PROGRAM Nombre_del_programa; ZONA de DECLARACIONES ZONA de INSTRUCCIONES
Más detallesMódulo. = Asignación = = Comp. de igualdad!= Com. de desigualdad <= Comp. menor o igual >= Comp. mayor o igual AND lógico OR lógica.
EQUIVALENCIAS BÁSICAS ENTRE PASCAL Y C A continuación se presentan algunas equivalencias básicas entre estos lenguajes de programación : Operadores en lenguaje C: Operador Descripción % Módulo = Asignación
Más detallesEstructuras Repetitivas
Estructuras Repetitivas Se solicita al operador que ingrese tres números enteros cualesquiera. En base a estos números, mostrar por pantalla cual es el mayor de todos. Diag. De Flujos Pseudocódigo Matlab
Más detallesINSTITUTO POLITECNICO NACIONAL CENTRO DE ESTUDIOS CIENTIFICOS Y TECNOLOGICOS " GONZALO VAZQUEZ VELA "
INSTITUTO POLITECNICO NACIONAL CENTRO DE ESTUDIOS CIENTIFICOS Y TECNOLOGICOS " GONZALO VAZQUEZ VELA " GUIA DE ESTUDIOS DE ANALISIS Y DISEÑO DE ALGORITMOS. 1. Qué es un algoritmo? 2. Qué es un Pseudocódigo?
Más detallesCONTENIDOS MATEMÁTICA 1ER. AÑO BI Y 1ER AÑO BE
CONTENIDOS MATEMÁTICA 1ER. AÑO BI Y 1ER AÑO BE Contenido 1: Números Naturales Formulas en N: Producción de fórmulas que permitan calcular el paso n de un proceso que cumple una cierta regularidad. Transformaciones
Más detallesFundamentos de Informática
Fundamentos de Informática Tema 5 Estructuras de Control 1 Contenidos La estructura secuencial La estructura condicional Condicional simple Multicondicional Sentencia SELECT CASE Estructuras de control
Más detallesRepaso Visual Basic Interfaz Gráfica
Interfaz Gráfica Ventana del Proyecto Barras De Menús Barras Herramientas Formulario (Form) Ventana del Propiedades Form Layout Posición del Formulario Códigos de Colores en Vbasic 1 Códigos de Colores
Más detallesTIPOS DE DATOS. Tipos de Datos
Apunte del curso ALGORITMOS y PROGRAMACIÓN (FI-UBA, Prof. Ing. F. J. LAGE, J. T. P. Ing. Z. CATALDI; A.T.P. Srta. A Pauluzzi, Sr. C Corradino, Sr. F Gómez TIPOS DE DATOS Los diferentes objetos de información
Más detallesEstructura Selectiva Múltiple
Estructura Selectiva Múltiple Con frecuencia en la práctica se presentan más de dos elecciones posibles de una cierta condición. La estructura selectiva múltiple se utiliza para este tipo de problemas,
Más detallesIntroducción a la Informática Estructuras de control repetitivas
Estructuras de control repetitivas Introducción Hasta el momento se estudió la manera de expresar la solución de un problema mediante un algoritmo, que puede representarse de diversas maneras: diagrama
Más detalles1. Detalle de los Comandos:
1. Detalle de los Comandos: Este es un resumen puede servir como guía rápida para consultas, para mas detalles remitirse a la Ayuda de PSeInt. Observar que cada línea que termina una sentencia debe tener
Más detallesArreglos y Subrangos
Arreglos y Subrangos Programación 1 InCo - FING Contents 1 Tipo subrango 2 1.1 Subrangos de enteros......................... 2 1.2 Subrangos de caracteres....................... 2 1.3 Operaciones con subrangos.....................
Más detallesEstructuras de control
Estructuras de control Introducción Los algoritmos vistos hasta el momento han consistido en simples secuencias de instrucciones; sin embargo, existen tareas más complejas que no pueden ser resueltas empleando
Más detallesAPUNTES DE CÁTEDRA: ARREGLOS MULTIDIMENSIONALES
Facultad de Ciencias Exactas, Ingeniería y Agrimensura (U.N.R.) Escuela de Ciencias Exactas y Naturales Departamento de Matemática Cátedra: Computación (L.M. - P.M.) Prof. responsable: Mgr. María del Carmen
Más detallesDISEÑO ESTRUCTURADO. Herramientas de representación de algoritmos
DISEÑO ESTRUCTURADO Herramientas de representación de algoritmos DISEÑO ESTRUCTURADO Técnica para desarrollar algoritmos Fáciles de escribir Leer Verificar Modificar ALGORITMO ESTRUCTURADO Tiene un solo
Más detallesIntroducción al Lenguaje de Programación Ada
Instrumentación de Tiempo Real Introducción al Lenguaje de Programación Ada Mario Aldea Rivas Departamento de Electrónica y Computadores Universidad de Cantabria GRUPO DE COMPUTADORES Y TIEMPO REAL Mario
Más detallesManual de turbo pascal
Universidad Nacional Experimental De Los Llanos Occidentales Ezequiel Zamora UNELLEZ-Barinas Manual de turbo pascal Bachilleres: Martinez Ninibeth C.I:20.867.002 Mora Yaco C.I:17.205.073 Estructura de
Más detallesProcedimientos, Funciones y Recursividad
Procedimientos, Funciones y Recursividad Gonzalo Soriano gsorianob@gmail.com 7 de abril de 2009 Divide y vencerás 1. Introducción a procedimientos y funciones. Un procedimiento o función es un bloque de
Más detallesEstructuras de Control
Algorítmica y Lenguajes de Programación Estructuras de Control Estructuras de Control. Introducción Hasta ahora algoritmos han consistido en simples secuencias de instrucciones Existen tareas más complejas
Más detallesU nidad 6: A rreglos: U nidim ensionales y m ultidim ensionales
ARREGLOS Introducción Primero que todo, es importante conocer el concepto de estructura de datos. Una estructura de datos es "una colección de datos organizados de un modo particular." Las estructuras
Más detalles28/10/2016. Procesamiento de Secuencias. Procesamiento de Secuencias. Procesamiento de Secuencias. Procesamiento de Secuencias
Un tipo particular de problemas para el cual resulta adecuada la iteración es el procesamiento de secuencias de valores. Dra. Jessica Andrea Carballi jac@cs.uns.edu.ar Dpto. de Ciencias e Ingeniería de
Más detallesRecursión. Recursión continuación
Recursión Recursión continuación Recursión Temas que veremos hoy Estructuras de control iterativas, repetitivas y la recursión. Ejemplos recursivos Búsqueda lineal Eficiencia y recursión Conclusiones Recursión
Más detallesEstructuras de Control Selección o Decisión
Estructuras de Control Selección o Decisión Corina Flores Villarroel UMSS 1 Introducción Al ser un algoritmo una secuencia de pasos ordenados, estos deben seguir una trayectoria para su ejecución desde
Más detallesUNIDAD ACADÉMICA PROFESIONAL TIANGUISTENCO
UNIDAD ACADÉMICA PROFESIONAL TIANGUISTENCO LICENCIATURA EN PRODUCCIÓN INDUSTRIAL. UNIDAD DE APRENDIZAJE: PROGRAMACIÓN Créditos institucionales de la UA: 6 Material visual: Diapositivas Unidad de competencia
Más detallesResolución de Problemas y Algoritmos
CONSULTA RESOLUCIÓN DE PROBLEMAS Y ALGORITMOS CAMBIA DE HORARIO LA CONSULTA DEL PROFESOR! DESDE LA SEMANA DEL 0/0 SERÁ LOS VIERNES A LAS 7HS EN EL NUEVO EDIFICIO DEL DCIC. CLASE Funciones definidas por
Más detallesIntroducción a la Algorítmica Transparencias correspondientes a las clases impartidas por los profesores: Lourdes Miró Amarante Ignacio García Vargas
Dpto. de ATC - Página 1 de 16 CONCEPTO DE ALGORITMO (1) Fundamentos de Informática E.U.P. Universidad de Sevilla Introducción a la Algorítmica Transparencias correspondientes a las clases impartidas por
Más detallesIntroducción a los Computadores (CNM-130) Estructuras de control repetitivas en FreeMat
Introducción a los Computadores (CNM-130) Estructuras de control repetitivas en FreeMat Alejandro Piedrahita H. Instituto de Matemáticas Facultad de Ciencias Exactas y Naturales Universidad de Antioquia
Más detallesDpto. de ATC, Universidad de Sevilla - Página 1 de 16
Dpto. de ATC, Universidad de Sevilla - Página 1 de 16 2 ÍNDICE Fundamentos de Informática E.U.P. Universidad de Sevilla 1 Concepto de Algoritmo Datos: Variables y Constantes Tipo de datos: Vectores Representación
Más detallesConstante: Una constante es un dato numérico o alfanumérico que no cambia durante la ejecución del programa.
Constantes y variables Constante: Una constante es un dato numérico o alfanumérico que no cambia durante la ejecución del programa. pi = 3.1416 Variable: Es un espacio en la memoria de la computadora que
Más detallesALGORITMOS Y ESTRUCTURAS DE DATOS EJERCICIOS RESUELTOS SEGUNDA PARTE
ALGORITMOS Y ESTRUCTURAS DE DATOS EJERCICIOS RESUELTOS CUADERNILLO DE PRACTICA SEGUNDA PARTE Página - 1 ARREGLOS a) Unidimensionales: Ejercicio Resuelto: Ingresar 20 números reales en un arreglo y luego
Más detallesESTRUCTURAS REPETITIVAS
DOCENTE: Ing. Ronald Rentería Ayquipa MARCO TEÓRICO: ESTRUCTURAS REPETITIVAS La programación estructurada es un paradigma que consiste en la organización de un código en bloques conformados por estructuras
Más detallesUnidades en PASCAL (Units)
Programación II - Prof. Alejandro H. Gonzalez - 1 Unidades en PASCAL (Units) Aquellos que quieran probar los ejercicios de TAD en Pc pueden utilizar las UNITS de Pascal. En este documento se explican los
Más detallesConceptos. Generales ALGORITMOS
Conceptos 1 Generales ALGORITMOS Que es un Algoritmo? 2 Es un conjunto preescrito de instrucciones o reglas bien definidas, ordenadas y finitas que permite realizar una actividad mediante pasos sucesivos
Más detalles21/03/2018. Variables y Constantes. Los datos de un programa están representados por variables o constantes y tienen asociado un tipo.
Variables y Constantes Dra. Jessica Andrea Carballido jac@cs.uns.edu.ar Dpto. de Ciencias e Ingeniería de la Computación UNIVERSIDAD NACIONAL DEL SUR Los datos de un programa están representados por variables
Más detallesAlgoritmo, Estructuras y Programación I Ing. Marglorie Colina
Unidad II: Fundamentos de la Programación Estructurada Algoritmo, Estructuras y Programación I Ing. Marglorie Colina Estructura General de un Programa Zona de ficheros de cabecera de las librerías Zona
Más detallesDra. Jessica Andrea Carballido
Dra. Jessica Andrea Carballido jac@cs.uns.edu.ar Dpto. de Ciencias e Ingeniería de la Computación UNIVERSIDAD NACIONAL DEL SUR Problema Diseño de la solución Dividir y conquistar Implementación de los
Más detalles1. Estructuras de decisión: simples (SI..ENTONCES..SINO) y múltiples (CASO)
1. Estructuras de decisión: simples (SI..ENTONCES..SINO) y múltiples (CASO) Bueno, aquí estamos de nuevo con un nuevo fascículo. Trataremos de ver las estructuras de decisión, que en el caso de Turbo Pascal
Más detallesTEMA 4. ESTRUCTURAS DE CONTROL
M.P. Sesmero, P. de Toledo, F.J. Ordoñez, J. Gómez-Romero, J.A. Iglesias, J.L. Mira Programación TEMA 4. ESTRUCTURAS DE CONTROL Grado en Ingeniería en Tecnologías Industriales Programación CONTENIDOS 4.1.
Más detallesPrimer Parcial. Programación 1 Instituto de Computación Año 2017
Nº Parcial: Nombre: CI: Primer Parcial. Programación 1 Instituto de Computación Año 2017 a) -1919293949 b) -1-1-1-1-1-1 c) 01020304050 d) No imprime nada e) 012345 Respuesta: 3 Observaciones: Cada ejercicio
Más detallesEstructuras de Decisión Múltiple
Estructuras de Decisión Múltiple Prof. Andrés Arcia Departamento de Computación Escuela de Ingeniería de Sistemas Facultad de Ingeniería Universidad de Los Andes Programación Digital I 1 Estructura de
Más detallesFundamentos de Programación
Fundamentos de Programación COMENTARIOS Microsoft Visual Basic interpreta que todo lo que está a la derecha del carácter ( ) en una línea cualquiera de programa es un comentario y no ejecuta acción alguna.
Más detallesESTRUCTURAS DE CONTROL
ESTRUCTURAS DE CONTROL En lenguajes de programación, las estructuras de control permiten modificar el flujo de ejecución de las instrucciones de un programa. Con las estructuras de control se puede: De
Más detallesTrabajo Práctico Nro. 1
Trabajo Práctico Nro. 1 INSTITUTO de TECNOLOGÍA O. R. T. Diagramar algoritmos para resolver los problemas planteados. Objetivos de esta práctica: Pretendemos que al finalizar esta ejercitación el alumno
Más detallesINTRODUCCIÓN A LA PROGRAMACIÓN EXTRUCTURADA
INTRODUCCIÓN A LA PROGRAMACIÓN EXTRUCTURADA ETIMOLOGIA Desde la antigüedad la Programación se ha venido dando un interés mutuo y esto se puede ver en la actualidad teniendo como base la ampliación de las
Más detallesLa resolución de problemas es una tarea únicamente humana comprobable en todos los casos con los mismos resultados.
Pseudocódigo Introducción La importancia de sistematizar procesos y crear programas de cómputo radica esencialmente en que estos se puedan utilizar como resolución de problemas similares en muchos casos,
Más detallesEJERCICIOS ALGORITMOS
01 Desarrolle un algoritmo que permita leer dos valores distintos, determinar cual de los dos valores es el mayor y escribirlo. 2. DECLARA VARIABLES n1,n2 3. ASIGNA 0 a n1,n2 4. INGRESA POR TECLADO n1
Más detallesFUNDAMENTOS DE OBJECT PASCAL
FUNDAMENTOS DE OBJECT PASCAL 1. ASPECTOS GENERALES DE LA SINTAXIS Los bloques de código quedan delimitados por y end. Se usa punto y coma como separador de sentencias de código. Comentarios: - ias líneas:
Más detallesTEMA 4: Programación estructurada
TEMA 4: Programación estructurada 4.1.-Introducción. Teorema de la programación estructurada El principio fundamental de la programación estructurada es que en todo momento el programador pueda mantener
Más detallesConocer los tipos de esquemas condicionales. Entender su funcionamiento y sus diferencias. 1. Introducción. 3. Esquemas condicionales en C
Tema 4. Esquemas Condicionales Objetivos Conocer los tipos de esquemas condicionales Entender su funcionamiento y sus diferencias Ser capaz de aplicarlos en ejemplos sencillos 1. Introducción 4. Esquemas
Más detallesUTN FRLP Ing. en Sistemas de Información Algoritmos y Estructura de Datos Trabajos Prácticos Curso 2010
Práctico de Pascal Nº 2 Ejercicios para la ejercitación del Lenguaje Pascal Objetivo: Es que los alumnos conozcan un lenguaje de programación, donde puedan ejercitar los conocimiento adquiridos hasta ahora
Más detallesProgramcaión Básica. Secuencias de Control y Repetición. Arturo Vega González.
Programación Básica Arturo Vega González a.vega@ugto.mx Division de Ciencias e Ingenierías Universidad de Guanajuato Campus León Sesión 5 Universidad de Guanajuato, DCI, Campus León 1 / 31 Universidad
Más detallesRECORDAR TIPOS DE DATOS
RECORDAR TIPOS DE DATOS VARIABLES: OBJETO CUYO valor cambia: A510 nombres NOTAS Int A=0; float B=1; CONSTANTES: OBJETO cuyo valor no cambia PI= 3.14159 LAS COMAS NO SE PERMITEN Int PI=3.1415 EXPRESIONES:
Más detallesGUIA EXAMEN FINAL/EXTRAORDINARIO
INSTITUTO SAN ANGEL DEL SUR ESCUELA NACIONAL PREPARATORIA INCORPORADA A LA UNAM CLAVE 1261 CICLO 2012-2013 Nombre del profesor: Ing. Jorge Padilla Gutiérrez Asignatura: INFORMATICA V GUIA EXAMEN FINAL/EXTRAORDINARIO
Más detallesEstudiemos el siguiente problema, propuesto por Wirth y desarrollado por Dijkstra: Una lista de las primeras secuencias que cumplen es:
25. Algoritmos heurísticos 25.1 Concepto de heurística. Se denomina heurística al arte de inventar. En programación se dice que un algoritmo es heurístico cuando la solución no se determina en forma directa,
Más detallesSlide 1. ordenación de tres números en forma. creciente.
Slide 1 Slide 2 EsTriangulo := (a < b+c) and (b < a+c) and (c < a+b) ; EsEquilatero := (a = b) and (b = c); EsIsosceles := (a = b) and (a c) or (a = c) and (a b) or (b = c) and (a b); EsEscaleno
Más detallesEstructuras de Repetición: Repita Mientras.
Estructuras de Repetición: Repita Mientras. Andrés Arcia Departamento de Computación Escuela de Ingeniería de Sistemas Facultad de Ingeniería Universidad de Los Andes Programación Digital I 1 Programación
Más detallesPráctico Nº 5 Tema: Lenguaje de Diseño (1 parte)
Práctico Nº 5 Tema: Lenguaje de Diseño (1 parte) 1. Escribir las siguientes expresiones aritméticas usando sintaxis del lenguaje de diseño: a. (X+Y) 3 b. X+Y 3 c. (A + B 2 ) / X - R donde R es el resto
Más detallesSintaxis de PSeInt Tutorial
Sintaxis de Tutorial Introducción a la Programación (T.U.M - T.U.G. - T.U.E. - T.U.T. - Prof) Introducción a la Computación (T.U.R. - T.U.W.) Fundamentos de la Informática (Ing. en Minas - Ing. Electr.)
Más detallesFundamentos de Programación Visual Basic
Pág. N. 1 Fundamentos de Programación Visual Basic Familia: Editorial: Tecnología de información y computación Macro Autor: Ricardo Walter Marcelo Villalobos ISBN: 978-612-304-236-3 N. de páginas: 280
Más detalles