Upload
kim-sparks
View
48
Download
1
Embed Size (px)
DESCRIPTION
Lógica de programación. La siguientes diapositivas fueron extraídas del material Didáctico: Paquete Didáctico de Lógica de Programación Elaboró : Cuerpo Académico TIC Educativa Autores : M . en C. Nélida Alicia Casas Reyes Mtra . Norma Angélica Roldán Oropeza - PowerPoint PPT Presentation
Citation preview
La siguientes diapositivas fueron extraídas del material Didáctico:
Paquete Didáctico de Lógica de Programación Elaboró: 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. Datos2. Tipos de datos3. Arreglo de datos4. Variables5. Constantes6. Identificadores7. Operadores – Aritméticos– Relacionales– Lógicos
8. Jerarquía de operadores
9. Linealización de expresiones10. 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
EnterosPositivos
Negativos
RealesRacionales
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 datoJuan 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 marEdad 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 7Identificadores 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 Resultado21 % 635 + 563 % 7106 / 2215 % 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íaNOTANDOR
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 NOTMULTIPLICACION,DIVISION Y MODULO *, /, %
SUMA, RESTA +, -MENOR, MENOR O IGUAL, MAYOR, MAYOR O IGUAL <, <=, >, >=IGUAL A, DIFERENTE DE ==, !=Y ANDO 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 todos los datos involucrados, tratando de clasificarlos de acuerdo a su tipo, además de su categoría en variables o constantes, otra cuestión importante que se debe atender es ver si el dato, contiene algún valor o va a ser calculado 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 mide 9 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 pueden cambiar, 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:
Iniciofrente = 9fondo = 20area = frente * fondoEscribir (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 IDENTIFICADORESDistancia Recorrida (m) d
EntradaVelocidad Constante (m/s) vTiempo (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 de algoritmos es la toma de decisiones que se lleva a cabo a través de estructuras condicionales, en los puntos donde aparecen estas decisiones, el algoritmo tiene la posibilidad de funcionar, es decir puede optarse por realizar ciertas instrucciones del algoritmo o por no hacerlas.
• Las condiciones se pueden incluir en el algoritmo de la misma manera en que las utilizamos en nuestro actuar cotidiano, por ejemplo: – 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) Entoncesinstrucciones
Fin Si
Condicional Simple - Ejemplo
• Determinar con base a la edad de una persona si puede obtener una licencia para conducir.
InicioEscribir (“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) Entoncesinstrucciones
Si noinstrucciones
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:
InicioLeer (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) Entoncesinstrucciones
Si noSi (expresión lógica) Entonces
instruccionesSi no
instruccionesFin Si
Fin Si
Ejercicio 20
• Mostrar el mayor de 3 números ingresados por el usuario.
si
si
no
no