lógica de programación

Post on 06-Jul-2015

503 Views

Category:

Education

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

Lógica de Programación Datos Tipos de datos Arreglo de datos Variables Constantes Identificadores Operadores Aritméticos Relacionales Lógicos Jerarquía de operadores Linealización de expresiones Algoritmos Pseudocódigo Diagramas de Flujo Datos de Entrada y de Salida Datos Intermedios Condicionales Simples Dobles Anidadas

TRANSCRIPT

La siguientes diapositivas fueron extraídas del material Didáctico:

Paquete Didáctico de Lógica de ProgramaciónElaboró: Cuerpo Académico TIC Educativa

Autores:M. en C. Nélida Alicia Casas Reyes

Mtra. Norma Angélica Roldán OropezaFis. Juan Ramón Flores Villa

Diseño gráfico:Mtra. Areli Torres GonzálezMtra. Veronica Lizardi Rojo

Lógica de programación

Contenido

1. Datos

2. Tipos de datos

3. Arreglo de datos

4. Variables

5. Constantes

6. Identificadores

7. Operadores

– Aritméticos

– Relacionales

– Lógicos

8. Jerarquía de operadores

9. Linealización de expresiones

10. Algoritmos

– Pseudocódigo

– Diagramas de Flujo

– Datos de Entrada y de Salida

– Datos Intermedios

11. Condicionales

– Simples

– Dobles

– Anidadas

Datos

• Los datos son todos aquellos elementos de información presentes en cualquier situación a resolver.

• Sin la existencia de ellos, ni siquiera podría plantearse un problema, o bien, el mismo no tendría una solución.

• Se considera información útil sólo a los datos necesarios para resolver un problema.

Ejercicio 1

• Juan Pérez, casado, vive en la calle 3 Norte #3245, tiene que pagar sus cuentas mensuales de Colegiatura, Renta y Teléfono (su teléfono es el 2345567). El monto de cada recibo es de $1,200.00, $2,500.00 y $548.00 respectivamente, él percibe un sueldo quincenal de $5,300.00 y en este momento dispone de $4,000.00 para hacer sus pagos.

Ejercicio 1

Datos

Ejercicio 1

Datos

Juan Pérez

Calle 3 Norte #3245

teléfono 2345567

Colegiatura $1,200.00

Renta $2,500.00

Teléfono $548.00

Sueldo Quincenal $5,300.00

Dinero disponible $4,000.00

Ejercicio 1

• Juan Pérez, casado, vive en la calle 3 Norte #3245, tiene que pagar sus cuentas mensuales de Colegiatura, Renta y Teléfono (su teléfono es el 2345567). El monto de cada recibo es de $1,200.00, $2,500.00 y $548.00 respectivamente, él percibe un sueldo quincenal de $5,300.00 y en este momento dispone de $4,000.00 para hacer sus pagos.

• ¿Cuánto dinero tendrá después de hacer sus pagos para gastarlos en familia?

Ejercicio 1

Datos

¿El dato es relevante pararesolver el problema?

SI NO

Juan Pérez

Calle 3 Norte #3245

teléfono 2345567

Colegiatura $1,200.00

Renta $2,500.00

Teléfono $548.00

Sueldo Quincenal $5,300.00

Dinero disponible $4,000.00

Tipos de datos

• Clasificar la información

– Se hace de acuerdo al tipo de datos que se maneja, (de ello dependerán las operaciones que sobre tales datos podamos realizar).

– Por ejemplo, no podemos considerar que el nombre de una persona sea un número o que el número de páginas que tiene un libro sea una fracción.

– Una vez que logremos identificar los datos necesarios dentro de un problema, vamos a asignarles un tipo.

• Los tipos que debemos considerar para nuestros datos son:

– Numéricos (valores medibles o cantidades)

– Alfanuméricos (símbolos o letras)

– Lógicos (FALSO y VERDADERO)

Tipos de datos numéricos

Numéricos

Enteros

Positivos

Negativos

Reales

Racionales

Irracionales

Sin signo negativo ni punto decimal

Con signo negativo y sin punto decimal

Con punto decimal

Parte decimal infinita

Tipos de datos alfanuméricos

Alfanuméricos

