Вы находитесь на странице: 1из 22

21-2-2013

ITSLP/2013-1

ITSLP/APUNTES DE ALGORITMOS Y LENGUAJES DE PROGRAMACION

Unidad 2. Desarrollo de la Lgica Algortmica


Ing. Hctor Bazarte Torres

San Luis Potos, Mxico.

ITSLP/APUNTES DE ALGORITMOS Y LENGUAJES DE PROGRAMACION

2013

Unidad 2.- Desarrollo de la lgica algortmica


2.1 Metodologa para la solucin de problemas. 2.2 Metodologa para el diseo de software: Top down, Bottom up, modular y programacin estructurada. Elementos y reglas de la representacin grafica y manuscrita de los algoritmos (diagrama de flujo, diagrama N-S, diagrama estructurado y pseudocdigo) 2.3 Implementacin de algoritmos secuenciales. 2.4 Pruebas y depuracin.

2.1 Metodologa para la solucin de problemas.


A fin de resolver un problema utilizando sistemas de cmputo, debe seguirse una serie de pasos que permiten avanzar por etapas bien definidas hacia la solucin. Estas etapas son las siguientes: Definicin del problema. Anlisis de los datos. Diseo de la solucin. Codificacin. Prueba y depuracin. Documentacin. Mantenimiento.

2.1 Definicin del problema


Est dada en s por el enunciado del problema, el cual debe ser claro y complejo. Es importante que conozcamos exactamente "que se desea obtener al final del proceso" ; mientras esto no se comprenda no puede pasarse a la siguiente etapa.

2.2 Anlisis de los datos


Unidad 2/Ing. Hctor Bazarte Torres Pgina 1

ITSLP/APUNTES DE ALGORITMOS Y LENGUAJES DE PROGRAMACION

2013

Para poder definir con precisin el problema se requiere que las especificaciones de entrada y salida sean descritas con detalle ya que esto es un requisito para lograr una solucin eficaz. Una vez que el problema ha sido definido y comprendido, deben analizarse los siguientes aspectos: Los resultados esperados. Los datos de entrada disponibles. Herramientas a nuestro alcance para manipular los datos y alcanzar un resultado (frmulas, tablas, accesorios diversos). Una medida aconsejable para facilitar esta etapa consiste en colocarnos en lugar de la computadora deduciendo los elementos que necesitaremos para alcanzar el resultado. Ejemplo 2.1 Leer el radio de un crculo y calcular e imprimir su superficie y circunferencia. Anlisis Las entradas de datos en este problema se concentran en el radio del crculo. Dado que el radio puede tomar cualquier valor dentro del rango de los nmeros reales, el tipo de datos radio debe ser real. Las salidas sern dos variables : superficie y circunferencia que tambin sern de tio real. Entradas : Radio del crculo (variable RADIO). Salidas : Superficie del crculo (variable AREA). Circunferencia del crculo (variable CIRCUNFERENCIA). Variables : RADIO, AREA, CIRCUNFERENCIA tipo real.

2.3 Diseo de la solucin


Una computadora no tiene capacidad para solucionar problemas ms que cuando se le proporcionan los sucesivos pasos a realizar, esto se refiere a la obtencin de un algoritmo que resuelva adecuadamente el problema. En caso de
Unidad 2/Ing. Hctor Bazarte Torres Pgina 2

ITSLP/APUNTES DE ALGORITMOS Y LENGUAJES DE PROGRAMACION

2013

obtenerse varios algoritmos, seleccionar uno de ellos utilizando criterios ya conocidos. Esta etapa incluye la descripcin del algoritmo resultante en un lenguaje natural, de diagrama de flujo o natural de programacin. Como puede verse, solo se establece la metodologa para alcanzar la solucin en forma conceptual, es decir ; sin alcanzar la implementacin en el sistema de cmputo. De acuerdo al ejemplo 2.1 tenemos que la informacin proporcionada constituye su entrada y la informacin producida por el algoritmo constituye su salida. Los problemas complejos se pueden resolver ms eficazmente por la computadora cuando se dividen en subproblemas que sean ms fcil de solucionar. El problema de clculo de la longitud y superficie de un crculo se puede descomponer en subproblemas ms simples : Leer datos de entrada. Calcular superficie y longitud. Escribir resultados (datos de salida).

