LOGICA DE PROGRAMACIÓN

113
 LOGICA DE PROGRAMACIÓN  ALGOR ITMOS  Alberto Ech everry Arroyave Ing. De Sistemas

Transcript of LOGICA DE PROGRAMACIÓN

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 1/113

LOGICA DE PROGRAMACIÓN

 ALGORITMOS

 Alberto Echeverry Arroyave

Ing. De Sistemas

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 2/113

Que es un Algoritmo Un algoritmo es una secuencia de pasos

lógicos y ordenados con las cuales le damossolución a un problema determinado.

Por ejemplo: En la vida diaria cada uno denosotros diseña y realiza algoritmos parasolucionar los problemas cotidianos, es asíque al levantarnos de la cama ya tenemos enla mente una serie de pasos que debemos

seguir para llegar al sitio de estudio o al sitiode trabajo. Una vez en el sitio de estudio,tenemos en nuestra mente una serie detareas que debemos realizar en unos horarios

ya definidos.

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 3/113

Características de los

Algoritmos

1. Un algoritmo debe ser preciso e indicar elorden de realización de cada paso.

2. Un algoritmo debe estar definido. Si se

sigue el algoritmo dos veces, se debe obtenerel mismo resultado cada vez.

3. Un algoritmo debe ser finito. Si se sigue el

algoritmo. Se debe terminar en algúnmomento, o sea debe tener un número finitode pasos.

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 4/113

Clasificación de los Algoritmos

Según Quien los Ejecute

Algoritmos para serejecutados porPersonas. 

Algoritmos para serejecutados porComputadoras. 

Tipos de Datos 

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 5/113

Algoritmos para ser

ejecutados por Personas

Para que un algoritmo sea ejecutado por unapersona, debe estar escrito de tal manera queesta persona lo entienda claramente, algunas de

las normas que debe seguir la construcción delalgoritmo son las siguientes:

debe estar escrito en el idioma que comprende lapersona que realizará el algoritmo.

debe enumerar cada uno de los pasos a realizaren un orden lógico.

debe utilizar palabras que comprenda claramente

la persona que realizará el algoritmo.

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 6/113

Ejemplos: Un cliente ejecuta un pedido a una fabrica. La

fabrica examina en su banco de datos si el clienteesta activo( no es moroso con sus deudas)

entonces se acepta el pedido, en caso contrariose rechaza.

1. Inicio

2. Leer el pedido

3. Examinar ficha del cliente

4. Si el cliente esta activo aceptar el pedido, encaso contrario rechazar el pedido.

5. terminar

Algoritmos para ser

ejecutados por Personas

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 7/113

Ejemplo Un cliente llaga a una entidad bancaria para

realizar una consignación, el cajero le pide el

número de la cuenta y el dinero a consignar,verifica que la cuenta si existe, si la cuenta es validase hace la consignación (al saldo le aumenta eldinero recibido) de lo contrario devuelve el dinero.

1. Inicio

2. pedir numero de la cuenta y el dinero

3. si la cuenta es valida siga en 4 de lo contrario sigaen 6

4. saldo= saldo +dinero

5 ir a 7

6 devolver el dinero

7 terminar

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 8/113

Un cliente llaga a una entidad bancaria pararealizar una consignación, el cajero le pide el

número de la cuenta y el dinero a consignar,verifica que la cuenta si existe, si la cuenta esvalida se hace la consignación (al saldo leaumenta el dinero recibido) de lo contrariodevuelve el dinero.

1. Inicio 2. pedir numero de la cuenta y el dinero 3. si la cuenta es valida siga en 4 de lo contrario

siga en 6

4. saldo= saldo +dinero 5 ir a 7 6 devolver el dinero 7 terminar

Ejemplo

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 9/113

1. un retiro de dinero por parte de un clienteen una entidad bancaria

2. crear un algoritmo que describa los pasos

necesarios par ir a la universidad a clase de 6Am tenga en cuenta que si llega 10 minutostarde no puede entrar al salón de clase y si alllegar no trae el carnet no puede entrar a la

universidad.

Realice los Siguientes

Ejercicios

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 10/113

Diseñar algoritmos queresuelvan los posiblesproblemas que se

presentan para: 1. ir al cine

2. Reparar un pinchazo

de una bicicleta. 3. Hacer una llamada a

un compañero.

Realice los Siguientes

Ejercicios

Regresar…… 

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 11/113

Algoritmos para ser

ejecutados por Computadoras

Los pasos para la solución de un problema utilizandocomo herramienta la computadora son :

1. Diseño del algoritmo que describa la secuenciaordenada de pasos, que conducen a la solución de un

problema dado(análisis del problema y desarrollo delalgoritmo).

2. Expresar el algoritmo como un programa en unlenguaje de programación adecuado( fase decodificación). La actividad de expresar un algoritmoen forma de programa se denomina programación.

3. Ejecución y validación de programa por lacomputadora.

Regresar…… 

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 12/113

Tipos de Datos

los tipos de datos a utilizar en nuestros algoritmos son:

1. numéricos: estos tipos de datos se utilizan parahacer cálculos matemáticos y pueden ser de dos tipos

así:

1. ENTERO: cuando el número no tiene parte decimal

(ejemplo: 4 , 5 , 7, 97).2. REAL: cuando el número consta de una parte entera y

una parte decimal (ejemplo: 2.33 , 4.59 , 5.0 ).

2. CARACTER: contiene un solo símbolo y esta delimitado

por comillas sencillas y puede ser:1. Caracteres alfanuméricos ('A', 'B', …, 'Z')

2. Caracteres numéricos('1', '2', …'0')

3. Caracteres especiales ('+', '-', '*', '/', ',' '.', '<' ,'>', '$', ….)

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 13/113

3. CADENA(string): es una sucesión de

caracteres que se encuentran delimitados pordoble comilla. se utilizan para guardarinformación como el nombre de una persona,el color preferido etc. (ejemplos: " león ",

"Maria", "azul", "rojo"). se utilizan paramostrar mensajes.

4. LOGICOS (booleanos): es aquel dato que