Cadenas

Caracteres

Secuencia de letras/ números/ símbolos“Calle 3 Norte #3245”

Letra / numero / símbolo‘c’

Tipos de datos lógicos

• El tipo de dato lógico o booleano es en computación aquel que puede representar valores de lógica binaria, representan falso o verdadero.

TIPOS DE

DATOS

Ejercicio 1

Dato Tipo de dato

Juan Pérez

Calle 3 Norte #3245

teléfono 2345567

Colegiatura $1,200.00

Renta $2,500.00

Teléfono $548.00

Sueldo Quincenal $5,300.00

Dinero disponible $4,000.00

Representación en la computadora

Tipo de dato Dato Representación en la computadora

Cadena de caracteres Rodrigo González “Rodrigo González”

carácter @ ‘@’

Número entero 245 245

Número real 45.0987 45.0987

Lógico (booleano) Si (verdadero) true

Lógico (booleano) No (falso) false

Ejercicio 2

Descripción Dato Tipo de Dato Representación en la computadora

La temperatura de un día en el polo norte.

Carácter usado para terminar un párrafo y comenzar otro.

carácter

A cuántos metros se encuentra Puebla sobre el nivel del mar

Edad de una persona

Número Irracional √2

Arreglos de datos

• Uno de los recursos utilizados en la programación de computadoras, son los arreglos que son conjuntos de datos del mismo tipo.

• Los arreglos tienen una dimensión que se refiere al número de datos que contienen.

Arreglos

Arreglo Conjunto de elementos de un mismo tipo. Este arreglo es de dimensión 5.

Ejercicio 3

Analiza los siguientes conjuntos de datos e indica cualesson arreglos y cuales no lo son. Aquellos que consideres que son arreglos, indicaqué dimensión tienen.

Variables

• Una variable es un elemento que permite el almacenamiento de un dato.

• Las variables pueden tomar distintos valores, cambian su valor cuantas veces sea necesario.

• En el ámbito de la programación, las variables se crean en la memoria de la computadora.

Variables

• Atributos:– identificador ó nombre de la variable.

– valor que en se encuentra almacenado en ella

– tipo, o rango de valores que puede almacenar.

• Por ejemplo, para guardar la edad de una persona, puede proponerse una variable cuyo identificador sea edad, el tipo de la variable será entero, esto significa que a la variable sólo le podremos asignar valores numéricos enteros, y además el valor 18, será válido para ser guardado en ella.

Ejercicio 4

• Extraiga los datos de la situación que se describe a continuación y proponga una variable para cada uno de ellos, registre los datos en la tabla, de forma similar al ejemplo:

• “En la empresa ACME, han implementado una política para mejorar la puntualidad de sus empleados, mediante un dispositivo lector de huella digital que es utilizado para registrar la hora de entrada y de salida de cada uno de ellos. El dispositivo asocia la huella con el nombre, la fecha, la hora y el número de empleado que lo utiliza, cuando un empleado checa 11 minutos o más después de su hora de entrada se le reporta un retardo. El 23 de julio, Gerardo Robles con número de empleado 3245 registró su entrada a las 6:59 y lo volvió a hacer a las 16:08 antes de salir (El horario de este empleado es de 7:00 a 16:00 hrs.)

Ejercicio 4

Constantes

• Una constante es un dato de cualquier tipo: numérico, alfanumérico o lógico que a diferencia de una variable, su valor no cambia.

• Por ejemplo: pi = 3.1416, es un dato útil en el cálculo del área de un círculo, que, independientemente del valor de un radio, mantiene siempre el mismo valor.

• Las constantes al igual que las variables tienen identificador ó nombre, valor y tipo.

Ejercicio 5

• Calcular el salario total quincenal de una persona sabiendo que su sueldo base es de $5,300.00, más despensa de $ 750.00 y $ 350.00 de compensación. Existe la posibilidad de trabajar horas extras, en este caso, el monto de cada hora extra es de $98.00.

• Los descuentos que se le realizan son impuestos 10% y servicio médico 15%.

Ejercicio 6

• De los siguientes datos, indique con una C a las constantes y con una V a las variables y argumente su respuesta.

Identificadores