2.4 Codificacin
Se refiere a la obtencin de un programa definitivo que pueda ser comprensible para la mquina. Incluye una etapa que se reconoce como compilacin. Si la codificacin original se realiz en papel, previo a la compilacin deber existir un paso conocido como transcripcin.

Unidad 2/Ing. Hctor Bazarte Torres

Pgina 3

ITSLP/APUNTES DE ALGORITMOS Y LENGUAJES DE PROGRAMACION

2013

Programa Fuente Esta escrito en un lenguaje de programacin. (pascal, C++,Visual Fox, Visual Basic, etc). Es entendible por el programador. Programa Ejecutable Est en lenguaje mquina. Entendible por la mquina.

2.5 Prueba y depuracin


Una vez que se ha obtenido el programa ejecutable, este es sometido a prueba a fin de determinar si resuelve o no el problema planteado en forma satisfactoria. Las pruebas que se le aplican son de diversa ndole y generalmente dependen del tipo de problema que se est resolviendo. Comnmente se inicia la prueba de un programa introduciendo datos vlidos, invlidos e incongruentes y observando como reacciona en cada ocasin. El proceso de depuracin consiste en localizar los errores y corregirlos en caso de que estos existan. Si no existen errores, puede entenderse la depuracin como una etapa de refinamiento en la que se ajustan detalles para optimizar el desempeo del programa.

2.6 Documentacin
Unidad 2/Ing. Hctor Bazarte Torres Pgina 4

ITSLP/APUNTES DE ALGORITMOS Y LENGUAJES DE PROGRAMACION

2013

Debido a que el programa resultante en esta etapa se encuentra totalmente depurado (sin errores), se procede a la utilizacin para resolver problemas del tipo que di origen a su diseo. En vista de que esta utilizacin no podr ser supervizada en todas las ocasiones por el programador, debe crearse un manual o gua de operacin que indique los pasos a seguir para utilizar el programa.

2.7 Mantenimiento
Se refiere a las actualizaciones que deban aplicarse al programa cuando las circunstancias as lo requieran. Este programa deber ser susceptible de ser modificado para adecuarlo a nuevas condiciones de operacin. Cualquier actualizacin o cambio en el programa deber reflejarse en su documentacin

Otra manera de resumir la metodologa para la programacin, sera de la siguiente forma:

Planteamiento del problema


Desarrollar una aplicacin en lenguaje de C, que sea capaz de calcular y mostrar por pantalla, el rea de un crculo. Considere la constante Pi igual 3.1416.

Anlisis del problema


Entender de qu se trata el caso en cuestin, discurrirlo. Contextualizarlo Obtener datos de entrada, proceso y salida. As como, los tipos de datos de la informacin que se requiere. Descifrar si se requieren herramientas auxiliares para su solucin: formulas, valores de constantes, etc.

Diseo del algoritmo


Cmo hace el programa para solucionar el caso Describir con palabras, smbolos o diagramas, la propuesta de solucin Decidir si la representacin de la solucin es por: pseudocdigo o diagrama de flujo de datos.
Unidad 2/Ing. Hctor Bazarte Torres Pgina 5

ITSLP/APUNTES DE ALGORITMOS Y LENGUAJES DE PROGRAMACION

2013

Inicio Declarar variables o contantes: PI = 3.1416; Programa principal Escribir (Dame el valor del radio); Leer (radio); Area=Radio *Radio *PI; Escribir (El area del circulo fue de :,Area); Fin

Codificacin
Transformar el pseudocdigo en su equivalente cdigo de un lenguaje de programacin, en este caso, bajo el paradigma estructurado, empleando el LP llamado C, como a continuacin se indica.

Empleando un editor de textos (no un procesador de textos), escribir:

#include <stdio.h> #define PI 3.1416 /* definicin de constante */ *********/ *********/ *********/ *********/ *********/

/***Programa que recibe el valor del radio de un crculo , calcula y /***y muestra por pantalla, el correspondiente valor del rea. /***Elabor: Hctor Bazarte Torres /***Fecha: 12-09-2012 /***Materia: ALP

main (){

Unidad 2/Ing. Hctor Bazarte Torres

Pgina 6

ITSLP/APUNTES DE ALGORITMOS Y LENGUAJES DE PROGRAMACION


float radio, area; printf ("dame el valor para el radio \n "); scanf ("%f",&radio); area= radio * radio * PI; printf ("El area del circulo es..... %f ",area); getch(); return 0; }/* fin del programa principal */

2013

Compilacin y ejecucin
Se trata de transformar el programa fuente, escrito en un lenguaje fuente (C), en su equivalente programa objeto, escrito en lenguaje de mquina (proceso llamado compilacin). A travs del men Ejecutar, opcin compilar. En l se obtiene un cdigo: Libre de errores de escritura (de sintaxis o llamados sintcticos), principalmente. Luego, se verifica que el programa haga lo que se supone debe de hacer (se dice correr el programa). A travs del men Ejecutar.

Verificacin
Se complementa la fase anterior de pruebas, ampliando las alternativas de las corridas, con diferentes valores. Se corrigen errores de ejecucin.

Depuracin
Se corrigen los errores de lgica o de ejecucin del programa.

Mantenimiento y documentacin
Se documenta el programa: comentarios, manuales de usuario o de operacin del programa/sistema.

Unidad 2/Ing. Hctor Bazarte Torres

Pgina 7

ITSLP/APUNTES DE ALGORITMOS Y LENGUAJES DE PROGRAMACION 2.2 Metodologa para el diseo de software

2013

2.3 Diagramas de flujo


Para una mejor compresin de este tema se definir el concepto de programa, por ser este un trmino muy utilizado en el diseo estructurado de algoritmos.

Elementos y reglas de la representacin grfica y manuscrita de los algoritmos (diagramas de flujo, pseudocdigo, diagramas N-S). "TENICAS PARA LA FORMULACION DE ALGORITMOS"
Las tcnicas analizadas en la unidad anterior permiten un diseo global del algoritmo, pero ocasionalmente pueden desatender detalles especficos de este. Las tres tcnicas de formulacin de algoritmos ms populares son : Diagrama de flujo Pseudocdigo Diagramas estructurados

Diagramas de Flujo
Se basan en la utilizacin de diversos smbolos para representar operaciones especficas. Se les llama diagramas de flujo porque los smbolos utilizados se conectan por medio de flechas para indicar la secuencia de operacin. La simbologa utilizada para la elaboracin de diagramas de flujo es variable y debe ajustarse a un patrn definido previamente. SIMBOLOGIA UTILIZADA EN LOS DIAGRAMAS DE FLUJO
Smbolo Funcin

Unidad 2/Ing. Hctor Bazarte Torres

Pgina 8

ITSLP/APUNTES DE ALGORITMOS Y LENGUAJES DE PROGRAMACION

2013

Ejemplo: Calcular el salario neto de un trabajador en funcin del nmero de horas trabajadas, precio de la hora de trabajo y considerando unos descuentos fijos al salario bruto en concepto de impuestos (20 por 100).

Unidad 2/Ing. Hctor Bazarte Torres

Pgina 9

ITSLP/APUNTES DE ALGORITMOS Y LENGUAJES DE PROGRAMACION

2013

Ejemplo: Realizar un diagrama de flujo que permita mostrar en pantalla un mensaje de mayora o minora de edad segn sea el caso para un nombre especfico.

Unidad 2/Ing. Hctor Bazarte Torres

Pgina 10

ITSLP/APUNTES DE ALGORITMOS Y LENGUAJES DE PROGRAMACION

2013