sólo puede tomar uno de dos valores:verdadero(true) o falso (false).

Tipos de Datos

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 14/113

Partes de Un AlgoritmoINICIO Y FIN

Una de las características de los algoritmos esque deben ser finitos. Se debe indicarclaramente donde inicia y donde termina.

Ejemplo:INICIO

FIN PROGRAMA

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 15/113

DECLARACION DE VARIABLES

los datos son una parte muy importante enun algoritmo, pues son ellos el punto departida y son ellos quienes sufren lastransformaciones que darán los resultadosdeseados. Por esta razón el algoritmo debeguardar los datos en un sitio donde lospueda leer y modificar cada vez que lo

requiera. los sitios donde el algoritmo guardalos datos los llamaremos ESPACIOS DEMEMORIA y el tamaño de estos dependendel Tipos de Datos que se quiera guardar enellos.

Partes de Un Algoritmo

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 16/113

DECLARACION DE VARIABLES 

Además si se tienen varios datos se debetener la posibilidad de diferenciarlos de unamanera que no se presenten confusionesasignándoles un “Identificador Valido” y únicoa estos espacios de memoria.

Ejemplo:

X, Y, X1, Y1, SUMA, CONTAR, MAYOR, MENOR,

PROMEDIO, PORCENTAJE……. 

Partes de Un Algoritmo

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 17/113

 DECLARACION DE VARIABLES

Un espacio de memoria se denomina VARIABLEcuando su contenido puede variar en el tiempo yde CONSTANTE cuando no se permite que sucontenido varié.

Lo primero que se hace en al algoritmo esdeclarar las variables. Donde se separan losespacios de memoria del tamaño indicado segúnel tipo de dato que guardarán y asignándoles unnombre o identificador válido, con el cual nosreferiremos a la información que se guarda endicho espacio de memoria.

Partes de Un Algoritmo

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 18/113

Partes de Un AlgoritmoDECLARACION DE VARIABLES

para declarar las variables se hará de la siguienteforma:

INICIO

Tipo de Dato: Identificador, Identificador

FIN PROGRAMA

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 19/113

Partes de Un AlgoritmoDECLARACION DE VARIABLES

Ejercicios:

hacer un algoritmo que declare una variable paraguardar el número de meses del año y otra variablepara guardar el porcentaje de meses que tienen 30 o31 días.

hacer un algoritmo que declare una variable paraguardar cuantas materias se han perdido en elsemestre y otra para guardar el porcentaje dematerias ganadas.

hacer un algoritmo que declare una variable paraguardar el promedio del semestre, otra para guardarel nombre de un estudiante y otra para guardar elnúmero de notas perdidas.

hacer un algoritmo que declare una variable parauardar el nombre de un de ortista otra ara

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 20/113

Partes de Un AlgoritmoEntrada de Datos

cuando un algoritmo requiera que el usuarioingrese datos, se utilizará la instrucción LEER yentre paréntesis la lista de variables donde seguardarán los datos ingresados por el usuario.

INICIOTipo de Dato: Identificador, Identificador

Leer (Identificador1, Identificador2)

FIN PROGRAMA

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 21/113

Entrada de Datos

Ejercicios: hacer un algoritmo que lea el nombre de un

estudiante, la cantidad de materias perdidas y elporcentaje de materias ganadas.

hacer un algoritmo que lea el nombre de unestudiante, el promedio del semestre yel número de notas perdidas.

hacer un algoritmo que lea el nombre de unapersona, la comida preferida y la cantidad dedinero que posee.

hacer un algoritmo que lea el nombre de

Partes de Un Algoritmo

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 22/113

Salida de Datos

si el algoritmo requiere mostrar lainformación que tiene guardada en variables

(espacio de memoria) hacia el exterior (para

el usuario final ), se utilizará la

instrucción MOSTRAR y entre paréntesis la

lista de variables donde se guardan los datos

que se quieren mostrar.

Partes de Un Algoritmo

i

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 23/113

Salida de DatosPartes de Un Algoritmo

INICIOTipo de Dato: Identificador, IdentificadorLeer (Identificador1, Identificador2)

Mostrar (Identificador1, Identificador2,Identificador3)

FIN PROGRAMA

d l i

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 24/113

Partes de Un AlgoritmoSalida de Datos

Ejemplo:

INICIOEntero: NLeer (N)

Mostrar (“El Número que Digito es:”,N)FIN PROGRAMA

d l i

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 25/113

Partes de Un AlgoritmoSalida de Datos Ejercicios:

1. hacer un algoritmo que lea el nombre de una persona, el número dehoras que estudia en la semana y muestre el porcentaje de tiempoque dedica a estudiar y la cantidad de minutos que dedica a estudiar.

2. hacer un algoritmo que lea el nombre de un estudiante, la cantidad

de materias que cursa en el semestre, la cantidad de materiasperdidas y muestre el nombre y el porcentaje de materias ganadas.

3. hacer un algoritmo que lea el nombre de una persona, la comidapreferida con su precio, la cantidad de dinero que posee y muestre la

cantidad de comidas que puede comprar con el dinero que posee.

4. hacer un algoritmo que lea el nombre de un deportista, la distanciarecorrida, la cantidad de intentos y muestre la distancia promedioque ha recorrido.

O ió d i ió

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 26/113

La Operación de Asignación Es el modo de copiar un valor específico en una variable

o espacio de memoria. La operación de asignación se

representa con el símbolo igual '=' La forma general deuna operación de asignación es:

INICIOTipo de Dato: Identificador, IdentificadorLeer (Identificador1, Identificador2)Variable = Valor

Mostrar (Identificador1, Identificador2,Identificador3)

FIN PROGRAMA

A i ió U V i bl

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 27/113

Asignación en Una Variable

Numérica

en una variable numérica (declarada comoentero o real ) sólo se podrán guardar datosnuméricos y existe dos formas de hacerlo:

1. asignación de un número (constantenumérica) a una variable numérica.Asumamos que la variable A ha sido

declarada de tipo entero, si queremos copiarel valor de 5 en ella lo haríamos de lasiguiente manera.