• Nombres simbólicos que se asigna el programador a variables y constante

• Deben obedecer ciertas reglas

• Es conveniente utilizar nombres apropiados, es decir, que exista relación entre el dato y su nombre.

Identificadores - Reglas

• Empezar con una letra o el símbolo de guión bajo ( _ ).

• No deben incluir operadores (+ - * / % & = ).

• No deben incluir signos de puntuación ni comillas o apóstrofes ( . , ; : ¿ ¡ “ ‘ ).

• Pueden contener números combinados con otros caracteres (no exclusivamente números).

• No deben llevar espacios en blanco.

Ejercicio 7

Identificadores Correcto (SI/NO) Argumento

123dato No El primer carácter es un número

_nombre

lugar_de_nacimiento

fecha actual

calificación final

xyz

resultado2

valor+impuesto

nombre.completo

estado_civil?

Nivel_de_estudios:

hombre/mujer

Ejercicio 8

Operadores aritméticos

• Una operación es una función que se aplica a uno o más valores, obteniendo algún resultado.

• Los símbolos que representan una operación, se denominan operadores.

• Los operadores aritméticos, son todos aquellos que se aplican a datos de tipo numérico obteniendo después de su aplicación resultados numéricos.

Operadores aritméticos

• Los operadores aritméticos son:

Operador Operación

+ Suma

- Resta

* Multiplicación

/ División

% Módulo

Operador modulo

• El operador módulo da como resultado el residuo de una división.

• Por ejemplo 20 % 7 da como resultado 6 que es el residuo de la división de 20 entre 7.

Ejercicio 9

• Encuentre el resultado de las siguientes expresiones

Expresión Resultado

21 % 6

35 + 5

63 % 7

106 / 2

215 % 8

Expresiones aritméticas

• Una expresión se construye mediante la aplicación de operaciones sobre datos (variables o constantes).

• Al momento de resolver una expresión aritmética, es importante saber en qué orden se realizan las operaciones que se involucran en la misma.

• Así por ejemplo, las expresiones:

• (3+4)/2

• 3+4/2

– no son equivalentes, es decir, al evaluarse no dan el mismo resultado.

Jerarquía de operadores

Operador Operación

( ) Parentesis

*, / , % Multiplicación, División, Módulo

+ , - Suma, Resta

Ejercicio 10

2 * 25 + 3 * 10 + 2 * 5 = ?

Operadores relacionales

• Son aquellos que comparan dos valores del mismo tipo y tienen la característica de que al ser aplicados, el resultado que devuelven es de tipo booleano (falso o verdadero).

Operadores relacionales

Operadores relacionales

Operadores lógicos

• Devuelven valores booleanos.

• Operadores lógicos son:

– AND

– OR

– NOT

• Para poder construir expresiones lógicas es necesario conocer las tablas de verdad.

Tablas de verdad – AND

Tablas de verdad - OR

Tablas de verdad – NOT

Operadores lógicos – Jerarquía

Jerarquía

NOT

AND

OR

Ejercicio 11

CONSIDERANDO LOS VALORES DE A = VERDADERO Y B = FALSO

Jerarquía de operadores en expresiones mixtas

• Los operadores aritméticos se aplican sobre datos numéricos y devuelven valores numéricos.

• Los operadores relacionales se aplican sobre datos numéricos, cadenas, caracteres, y devuelven valores booleanos (FALSO y VARDADERO).

• Las operaciones lógicas sólo se pueden aplicar a datos booleanos, devolviendo resultados booleanos.

Jerarquía de operadores

TIPO EXPRESION

PARENTESIS ( )NEGACION NOT

MULTIPLICACION,DIVISION Y MODULO *, /, %

SUMA, RESTA +, -

MENOR, MENOR O IGUAL, MAYOR, MAYOR O IGUAL <, <=, >, >=

IGUAL A, DIFERENTE DE ==, !=

Y AND

O OR

Ejercicio 12

( )

NOT

*, /, %

+, -

<, <=, >, >=

==, !=

AND

OR

Ejercicio 13

Dado que a=10, b=15, y c=10.

Ejercicio 13

Linealización de expresiones

Se refiere a escribir las expresiones algébricas en una sola línea sin que el resultado se vea afectado.