Pseudocdigo
Es un lenguaje de especificacin de algoritmos. El uso de tal lenguaje hace el paso de codificacin final (esto es, la traduccin a un lenguaje de programacin) relativamente fcil. El pseudocdigo naci como un lenguaje similar al ingls y era un medio representar bsicamente las estructuras de control de programacin estructurada. Se considera un primer borrador, dado que el pseudocdigo tiene que traducirse posteriormente a un lenguaje de programacin. Cabe sealar que el pseudocdigo no puede ser ejecutado por una computadora.

Unidad 2/Ing. Hctor Bazarte Torres

Pgina 11

ITSLP/APUNTES DE ALGORITMOS Y LENGUAJES DE PROGRAMACION

2013

La ventaja del pseudocdigo es que en su uso en la planificacin de un programa, el programador se puede concentrar en la lgica y en las estructuras de control y no preocuparse de las reglas de un lenguaje especfico. Es tambin fcil modificar el pseudocdigo si se descubren errores o anomalas en la lgica del programa, adems de todo esto es fcil su traduccin a lenguajes como pascal, COBOL, C, FORTRAN o BASIC.

2.3 Implementacin de algoritmos secuenciales (E/S de informacin)


Los clculos que realizan las computadoras requieren para ser tiles la Entrada de los datos necesarios para ejecutar las operaciones que posteriormente se convertirn en resultados, es decir, Salida. Las operaciones de entrada permiten leer determinados valores y asignarlos a determinadas variables. Esta entrada se conoce como operacin de Lectura (scanf en lenguaje C). Los datos de entrada se introducen al procesador mediante dispositivos de entrada (teclado, unidades de disco, etc). La salida puede aparecer en un dispositivo de salida (pantalla, impresora, etc). La operacin de salida se denomina escritura (printf en lenguaje C). En la escritura de algoritmos las acciones de lectura y escritura se representan por los formatos siguientes leer ( Nom_variable ) escribir (lista de variables de salida) Ejemplo: Entrada

Obtener rea de un tringulo.

Frmula (A= B*h/2) Datos (Base, altura)

Proceso

Multiplicar Base y altura. Dividir resultado de la multiplicacin anterior entre dos. Mostrar resultado de divisin anterior.
Unidad 2/Ing. Hctor Bazarte Torres Pgina 12

ITSLP/APUNTES DE ALGORITMOS Y LENGUAJES DE PROGRAMACION


Salida

2013

Area del tringulo.

Algoritmo
Inicio Leer(B) leer(h) x A B*h x/2

Escribir(A) Fin

Ejercicio complementario #1
UN CLIENTE ACUDE A REALIZAR SUS COMPRAS A UN SUPERMERCADO O TIENDA DE ABARROTES, UNA VEZ QUE SELECCIONO SUS PRODUCTOS Y CANTIDADES DE LOS MISMOS, LLEGA A LA CAJA DE PAGO, DONDE UNA CAJERA A TRAVS DE UN ESCANER, IRA LEYENDO LOS CODIGOS DE BARRA DE CADA UNO DE LOS PRODUCTOS, ASI COMO, EN SU CASO, IRA TECLEANDO LA CANTIDAD DE CADA UNO DE ELLOS. AL TERMINAR DE LEER TODOS LOS PRODUCTOS, LA CAJERA LE COMUNICARA AL CLIENTE, LA CANTIDAD TOTAL A PAGAR, PERO ANTES DE ELLO, LE INFORMARA QUE LA TIENDA TIENE UNA PROMOCION QUE CONSISTE EN QUE SEGN LA FORMA DE PAGO, EXISTE UN PORCENTAJE DE DESCUENTO, ES DECIR, SI EL CLIENTE PAGA EN EFECTIVO SE LE HARA UN DESCUENTO DEL 5%, SI LO HACE CON TARJETA DE CREDITO SU DESCUENTO SERA DEL 10%, Y SI PAGA CON CHEQUE, SE LE REEMBOLSARA EL 15% DE SU PAGO TOTAL. PARA ELLO, EL CLIENTE DEBE DE INDICAR SU FORMA DE PAGO. AL FINAL, LA CAJERA DEBERA ENTREGARLE AL CLIENTE UNA FACTURA QUE CONTENGA LOS DATOS SIGUIENTES: CANTIDAD DE PRODUCTOS NOMBRE DEL PRODUCTO PRECIO UNITARIO SUBTOTAL DE CADA PRODUCTO EL SUBTOTAL DE LAS COMPRAS EL DESGLOSE DEL 15% IVA ( DERIVADO DE ANTES HABER HECHO EL DESCUENTO RESPECTIVO POR LA FORMA DE PAGO)