A = 5se co ia el valor de en la variable A.

A i ió U V i bl

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 28/113

Asignación en Una Variable

Numérica

2. asignación del resultado de una expresiónaritmética a una variable numérica.asumamos que las variable A ha sidodeclarada de tipo entero y queremos copiaren ella el resultado de la expresión aritmética5*2 +1 se haría de la siguiente manera.

A = 5* 2 +1

A i ió U V i bl

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 29/113

 Expresión Aritmética

 

Una expresión es una combinación deconstantes, variables, símbolos de operación,paréntesis y nombres de funciones

especiales.

Operadores Aritméticos:

+ - * /

Exponenciación

div División Entera

mod Modulo (El Residuo de la División)

Asignación en Una Variable

Numérica

A i ió U V i bl

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 30/113

Regla de Precedencia de los OperadoresMatemáticos:

1. las operaciones que están encerradas entre

paréntesis se evalúan primero. Si existenparéntesis anidados( interiores unos aotros). Se debe evaluar primero las

expresiones mas internas.

Asignación en Una Variable

Numérica

A i ió U V i bl

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 31/113

2. Las operaciones aritméticas dentro de unaexpresión suelen seguir el siguiente orden deprioridad:

Exponenciación

* , /

+ , -div , mod

Asignación en Una Variable

Numérica

A i ió U V i bl

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 32/113

Ejemplos de Expresiones Aritméticas:

1 + 2 + 3 = 6

1 + (2 + 5) * 2 = 21

(4 * (2 + 1) ) mod 3 = 0

(4 * 5 + 4 ) / 2 + 4 = 16

2 ^ 2 *( ( 2 + 1 ) * 2 ) = 24

(2 + (6 * 2 - 10)*2) div 5 = 1

( 1 + 2 )* ( 2 + 3) + 1 = 16

1 + ( 2 * (3+2)) = 11

Asignación en Una Variable

Numérica

A i ió U V i bl

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 33/113

Ejercicios:

1. hacer un algoritmo que lea dos números enteros Ay B y muestre el doble de su suma.

2. hacer un algoritmo que lea dos números enteros Ay B y muestre el resultado de evaluar (A + B) *2 +10

3. hacer un algoritmo que lea el alto y el ancho de unrectángulo y muestre su área y su perímetro.

4. hacer un algoritmo que lea el nombre de unapersona, el valor de la hora trabajada y el númerode horas que trabajo. se debe mostrar el nombre yel pago de la persona

5. hacer un algoritmo que lea el nombre de unarticulo, el valor unitario, la cantidad a comprar ymuestre el nombre y el total a pagar.

Asignación en Una Variable

Numérica

A i ió U V i bl

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 34/113

Asignación en Una Variable

tipo Cadena

Asumimos que la variable NOMBRE, se adeclarado como cadena (Carácter) en ellacopiaremos el nombre MARIA.

NOMBRE = MARIA

Expresiones de Cadena:

“Hola” + “María” = Hola María 

Expresiones de Cadena:

A = Aviones

B = Colores

C = Comercial

Asignación en Una Variable

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 35/113

A + B + C = Aviones Colores Comercial

“Los” + A + C + “son de” + B = Los AvionesComerciales son de Colores

A + “de” + B = Aviones de Colores 

A + C = Aviones Comerciales

Asignación en Una Variable

tipo Cadena

Expresiones Lógicas

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 36/113

Expresiones Lógicas Una expresión lógica es una combinación de

expresiones aritméticas, variables, constanteslógicas, paréntesis, operadores lógicos yoperadores relacionales.

Operadores Lógicos:

y (and) lo denotaremos por doble ampersan "&&".

o (or) lo denotaremos por doble barras " | | ".

no (not) lo denotaremos como admiración " ! ".

Expresiones Lógicas

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 37/113

Operadores Relacionales:

igualdad lo denotaremos con doble igual " == "

menor que, lo denotaremos por el símbolo "<"

mayor que , lo denotaremos por el símbolo ">"

menor o igual que, lo denotaremos con el símbolo "<="

mayor o igual que, lo denotaremos con el símbolo ">=".

diferente, lo denotaremos por el símbolo "!="

Expresiones Lógicas

Expresiones Lógicas

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 38/113

Ejemplos con Operadores Lógicos y Relacionales:

10 > 3 = verdadero

1 > 3 = falso

2 > 1 && 4 > 10 = falso2 > 10 && 4 < 10 = falso

3 == 2 || 3 > 2 = verdadero

20 > 1 && 4 < 10 = verdadero

5 < 10 && 10 <= 20 = verdadero

2 > 1 | | 1 < 1 = verdadero

Expresiones Lógicas

Asignación Valores a

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 39/113

Asumamos que la variable BANDERA ha sidodeclarada de tipo lógico , si queremos copiar enella el resultado de la expresión lógica 2 > 10 , loharíamos de la siguiente manera:

BANDERA = 2 > 10

copiaría en la variable BANDERA el valor de"falso", pues 2 no es mayor que 10.

Asignación Valores a

Variable Lógicas

Asignación Valores a

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 40/113

1. hacer un algoritmo que lea el dato N de tipoentero y muestre el resultado de la siguienteexpresión lógica x < 3 && X < 20

2. hacer un algoritmo que lea los datos enterosA , B y C y muestre el resultado dela expresion lógica A * C >= ( B - 10)

Asignación Valores a

Variable Lógicas

Instrucciones de Decisión

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 41/113

Instrucciones de Decisión

Las instrucciones de

decisión son necesariascuando en unalgoritmo una o muchas

tareas se deben hacer ono, dependiendo de unasituación en particular.esta situación nos

ayudará a decidirsi hacemos o nolas tareas indicadas.

Instrucciones de Decisión:

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 42/113

Instrucciones de Decisión:

“SI” 

INICIOInstrucción 1Si expresión lógica entonces

Instrucción11Intrucción12Instrucción13

Fin SiInstrucciónN

FIN PROGRAMA

Instrucciones de Decisión: “SI”

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 43/113

Ejemplo:

INICIOReal: N, Triple, Cuadrado