= ( 2 + 3 - 4*(a-5) ) / ( b – 7 / (a +3 ))

Ejercicio 14

Algoritmo

• Un algoritmo es un procedimiento a seguir para resolver algún problema

• Las acciones se realizan por una serie finita de pasos para así llegar a la solución del problema

• Se expresan de dos formas como pseudocódigo y en diagramas de flujo

Algoritmo

• Por ejemplo, considere el algoritmo que se elaboraría para el problema o situación de levantarse todas las mañanas para ir al trabajo:

1. Salir de la cama2. Quitarse la pijama3. Ducharse4. Vestirse5. Desayunar6. Arrancar el automóvil para ir al trabajo o tomar

transporte.

Algoritmo

• Para construir algoritmos es necesario identificar:

– Lo que requieres para la solución

– Que operaciones se deben realizar

Ejercicio 15

• Realizar un algoritmo para cada una de las situaciones planteadas:

– Realizar un viaje en avión

– Ir de la casa a la escuela

– Realizar una llamada telefónica desde un teléfono público

– Buscar el significado de una palabra en el diccionario de español

– Ir al cine a ver una película

Algoritmos

• Para construir un algoritmo, es importante detectar todoslos datos involucrados, tratando de clasificarlos deacuerdo a su tipo, además de su categoría en variables oconstantes, otra cuestión importante que se debeatender es ver si el dato, contiene algún valor o va a sercalculado según progrese el algoritmo.

• Formular las expresiones para calcular los resultados.

• Finalmente escriba el algoritmo sin omitir ningún paso.

Algoritmo - Ejemplo

• Problemática: Calcular el área de un terreno que mide9 metros de frente por 20 de fondo.

• Detectar datos:– frente, fondo y área, los tres datos son de tipo numérico,

ninguno es constante puesto que las dimensiones puedencambiar, se cuenta con los valores del frente y el fondo y elárea será calculada en las etapa final del algoritmo.

– De aquí, proponemos 3 variables: frente, fondo y area.

• Formular las expresiones:– area = frente * fondo

Algoritmo - Ejemplo

• Finalmente, el algoritmo descriptivo con la solución del problema quedaría:

Inicio

frente = 9

fondo = 20

area = frente * fondo

Escribir (area)

Fin

Ejercicio 16

• Realice un algoritmo para calcular la edad en meses de una persona que nació en enero del año 2000

Ejercicio 17

• Realice un algoritmo para calcular el sueldo de una persona que trabajó 45 horas en una semana, sabiendo que el pago por hora normal es de 50.00, las horas extras se pagan 15% más que las normales y que se consideran horas extras a aquellas que rebasan una jornada de 40 horas a la semana.

Datos de entradas y de salidas

• Al elaborar algoritmos es importante identificar los datos que se presentan y son necesarios para poder resolver el problema planteado.

• Estos datos se conocen como de entrada y son aquellos que la computadora va a procesar.

• Los datos de salida son datos derivados, es decir, obtenidos a partir de los datos de entrada.

• A los datos de entrada se les considera la materia prima de los datos de salida.

Datos E/S - Ejemplo

• Se desea calcular la distancia recorrida (m) por un móvil que tiene velocidad constante (m/s) durante un tiempo T (segundos), considerar que es un Movimiento Rectilíneo Uniforme.

• A continuación se presenta una solución a través de un algoritmo descriptivo.

Salida IDENTIFICADORES

Distancia Recorrida (m) d

Entrada

Velocidad Constante (m/s) v

Tiempo (s) t

Datos E/S - Ejemplo

• Inicio

– Leer (v)

– Leer (t)

– d = v * t

– Escribir (d)

• Fin

Diagramas de flujo

Ejemplo – Diagramas de Flujo

Ejercicio 18

• Para los siguientes problemas, identifica los datos de entrada y salida, asignándoles un identificador válido y plantea un algoritmo descriptivo para solucionarlos:

1) Se necesita obtener el promedio de un estudiante a partir de sus tres notas parciales.

2) Realice un algoritmo que permita calcular los minutos transcurridos entre dos horas que serán proporcionadas en hora y minutos.