Unidad 2/Ing. Hctor Bazarte Torres

Pgina 13

ITSLP/APUNTES DE ALGORITMOS Y LENGUAJES DE PROGRAMACION


EL TOTAL DE LAS COMPRAS

2013

SI DESEA, INCLUYA EN SU FACTURA DATOS DEL CLIENTE (NOMBRE, APELLIDOS, DIRECCION, TELEFONO, ETC.).

TIPOS DE DATOS
Ejercicio 1 - Clasificar datos (Tipos de datos - Pseudocdigo CEE) Clasifique los siguientes datos en simples y compuestos: El nmero de botones de una camisa. La altura de una torre. Los datos de una cuenta bancaria. El nmero de pasajeros de un avin. El resultado de hacer una apuesta (ganar o perder). La capital de Canad. La letra 'b' escrita en mayscula.

Solucin del Ejercicio 2 - Palabras reservadas (Tipos de datos - Pseudocdigo CEE) Cules son palabras reservadas en pseudocdigo CEE? Son palabras reservadas en pseudocdigo CEE: cadena entero real verdadero

No lo son: carcter debera ser caracter (sin tilde) compuesto es un tipo de dato, pero no una palabra reservada faslo debera ser falso lgico debera ser logico (sin tilde) numerico es un tipo de dato, pero no una palabra reservada simple es un tipo de dato, pero no una palabra reservada

Ejercicio 3 - Tipos de datos simples (Tipos de datos - Pseudocdigo CEE) De la lista siguiente: dato booleano dato cadena dato enumerado

Unidad 2/Ing. Hctor Bazarte Torres

Pgina 14

ITSLP/APUNTES DE ALGORITMOS Y LENGUAJES DE PROGRAMACION


dato estructurado dato numrico dato ordinal dato real dato verdadero

2013

Cules son tipos de datos simples?

IDENTIFICADORES, VARIABLES Y CONSTANTES


Ejercicio 1 - Identificadores (Identificadores, variables y constantes - Pseudocdigo CEE) En pseudocdigo CEE, cules de los siguientes identificadores puede definir un programador, y cules no? Puerta21 3tres 2007 helicptero COCHE_52 **motocicleta** __platillo__ cas-ti-llo Fiesta!

_*_*_
47_ejercicio Costa Rica aErOnAvE

Ejercicio 2 - Declaraciones (Identificadores, variables y constantes - Pseudocdigo CEE) En pseudocdigo CEE, cules de las siguientes declaraciones de constantes y variables son correctas? 1) caracter = u 2) vocal = i 3) letra j 4) cadena = "nombre" 5) entero numero = 7.0 6) 888.8 7) cadena variable 8) verdadero 9) nueve = 9 10) logico CIERTO 11) interruptor = falso 12) _123 = "un dos tres"

Unidad 2/Ing. Hctor Bazarte Torres

Pgina 15

ITSLP/APUNTES DE ALGORITMOS Y LENGUAJES DE PROGRAMACION


13) 14) 15) 16) 17) 18) real 40.09 barra = '\' a = .9E-2 b = 6.e5 caracter v, w, x CONSTANTE = " ? "

2013

Ejercicio 3 - En memoria (Identificadores, variables y constantes - Pseudocdigo CEE) Dadas las siguientes declaraciones de constantes y variables: UNO = 1 DOS = '2' FECHA = "20/7/2007" BARRAS = "\\/\\/" PI = 3.141592 entero numero1 = 2, numero2 = 3 logico a = falso