Leer (N)

Si N >= 100 Entonces

Triple = N * 3Mostrar “El Triple es”, Triple 

Fin Si

Si N < 100 Entonces

Cuadrado = N * N

Mostrar “El Cuadrado es”, Cuadrado 

Fin Si

FIN PROGRAMA

Instrucciones de Decisión: SI  

Instrucciones de Decisión: “SI”

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 44/113

Ejercicios

1. Realizar un algoritmo que reciba la hora si esmenor a 12 muestre el siguiente mensaje : "holabuenos días".

2. Hacer un algoritmo que calcule la suma de dos

números enteros. Si la suma es mayor que 100sacar un mensaje comunicándolo.

3. Realizar un algoritmo que lea el nombre y laedad de una persona y si es menor de edad (edadmenor o igual a 18 años) imprima el nombre y lacantidad de meses vividos.

Instrucciones de Decisión: SI  

Instrucciones de Decisión: “SI”

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 45/113

Ejercicios

4. Hacer un algoritmo que calcule el área de untriángulo y además informe cual longitud es lamayor la altura o la base.

5. Hacer un algoritmo que lea un número entero y

muestre el cuadrado del numero si el numero esmayor a 10. el doble del numero, si el numero esmayor a 20, la mitad del numero si le numero esmayor a 50.

6. Hacer un algoritmo que lea el nombre, lacantidad de horas trabajadas y el valor de lahora. Que muestre el salario y el nombre si eltotal a pagar es mayor a 1000.

Instrucciones de Decisión: SI  

Instrucciones de Decisión: “SI”

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 46/113

Ejercicios

7. Hacer un algoritmo que lea un número entero

N, si N es par y mayor a 200 muestre el doblede N, si N es par y menor a 200 muestre lamitad de N.

8. Hacer un algoritmo que lea un número enteroN, si N es par muestre el doble de N, si Nmayor a 200 muestre la mitad de N.

9. Hacer un algoritmo que lea el nombre y la

edad de una persona, si es mayor de edadmuestre el nombre y los días vividos, si esmenor de edad muestre sólo el nombre.

Instrucciones de Decisión: SI  

Instrucciones de Decisión:

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 47/113

Instrucciones de Decisión:

“SI – SI NO” 

INICIOInstrucción 1Si expresión lógica entonces

Instrucción11Intrucción12

Instrucción13Si No

Instrucción21Intrucción22

Instrucción23Fin SiInstrucciónN

FIN PROGRAMA

Instrucciones de Decisión:

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 48/113

Ejemplo:

INICIO

Real: N, Triple, Cuadrado

Leer (N)

Si N >= 100 Entonces

Triple = N * 3

Mostrar “El Triple es”, Triple 

Si No

Cuadrado = N * N

Mostrar “El Cuadrado es”, Cuadrado 

Fin Si

FIN PROGRAMA

Instrucciones de Decisión:

“SI – SI NO” 

Instrucciones de Decisión:

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 49/113

Ejercicios

1. Lea el nombre, la edad y el sexo (1= femenino, 2=masculino) de una persona y si esta es de sexo masculinoy mayor de edad imprima el nombre, de lo contrarioimprima el nombre y edad de la persona.

2. Lea el nombre, la edad, el sexo (1= femenino, 2=masculino) y el estado civil (1= soltero, 2 = casado, 3 =otro) de una persona e imprima el nombre y la edad de lapersona sólo si esta es mujer menor de edad, de lo

contrario indique que estado civil tiene esa persona.3. Lea dos números X y Y e imprima ambos números si por lo

menos uno de ellos es positivo.

4. Lea dos números X y Y e imprima ambos números sólo si

son de diferente signo y distintos de cero.

Instrucciones de Decisión:

“SI – SI NO” 

Instrucciones de Decisión:

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 50/113

Ejercicios

5. Lea dos números, calcule el cociente de dividir el primero por elsegundo. Imprima el cociente. Pero recuerde que antes de hacer ladivisión debe evaluar que el divisor no sea igual a cero (0). Por que eneste caso debe imprimir "la división no es posible".

6. Para un salario bruto hasta de $ 250.500 no hay retención. Para un

salario bruto de $ 250.501 a $ 300.000 el porcentaje de retención esde 5% . para un salario bruto mayor a $300.000 el porcentaje deretención es del 8%. Imprimir el nombre del empleado, el salariobruto, el valor de la retención y el salario neto( salario bruto menos laretención). Se debe leer el nombre el salario hora y las horas

trabajadas.7. Leer el nombre de un empleado, el salario básico por hora y el

número de horas trabajadas durante una semana. Calcular el salarioneto, teniendo en cuenta que si el número de horas trabajadasdurante la semana es mayor a 48, esas horas de mas se consideran

horas extras y tienen un 25% de recargo.

Instrucciones de Decisión:

“SI – SI NO” 

Instrucciones de Decisión:

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 51/113

Instrucciones de Decisión:

“SI” y “SI – SI NO” Anidados INICIO

Instrucción 1Si expresión lógica entoncesInstrucción11Si expresión lógica entonces

Si Expresión lógica entonces

Instrucción12Si NOInstrucción13

Fin SiSi No

Si Expresión lógica entoncesInstrucción14

Fin SiFin Si

Fin SiInstrucciónN

FIN PROGRAMA

Instrucciones de Decisión:

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 52/113

1. En el supermercado de cadena NVCH, se trabajan

varias líneas de productos, cada producto estaetiquetado con un código el supermercado deseadesarrollar un programa que le permita a sus clientesconsultar el valor de el producto antes de ser pasado a

la registradora, a continuación entregamos lainformación de los productos con los respectivosprecios para que el programador los tenga en cuenta enel momento de desarrollar el programa.

Código producto valor1 Memorias USB 250002 Pantallas 280000

3. Discos Duros 320000

Instrucciones de Decisión:

“SI – SI NO” Ejercicios:

Instrucciones de Decisión:

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 53/113

2. La empresa NVCH inversiones decidió dar unasbonificaciones a su empleados, teniendo encuenta las siguientes condiciones:

Si las ventas en el mes son inferiores a 3.000.000de pesos tendrá una bonificación de el 0.5%sobre las ventas.Si las ventas son superiores a 3.000.000 de pesospero menores a 5.000.000 de pesos se aplicarauna bonificación de 2.5% sobre las ventas.Si las ventas son superiores a 5.000.000 de pesostendrá una bonificación de 5% sobre las ventas yademás se mostrara un mensaje de

felicitaciones.

Instrucciones de Decisión:

“SI – SI NO” Ejercicios:

Instrucciones de Decisión:

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 54/113

3. Un vendedor ofrece su producto de lasiguiente manera: Si le compran 10 productoso menos, el precio por producto es de $20. Si

le compran más de 10 artículos, el precio esde $15 por artículo. Realice el Pseudocodigoque con solo proporcionarle la cantidad de

artículos dé como resultado el precio y eltotal.

Instrucciones de Decisión:

“SI – SI NO” Ejercicios:

Instrucciones de Decisión:

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 55/113

4. Se requiere un programa de calificacionesque arroje el concepto correspondiente a lanota numérica obtenida por el estudiante,teniendo en cuenta la siguientecorrespondencia:

De 0 a 1.9..................................... Deficiente

De 2 a 2.9..................................... Insuficiente

De 3 a 3.9...................................... Aceptable

De 4 a 4.5.....................................Sobresaliente

De .6 a ..................................... Excelente

Instrucciones de Decisión:

“SI – SI NO” Ejercicios:

Instrucciones de Decisión:

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 56/113

5. Se tienen los siguientes datos: nombre y salario.

Para el calculo del impuesto se considera losiguiente:Salario

Salario <= 2000 No hay impuesto

Salario > 2000 y hasta 5000 el impuesto es del 2%del excedente de 2000

Salario > 5000 el impuesto es del 5% del excedentede 5000

Elaborar el pseudocodigo que imprima el nombre,

el impuesto y salario total.

Instrucciones de Decisión:

“SI – SI NO” Ejercicios:

Instrucción de Decisión

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 57/113

Instrucción de Decisión

MultipleINICIO

Tipo: Identificador1Leer (Identificardor1)Case Identificador1

= 1Si expresión lógica entonces

Si Expresión lógica entoncesInstrucción12Si NO

Instrucción13Fin Si

Fin Si

= 2Instrucción14

Fin CaseInstrucción15

FIN PROGRAMA

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 58/113

Instrucciones de Repetición

Las instrucciones de repetición son necesariascuando en un algoritmo hay que realizar unao muchas tareas varias veces, las

instrucciones de repetición básicas son: elMIENTRAS y el PARA, cada una de las cualestiene su propia representación y su propia

manera de controlar el número de veces quese repetirá el ciclo ( instrucciones internas ).estas características hacen que unainstrucción de repetición sea mas adecuado

que la otra en una situación particular.

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 59/113

Estructura de Repetición

Mientras (While) La estructura repetitiva mientras es aquellaen que las instrucciones internas (bucle ) seejecutan mientras se cumple una

determinada condición.

La estructura es la siguiente:

Estructura de Repetición

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 60/113

INICIOTipo: Identificador1Leer (Identificardor1)

Instrucción1Haga Mientras Expresión LógicaInstrucción2Instrucción3

Instrucción4Fin MientrasInstrucciónN

FIN PROGRAMA

Estructura de Repetición

Mientras (While)

t t d ti ió

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 61/113

Cuando se ejecuta la instrucción mientras. Laprimera cosa que sucede es que se evalúa la

condición (una expresión lógica). Si laexpresión es falsa, ninguna acción del bucle (parte interna) se ejecuta y el programa

continua en la siguiente instrucción al bucle.Si la expresión es verdadera, entonces seejecuta el cuerpo del bucle. Después de locual se evalúa de nuevo la expresión

booleana.

Estructura de Repetición

Mientras (While)

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 62/113

Este proceso se repite una y otra vez mientras

la expresión lógica (condición) sea verdadera.Dentro del cuerpo del bucle debe existir unainstrucción que modifique la expresión de talmanera que en algún momento haga que su

valor sea falso. Es decir que garantice laterminación del ciclo.

Estructura de Repetición

Mientras (While)

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 63/113

Para controlar el número de repeticiones delciclo se puede hacer de dos maneras:

1) Utilizando una Variable Contador.

2) Utilizando una Variable Centinela.

Estructura de Repetición

Mientras (While)

Estructura de Repetición Mientras

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 64/113

p

(While) Controlada con una

Variable Contador

INICIOEntero: II = 0Haga Mientras I <= 10

Mostrar I

I = I + 1Fin Mientras

FIN PROGRAMA

Estructura de Repetición Mientras

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 65/113

1. hacer un algoritmo que lea 5 datosenteros dados por el usuario y muestre lasuma de los datos impares.

2. hacer un algoritmo que lea 5 datos dadospor el usuario y muestre el porcentaje dedatos impares.

3. hacer un algoritmo que lea un datoentero N, y muestre el factorial de N(recuerde que el factorial de N es: 1 * 2 * 3

*...*N).

p

(While) Controlada con una

Variable Contador

Estructura de Repetición Mientras

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 66/113

p

(While) Controlada por una

Variable Centinela

INICIOEntero: ILeer IHaga Mientras I > 0

Mostrar ILeer I

Fin MientrasFIN PROGRAMA

se utilizan cuando no sabemos cuantas veces sedebe repetir el ciclo. en este caso se utiliza unavariable que nos servirá de centinela, paraindicarnos cuando terminar el ciclo.

Estructura de Repetición Mientras

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 67/113

1. hacer un algoritmo que muestre el promediode los datos que ingrese el usuario, setermina cuando entre el dato cero(0).

2. Hacer un algoritmo que muestre el salariototal a pagar de la compañía XYZ , el salariomayor a pagar , el salario menor a pagar y

el nombre de l empleado que gana el mayorsalario y del empleado que gana el menorsalario; a demás el promedio de salario s quepaga la empresa.

p

(While) Controlada por una

Variable Centinela