3) Realice un algoritmo que solicite dos datos numéricos y con ellos efectúe las operaciones aritméticas básicas de suma, multiplicación, resta y división, mostrando el resultado de cada una de ellas.

Datos Intermedios

• Existen datos que solo se utilizan para almacenar algún valor temporalmente y se les conoce como datos intermedios. Por ejemplo:

• Elabore un algoritmo que solicite el número de respuestas correctas, incorrectas y en blanco, correspondientes a postulantes, y muestre su puntaje final considerando, que por cada respuesta correcta tendrá 4 puntos, respuestas incorrectas tendrá -1 y respuestas en blanco tendrá 0.

Ejemplo – Datos Intermedios

Salida Identificador

Puntaje Final pfinal

Entrada

Número de Respuestas Correctas rcorrectas

Número de Respuestas Incorrectas rincorrectas

Número de Respuestas en Blanco rblanco

Intermedio

Puntaje de Respuestas Correctas prcorrectas

Puntaje de Respuestas Incorrectas princorrectas

Ejemplo – Datos Intermedios

• Inicio– Leer (rcorrectas)

– Leer (rincorrectas)

– Leer (rblanco)

– prcorrectas = rcorrectas * 4

– princorrectas = rincorrectas * (-1)

– pfinal = prcorrectas + princorrectas

– Escribir(pfinal)

• Fin

Ejercicio 19

• Elabore un algoritmo que permita ingresar el número de partidos ganados, perdidos y empatados, por castores UTP en el torneo de apertura, se debe de mostrar su puntaje total, teniendo en cuenta que por cada partido ganado obtendrá 3 puntos, empatado 1 punto y perdido 0 puntos.

Condicionales

Condicionales Simples

• Una acción muy frecuente y útil en la construcción dealgoritmos es la toma de decisiones que se lleva a cabo através de estructuras condicionales, en los puntos dondeaparecen estas decisiones, el algoritmo tiene la posibilidad defuncionar, es decir puede optarse por realizar ciertasinstrucciones del algoritmo o por no hacerlas.

• Las condiciones se pueden incluir en el algoritmo de la mismamanera en que las utilizamos en nuestro actuar cotidiano, porejemplo:

– Voy a salir, si está nublado, llevo un paraguas .

– Si paso el examen de admisión, estudio en la UTP.

– Si tengo dinero, me compro una computadora”, etc.

Condicionales Simples

• La estructura de la condicional tiene la forma:

Si (expresión lógica) Entonces

instrucciones

Fin Si

Condicional Simple - Ejemplo

• Determinar con base a la edad de una persona si puede obtener una licencia para conducir.

Inicio

Escribir (“Proporcione su edad”)

Leer (edad)

Si ( edad > 18 ) Entonces

Escribir (“Licencia autorizada”)

Fin si

Fin

Condicional Simple - Ejemplo

Condicionales dobles

• Hay situaciones en la que no solo existe una opción de decisión, sino que se nos presentan dos opciones o alternativas posibles, dependiendo si se cumple la condición planteada en un problema. Ejemplos:

– Una persona planea ir a un balneario si el día esta soleado, de lo contrario, visitará un museo.

– Si paso el examen de admisión estudio en la UTP, si no trabajare.

Condicionales dobles

• La estructura de la condicional doble tiene la forma:

Si (expresión lógica) Entonces

instrucciones

Si no

instrucciones

Fin Si

Ejemplo – Condicionales dobles

• Se desea mostrar el número mayor al comparar 2 números diferentes. El problema anterior lo podemos expresar con el siguiente algoritmo:

Inicio

Leer (num1)

Leer (num2)

Si ( num1 > num2) Entonces

Escribir ( num1 )

Si no

Escribir (num2)

Fin si

Fin

Condicionales Anidadas

• En algunas ocasiones se tienen más de dos condiciones por evaluar, entonces después de emplear un condicional SI, se hace necesario aplicar otros condicionales SI dentro del condicional.

Si (expresión lógica) Entonces

instrucciones

Si no

Si (expresión lógica) Entonces

instrucciones

Si no

instrucciones

Fin Si

Fin Si

Ejercicio 20

• Mostrar el mayor de 3 números ingresados por el usuario.

si

si

no

no

top related