qu valores se almacenarn en la memoria del ordenador?

OPERDADORES Y EXPRESIONES
Ejercicio 1 - Evaluacin de expresiones (Operadores y expresiones - Pseudocdigo CEE) Dadas las siguientes declaraciones: TRES = 3 entero a = 5, b = 4 real x = 5e-2, y = 2.

qu valores se obtienen de evaluar las siguientes expresiones? 1) a = b mod TRES 2) 6 div TRES < TRES mod 6 3) TRES + b - 1 <> a o b >= -b * a y a ** 2 <= 10 4) x * y * 10 = 10.E-1

5) b mod a div TRES 6) no ( x * a > y / b )

Unidad 2/Ing. Hctor Bazarte Torres

Pgina 16

ITSLP/APUNTES DE ALGORITMOS Y LENGUAJES DE PROGRAMACION


Ejercicio 2 - Evaluacin de expresiones (Operadores y expresiones - Pseudocdigo CEE) Dadas las siguientes declaraciones: DOS = 2 CUATRO = "cuatro" NEGACION = falso enumerado nombres { ALBERTO, ISABEL, MANUEL, NADIA, OSCAR } enumerado letras { H, G = -3, F, C } cadena numero = "cinco" caracter letra = 'b' entero a = 2, b = 3, c = 1 real i = 6E-3, j = 8.2

2013

qu valores se obtienen de evaluar las siguientes expresiones? 1) G ** ALBERTO > i 2) letra > 'd' o CUATRO < numero 3) ( c + DOS * F - a ) ** b = -125 4) j div a >= OSCAR

5) no b > a 6) falso o no NEGACION

ASIGNACION, SALIDA Y ENTRADA DE DATOS


Ejercicio 1 - En memoria (Asignacin, salida y entrada - Pseudocdigo CEE) Dadas las siguientes declaraciones: A = 'a' ONCE = 11 entero r = 50, s = 6, t caracter vocal

despus de las asignaciones:

Unidad 2/Ing. Hctor Bazarte Torres

Pgina 17

ITSLP/APUNTES DE ALGORITMOS Y LENGUAJES DE PROGRAMACION


t r div s s r mod s r ONCE - t ** s vocal A

2013

qu valores se habrn almacenado en la memoria del ordenador para los objetos declarados? Ejercicio 2 - Salida por pantalla (Asignacin, salida y entrada - Pseudocdigo CEE) A partir de las declaraciones: C = "xyz" cadena letras entero a = 12, b = 3 real k

al escribir las siguientes instrucciones: k a / ( b * 8 ) letras "A" + "B" + C escribir( "El valor de k es:", k ) escribir( letras ) a b ** b div a escribir( a / k > k * a )

qu se mostrar por pantalla?

ESTRUCTURA DE UN ALGORITMO
Ejercicio 1 - rea de un tringulo (Estructura de un algoritmo - Pseudocdigo CEE) Disee el algoritmo (en pseudocdigo) de un programa que: 1) Pida por teclado la base (dato real) de un tringulo. 2) Pida por teclado la altura (dato real) de un tringulo. 3) Calcule el rea del tringulo. 4) Muestre por pantalla el resultado (dato real).

Unidad 2/Ing. Hctor Bazarte Torres

Pgina 18

ITSLP/APUNTES DE ALGORITMOS Y LENGUAJES DE PROGRAMACION


En pantalla: Introduzca base: 1.2 Introduzca altura: 4.5 El rea del tringulo es: 2.7 Nota: rea de un tringulo = base * altura / 2 Ejercicio 2 - Divisin entera (Estructura de un algoritmo - Pseudocdigo CEE) Disee el algoritmo (en pseudocdigo) de un programa que:

2013

1) Pida por teclado dos nmeros (datos enteros). 2) Muestre por pantalla el resultado de realizar la divisin entera del primer nmero introducido por el usuario entre el segundo, y el resto.