Estructura de Repetición Mientras

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 68/113

3. Hacer un algoritmo que reciba un dato N . siel dato es par muestre la sumatoria de N y sies impar muestre el factorial de N. Elalgoritmo se repite hasta que el usuario hallaindique que no desea ingresar más datos.

4. Leer y mostrar sucesivamente números.Hasta que aparezca un numero comprendido

entre 1 y 5.

p

(While) Controlada por una

Variable Centinela

Ejercicios Estructura de Repetición

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 69/113

1. Calcular el promedio de las notas que entreel usuario. Se recibirá un valor centinela de -99.

2. Hacer un algoritmo que diga cuantosnúmeros entre 1 y 100 son divisibles por 3.

3. Imprimir las 30 primeras potencias de 4, esdecir, 4 elevado a la 1, 4 elevado a la 2,etcétera.

4. Determinar el promedio de una listaindefinida de números positivos, terminados

con un número negativo.

Mientras (While)

Ejercicios Estructura de Repetición

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 70/113

5. Se desea leer las calificaciones de una clase deinformática y contar el numero total deaprobados ( 3 o mayor que 3).

6. Hacer un algoritmo para la siguiente serie de

fibonacci 1,2, 3,5,8,13…. La serie termina segúnel número N suministrado por el usuario. Estenúmero N debe ser mayo a 20 y menor o igual a

30.7. Se desea conocer una serie de datos de una

empresa con 50 empleados, decir cuantosempleados ganan más de 300000 pesos al mes,

cuantos anan entre 200000 00000 esos

Mientras (While)

Estructura de Repetición Para (For)

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 71/113

Estructura de Repetición Para (For)

INICIO

Para Expresión de Inicio, Expresión de Fin, Expresión deIncremento

Instrucción 1Instrucción 2Instrucción N

Fin Para

FIN PROGRAMA

Permite que un grupo de instrucciones se repita

cero o mas veces, dependiendo del valor queresulte al evaluar una expresión de tipo lógico.

Estructura de Repetición Para (For)

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 72/113

Ejemplo:

hacer un algoritmo que lea 5 enteros dados porel usuario

y muestre su suma.

Estructura de Repetición Para (For)

INICIOEntero N, I, SUMA = 0Para I = 1,  I < 6,  I + 1

Leer (N)

SUMA = SUMA + NFin ParaMostrar “la Suma de los Enteros es: “, SUMA

FIN PROGRAMA

Estructura de Repetición Para (For)

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 73/113

1. hacer un algoritmo que lea 5 datos dados por elusuario y muestre la suma de los datos pares.

2. hacer un algoritmo que lea un dato entero N, ymuestre la sumatoria de 1 hasta N.

3. hacer un algoritmo que lea un número entero N

si el número es par muestre la sumatoria de 1hasta N y si el numero es impar muestre elfactorial de N.

4. Imprimir las 30 primeras potencias de 4, es decir,4 elevado a la 1, 4 elevado a la 2, etcétera.

5. Hacer un algoritmo que muestre las tablas demultiplicar del uno al diez, y cada tabla del uno al

diez.

Funciones

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 74/113

Una función es un subalgoritmo que tomauno o más valores llamados argumentos oparámetros y produce un valor llamado

resultado (valor de la función para losargumentos o parámetros dados).

La declaración de una función requiere una

serie de pasos que la definen. Una funcióntiene una construcción similar a losalgoritmos.

Funciones

Si t i D l F i

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 75/113

Sintaxis para Declarar Funciones

Tipo de Dato: Nombre_Función (Lista Parámetros)< Acciones >

Retornar (Expresión)Fin Función

Invocación de las Funciones

Nombre_Función (Lista Parámetros)

Funciones

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 76/113

Funciones

La lista de parámetros actuales debe

corresponder en tipo y cantidad con la lista deparámetros (formales) definidos por la función.

Una llamada a la función implica los siguientespasos:

1.A cada parámetro formal se le asigna el valor

real de su correspondiente parámetro actual.2.Se ejecuta el cuerpo de acciones de la función.3.Se devuelve el valor de la función al nombre de

la función y se retorna al punto de llamada.

Ejemplos de Funciones

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 77/113

el siguiente algoritmo llama a la función

Sumatoria para calcular y mostrar la sumatoriade los números del 1 al 5.

Ejemplos de Funciones

InicioEntero : N = 5Mostrar “la Sumatoria de 1 hasta 5 es:”, Sumatoria (N)

Fin

en la siguiente diapositiva se muestra elfuncionamiento de la sunción Sumatoria.

Ejemplos de Funciones

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 78/113

Ejemplos de Funciones

Entero: Sumatoria (entero :Limite)Entero: I, Suma = 0Para I = 1, I <= Limite, I + 1

Suma = Suma + IFin ParaRetornar (Suma)

Fin Funcion

Mas Ejemplos de Funciones

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 79/113

el siguiente algoritmo llama a la función

DIGITOMAYOR para determinar y mostrar eldígito mayor de los números del 131 al 136.

Mas Ejemplos de Funciones

InicioEntero : Ini = 131, Fin = 136Mostrar “El digito mayor es:”, DIGITO MAYOR (Ini, Fin)

Fin

en la siguiente diapositiva se muestra elfuncionamiento de la sunción DIGITOMAYOR.

Mas Ejemplos de Funciones

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 80/113

Mas Ejemplos de Funciones

Entero: DIGITOMAYOR (entero : Inicio, entero: Tope)Entero: I, Mayor = 0Para I = Inicio, I <= Tope, Inicio + 1

Si Inicio > MayorMayor = InicioFin Si

Fin Para

Retornar (Mayor)Fin Funcion

Ejercicios de Funciones

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 81/113

1. Hacer un algoritmo que llama a la función

FACTORIAL para calcular y mostrar el factorialde los números del 1 al 5.

2. Hacer un algoritmo que llama a la función

SUMATORIA para calcular y mostrar lasumatoria de 3 números dados por el usuario.

3. el siguiente algoritmo llama a la funciónDIGITOMAYOR para determinar y mostrar el

dígito mayor de 5 números que ingrese elusuario.

Ejercicios de Funciones

Ejercicios de Funciones

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 82/113

4. Hacer un algoritmo que llame a la función

Salario_Pagar , para calcular el salario de unempleado que gana $ 497000 y laboro 4 horasextras nocturnas con un recargo del 25% paraestas horas.

5. Hacer un algoritmo que lea cinco notas por cadaalumno, el número de alumnos es N. Debe crearuna función llamada Nota_Final, que calcule la

Nota Definitiva de cada alumno.6. Hacer una función que reciba un dato N y

devuelva la suma de los dígitos pares.

j

Procedimientos

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 83/113

Un procedimiento es un subalgoritmo quetoma uno o más valores llamadosParámetros, con los cuales ejecuta tareasespecíficas.

Procedimientos

Procedimientos

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 84/113

La declaración de un procedimiento requiere

una serie de pasos que la definen. Unprocedimiento tiene una construcción similara los algoritmos, por consiguiente constaráde una cabecera que comenzará con elnombre del procedimiento y entre paréntesisuna lista de parámetros del procedimiento. Acontinuación irá el cuerpo del procedimiento,

que será una serie de acciones o instruccionesque conforman el cuerpo del procedimiento.

Procedimientos

Sintaxis para Declarar

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 85/113

Sintaxis para Declarar

Procedimientos.

Nombre_Procedimiento (Lista Parámetros)

< Acciones >

Fin Procedimiento

Invocación de los Procedimientos

Nombre_Procedimiento (Lista Parámetros)

Procedimientos

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 86/113

La lista de parámetros actuales debe

corresponder en tipo y cantidad con la listade parámetros (formal) definidos en elprocedimiento.Una llamada a un procedimiento implica los

siguientes pasos:· A cada parámetro formal se le asigna el valorreal de su correspondiente parámetro actual.

· Se ejecuta el cuerpo de acciones delprocedimiento.· Se regresa a la instrucción siguiente delpunto de llamada.

Procedimientos

Ejemplos de Procedimientos

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 87/113

el siguiente algoritmo llama al procedimintoSUMATORIA, para calcular y mostrar la

sumatoria de los números del 1 al 5.

InicioEntero : I

Para I = 1, I <= 5, I + 1SUMATORIA (I)

Fin ParaFin

en la siguiente diapositiva se muestra elfuncionamiento del procedimientoSUMATORIA..

Ejemplos de Procedimientos

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 88/113

SUMATORIA (Entero: H)Entero : K, Suma = 0

Para K = 1, K <= H, K + 1Suma = Suma + 1

Fin ParaMostrar (Suma)Fin Procedimiento

Ejemplos de Procedimientos

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 89/113

El siguiente algoritmo llama al procedimientoSUMATORIA, para calcular y mostrar la

sumatoria de 3 números dados por el usuario.

InicioEntero : I, N

Para I = 1, I <= 3, I + 1Leer (N)SUMATORIA (N)

Fin Para

Fin

en la siguiente diapositiva se muestra elfuncionamiento del procedimiento

SUMATORIA..

Ejemplos de Procedimientos

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 90/113

SUMATORIA (Entero: H)Entero : K, Suma = 0

Para K = 1, K <= H, I + 1Suma = Suma + 1

Fin ParaMostrar (Suma)Fin Procedimiento

Ejercicios de Procedimientos

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 91/113

1. Un niño va a un parque de atraccionesmecánicas y decide montar en varios juegos, a

demás pude repetir atracción mecánica(pagando). Debe hacer un procedimiento quetome el costo de disfrutar la atracción y las

veces que la disfruto, y muestre la plata quegasto en la atracción mecánica.

2. Hacer un procedimiento que muestre el valortotal de cada articulo, teniendo como base elprecio unitario y la cantidad. Como se trata deuna caja rápida, el número máximo de artículosque puede comprar es 5.

Ejercicios de Procedimientos

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 92/113

3. Hacer un Procedimiento que realice y muestre lasuma de dos números siempre que sean pares ,

que realice una multiplicación si solo uno deellos es par y una resta si ambos son impares.

4. Hacer un Procedimiento que realice el siguiente

calculo matemático: 2 + (A / B) * (10 / B).

Vectores o Arreglos

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 93/113

Un arreglo es una colección de datos del mismotipo, que se almacenan en posicionesconsecutivas de memoria y reciben un nombre

común. Para referirse a un determinadoelemento de un arreglo se deberá utilizar elnombre del arreglo acompañado de un índice elcual especifica la posición relativa en que se

encuentra el elemento.

Unidimensionales

Vectores o Arreglos

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 94/113

Los arreglos pueden ser:

 Unidimensionales (vectores).

 Bidimensionales (matrices, tablas).

 

Multidimensionales(tres dimensiones o más).

Unidimensionales

l ili ió d

Vectores o Arreglos Unidimensionales

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 95/113

Los pasos para la utilización de un vector son:1. Declarar el vector: consiste en establecer el

nombre, el tamaño y el tipo de los datos que sevan a almacenar en el arreglo ejemplo:hay que diferenciar dos términos :

tamaño del vector (T): es el numero máximo deelementos que puede contener el vector.Numero de elementos (N): que indica cuantoselementos hay almacenados en el arreglo en

determinado momento. Nota N<=T. T = 10;Real: notas[T]

2 Llenar el vector con los datos Se puede hacer

Vectores o Arreglos Unidimensionales

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 96/113

2. Llenar el vector con los datos: Se puede haceren el momento de la declaración asignando al

vector los valores que necesitamos almacenar.Ejemplo.Real : Notas [10] = {2.3 , 3.5 , 4.2 , 3.3 , 3.0 , 4.9 ,4.2 , 3.0 , 2.0 , 1.5 };

ó recorriendo el arreglo así:

para i = 1 hasta N.......leer( notas[i] )fin del para

Vectores o Arreglos Unidimensionales

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 97/113

3. Manipular la información guardada en elvector. Para esto es necesario recorrer dichaestructura y se puede hacer de la siguientemanera.

para i = 1 hasta N......mostrar ( notas[i] )fin del para