En pantalla: Introduzca dividendo (entero): 39 Introduzca divisor (entero): 5 39 div 5 = 7 ( Resto = 4 ) Nota: Se entiende que el usuario no introducir un divisor igual a cero.

EJERCICIOS PARA ALGORITMOS


Ejercicio 1: Observa la siguiente secuencia de instrucciones: 1. 2. 3. 4. 5. 6. 7. A=5 B=7 C=2 A=A+B+C B=C/2 A=A/B+A^C Imprimir(A)

Ahora responde a las siguientes cuestiones: a) Qu valor contiene A despus de la cuarta instruccin? b) Qu valor contiene B despus de la quinta instruccin? c) Qu valor contiene A despus de la sexta instruccin? d) Qu valor imprime la ltima instruccin? e) Si en lugar de Imprimir(A) hubisemos escrito Imprimir(A) Qu aparecera?
Unidad 2/Ing. Hctor Bazarte Torres Pgina 19

ITSLP/APUNTES DE ALGORITMOS Y LENGUAJES DE PROGRAMACION


Ejercicio 2: Observa la siguiente secuencia de instrucciones: 1. 2. 3. 4. 5. 6. A=5 B=7 C=1 D = (A == B) E = (A <> B) F = (MOD(B/A) >= C)

2013

Ahora responde a las siguientes cuestiones: a) Qu valor contiene D despus de la cuarta instruccin? b) Qu valor contiene E despus de la quinta instruccin? c) Qu valor contiene F despus de la sexta instruccin? d) Cunto valen A, B y C despus de la ltima instruccin? Ejercicio 3: Observa la siguiente secuencia de instrucciones: 1. 2. 3. 4. 5. 6. leer(A) leer(B) leer(C) D = (A == B) E = (A <> B) F = (MOD(B/A) >= C)

Ahora responde a las siguientes cuestiones: Supongamos que el usuario introduce 3 en A, 4 en B y 5 en C a) b) c) d) Qu valor contiene D despus de la cuarta instruccin? Qu valor contiene E despus de la quinta instruccin? Qu valor contiene F despus de la sexta instruccin? Cunto valen A, B y C despus de la ltima instruccin?

Ejercicio 4: Observa la siguiente secuencia de instrucciones: 1. 2. 3. 4. 5. 6. 7. leer (A) resultado = 1 mientras (A>1) resultado = resultado * A A=A1 fin mientras imprimir(resultado)

Ahora responde a las siguientes cuestiones: a) Si en la primera instruccin se introduce un valor 2 en A Qu valor se imprime? b) Si en la primera instruccin se introduce un valor 3 en A Qu valor se imprime?
Unidad 2/Ing. Hctor Bazarte Torres Pgina 20

ITSLP/APUNTES DE ALGORITMOS Y LENGUAJES DE PROGRAMACION

2013

c) Si en la primera instruccin se introduce un valor 4 en A Qu valor se imprime? d) Qu se est calculando? Ejercicio 5: Observa la siguiente secuencia de instrucciones: 1. 2. 3. 4. 5. 6. leer (A) Si (A>0) Imprimir (A,es positivo) Si no Imprimir (A,es negativo) Fin si

a) Describe, instruccin por instruccin, qu se est haciendo con este algoritmo. b) Qu pasa si A = 5? Y si A = - 100? c) Escribe otro algoritmo para distinguir mltiplos de 3 y compralo Ejercicio 6: Observa la siguiente secuencia de instrucciones:
1. 2. 3. 4. 5. 6. 7. leer (NumeroA) leer (NumeroB) Si (NumeroA < NumeroB) imprimir ("El mayor es:", NumeroB) si-no imprimir ("El mayor es:", NumeroA) fin-si

a) Describe qu se est haciendo con este algoritmo. b) Qu pasa si NumeroA = 5 y NumeroB = - 100? c) Qu pasa si NumeroA = 10 y NumeroB = 100? d) Qu pasa si NumeroA = 10 y NumeroB = 10?

Unidad 2/Ing. Hctor Bazarte Torres

Pgina 21