Vectores o Arreglos

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 98/113

Unidimensionales, Sintaxis

InicioTipo de Dato: <Nombre del Vector> [Nro. de Posiciones]

Fin

Inicio

Tipo de Dato: <Nombre Variable>Leer (Nombre Variable)Tipo de Dato: <Nombre del Vector> [Nombre Variable]

Fin

A continuación se dan dos formas para declarar un vector:

Vectores o Arreglos

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 99/113

Unidimensionales, Sintaxis

Inicio

Tipo de Dato: <Nombre del Vector> [Nro. de Posiciones]Tipo de Dato: <Variable con la cual se Recorrerá el Vector>Para VRV = 1,  VRV <= Nro .de Posiciones / NomonbreVariable, <Incrementos>

Leer / Mostrar (Nombre del Vector [VRV])Fin Para

Fin

A continuación se muestra la sintaxis para recorrer unVector:

Vectores o Arreglos UnidimensionalesEjemplos

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 100/113

1. Crear un vector de tamaño 10, e implementar

con el los siguientes pasos:a) Crear un Procedimiento que Llene el Vectorcon números enteros.

b) Crear un Procedimiento que Muestre elContenido del Vector.

c) Crear una función que retorne la sumatoria de

los números enteros contenidos en el vector.Determinar si el resultado de la sumatoria es unnúmero Par o Impar.

Ejemplos

Vectores o Arreglos UnidimensionalesEjemplos

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 101/113

Ejemplos

d) Crear una función que retorne el datomayor contenido en el vector.

e) Crear una función que retorne el dato

menor contenido en el vector.

f) Muestre el resultado de la diferencia entreel numero mayor y el numero menor que han

retornado las funciones anteriores.

Vectores o Arreglos UnidimensionalesEjemplos

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 102/113

1. Crear dos procedimientos así: Uno que cargue un

vector de N posiciones y el otro que determinecuantas posiciones están llenas .

2. Continuando con el caso anterior crear un

procedimiento que cargue un nuevo vector conlas posiciones exactas, es decir, que el tamaño delvector concuerde con el número de datos quealmacena.

3. Crear una función que determine cuantas vecesen el vector “Números” esta un dato dado por elusuario.

Ejemplos

Ejercicios de Vectores

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 103/113

j

4. Crear una Función que calcule el promedio de

los datos del vector “Números”. 

5. Crear una función que calcule y devuelva lasumatoria de los datos que están en las

posiciones impares del vector “Números”. 6. Crear una función que retorne el porcentaje de

los números pares del vector “Números”. 

7. Crear un procedimiento que invierta el vector ymostrarlo.

Ejercicios de Vectores

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 104/113

8. Crear un procedimiento que indique cuantasveces esta repetido un dato dentro del vector.

9. Crear un procedimiento que ordene elsiguiente vector de menor a mayor:

Vector {3,1,4,2}

10. Crear un a función que añada el dato “5” alvector anterior. (debe ajustar el tamaño alvector).

11. Crear una función que elimine el dato “3” alvector anterior (debe ajustar el tamaño alvector).

Matrices o Arreglosidi i l

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 105/113

Consiste en un vector de vectores y es

por lo tanto un conjunto de elementos

del mismo tipo en el que el orden de loscomponentes es significativo y en el que

necesitan especificarse dos subíndices

para poder identificar cada elemento dela matriz.

Bidimensionales

Matrices o ArreglosBidi i l

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 106/113

Los pasos para la utilización de una matrizson:

1. declarar la matriz: consiste en establecerel nombre, el tamaño y el tipo de los datosque se van a almacenar en la matriz ejemplo:

F = 3;C = 4;Real: matriz[F][C]

Bidimensionales

ll l i l d d

Matrices o Arreglos Bidimensionales

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 107/113

2. llenar la matriz con los datos: se puedehacer en el momento de la declaraciónasignando a la matriz los valores quenecesitamos almacenar. Ejemplo.real: notas[][ ] = { {2.3 , 3.5 , 4.2 ,3.8},{ 3.3 , 3.0 ,

4.9,5.0} ,{ 4.2 , 3.0 , 2.0 ,2.8} } ó recorriendo el arreglo así:

para F= 1, F <= 3 , F + 1

para C = 1 , C<= 4 , C + 1leer( matriz[F][C] )

fin del para

fin del para

Matrices o ArreglosBidimensionales

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 108/113

3. manipular la información guardada en la

matriz. Para esto es necesario recorrerdicha estructura y se puede hacer de lasiguiente manera.

para F = 1, F <= 3, F + 1para C = 1, C <= 4, C+ 1

mostrar ( matriz[f][c] )

fin del parafin del para

Bidimensionales

Ej i i P i d N M

Matrices o Arreglos Bidimensionales

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 109/113

Ejercicios: Para una matriz de N x M que

ya tiene los datos realizar unprocedimiento para cada uno de los

siguientes puntos.

1. Calcule y muestre el promedio detodos los datos de la matriz.

2. Calcule y muestre los promedios de

cada columna; a demás determine cualcolumna tiene el promedio mayor ycual es ese promedio.

3 Cuanto suman los datos de la

Matrices o Arreglos Bidimensionales

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 110/113

3. Cuanto suman los datos de la

diagonal principal.

4. Cual es el dato mayor de la

diagonal secundaria.

H ll l d t á it l

Matrices o Arreglos Bidimensionales

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 111/113

5. Halle el dato que más se repita en la

matriz y diga cuantas veces esta.6. Halle el dato mayor de la matriz .

7. Halle el dato menor de la matriz.

8. Ordene ascendentemente cada fila.9. Ordene ascendentemente toda la

matriz.

Matrices o ArreglosBidimensionales

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 112/113

10. Recorrer la matriz de la siguienteforma y mostrar los datos en esa

posición.

Bidimensionales

Bibliografia

5/12/2018 LOGICA DE PROGRAMACI N - slidepdf.com

http://slidepdf.com/reader/full/logica-de-programacion-55a35a7107281 113/113

Bibliografia

http://ayura.udea.edu.co/~jlsanche/