Fundamentos de programación

Slides:



Advertisements
Presentaciones similares
DATSI, FI, UPM José M. Peña Programación en C DATSI, FI, UPM José M. Peña Programación en C.
Advertisements

TEMA 2 MÚLTIPLOS Y DIVISORES
INTRODUCCIÓN A LA PROGRAMACIÓN
SISTEMA DE NUMEROS NÚMEROS ENTEROS DIVISIBILIDAD NÚMEROS PRIMOS
“INTRODUCCIÓN A LA LÓGICA COMPUTACIONAL”
Aritmética del Computador Introducción a la Tecnología de la Información.
Álgebra 2010 Clase N° 1 Conjuntos numéricos I
ECUACIONES LINEALES.
PROF. ING. JULIO CESAR CANO RAMIREZ
Unidad de competencia II Estadística descriptiva:
Los elementos invertibles de Z6 son 1 y 5
Estadística Administrativa I
Funciones Excel. Parte 1. Introducción 2 Una función Excel es una fórmula o un procedimiento que se realiza en el ambiente de Visual Basic, fuera de.
PROGRAMACIÓN PARALELA Tema 5: Análisis de algoritmos paralelos
TEORÍA DE CONJUNTOS.
1.- Si a un número se le restan 2/3 de su quinta parte, quedan 26.
Asignatura: Introducción a la programación
Operaciones con expresiones algebraicas
Curso de Programación I Parte II
Técnico en programación de Software
Introducción a la Estadística Informática
Ecuaciones Cuadráticas
Ecuaciones y Resolución de Ecuaciones Lineales
Igualdades y ecuaciones
Concepto de programa. Directorio Concepto de programa. Analisis del problema. Resolucion del problema. Desarroollo de un programa. Partes constitutivas.
UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERIA DIVISIÓN DE INGENIERÍA ELÉCTRICA COMPUTACIÓN PARA INGENIEROS NOTA IMPORTANTE: Para complementar.
Expresiones Algebraicas
¿Qué es un conjunto? Un conjunto es una colección de objetos considerada como un todo. Los objetos de un conjunto son llamados elementos o miembros del.
Ecuaciones de primer grado Similar al ejercicio 1 propuesto
ALGORÍTMICA Dpto. Ingeniería de Sistemas y Automática
Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A rogramación de omputadores.
3. INTRODUCCIÓN A LA PROGRAMACIÓN
Suma, resta multiplicación y división de polinomios Scherzer
ESTRUCTURAS DE SECUENCIA
REGLAS DE LOS SIGNOS.
Ingeniero Anyelo Quintero
ESCUELA: NOMBRES: LÓGICA DE LA PROGRAMACIÓN UNIDAD 2: Naturaleza de los Datos FECHA: Ing. Patricio Abad Espinoza OCTUBRE 2009 – FEBRERO Ciencias.
Operaciones con fracciones
Conceptos Básicos de Java
SUCESIONES Y PROGRESIONES.
Orden de las operaciones Prof. José N. Soto Escuela de Artes Plásticas Junio 2004.
Tema 6. Conceptos básicos de programación
UNIVERSIDAD DE MANAGUA I CUATRIMESTRE INTRODUCCION A LA PROGRAMACION
Fundamentos de Programación
Academia de Informática
CARACTERÍSTICAS DE LOS PROGRAMAS
TIPOS Y ESTRUCTURAS BÁSICAS DE DATOS
ESTRUCTURA DE DATOS ESD-243
Tema 6. Conceptos básicos de programación (Repaso) Prof. María Alejandra Quintero Informática Año 2013.
Diseño de algoritmos La computadora puede realizar procesos y darnos resultados, sin que tengamos la noción exacta de las operaciones que realiza. Con.
COMPONENTES DE UN ALGORITMOS
Juego de Preguntas y Respuestas
ETAPAS PARA SOLUCIONAR UN PROBLEMA
INTRODUCCION A LOS ALGORITMOS
PENSAMIENTO ANALÍTICO SISTÉMICO DAISY KATERINE RODRÍGUEZ DURÁN
Algoritmo Ing. Maria Rosana Heredia
Introducción a la programación
Unidad 1: FUNDAMENTOS DE COMPUTACIÓN Y PSEUDOLENGUAJE
Elementos básicos para el desarrollo de algoritmos
Términos algoritmo diseñar algoritmo implementar algoritmo
ELEMENTOS DE COMPUTACIÓN Profesor: Guillermo Figueroa
Introducción a Excel Fórmulas
UNIVERSIDAD TECNICA PERTICULAR DE LOJA
Presente un cuestionario con los aspectos mas importantes sobre los
Lic. Carla Aguirre Montalvo
Conceptos Generales Programación I Docente: Ing. Marleny Soria M.
REGLAS PARA ELABORAR SEUDOCODIGOS Y DIAGRAMA DE FLUJO
Conceptos Generales PROGRAMACIÓN I DOCENTE: ING. MARLENY SORIA M. 1.
ALGORITMOS Asignatura: Informática. Algoritmos Conjunto de instrucciones ordenadas de forma lógica y precisa, con un inicio y fin que permite resolver.
Ing. Barros Rodriguez D. Ronald Introducción a la Programacón.
Transcripción de la presentación:

Fundamentos de programación Operadores Fundamentos de programación

TIPOS DE DATOS •Simples: Ocupan una sola casilla en memoria, la cual hace referencia a un solo valor a la vez. Algunos de estos tipos de datos se pueden definir como: Enteros, Reales, Caracteres, Boléanos. •Estructurados: Se caracterizan por el hecho de que con un nombre (identificador de variable) se hace referencia a un grupo de casillas de memoria. CLASIFICACIÓN DE LOS TIPOS DE DATOS Identificador Identificador 0 1 2 3 4

DATOS NUMÉRICOS Dentro de los tipos de datos numéricos, tenemos los enteros y los reales. Los enteros son números que pueden estar precedidos del signo + o -, ya que NO tienen una parte decimal. Ejemplo 128 1587 -714 9875 127852 -178251 Los reales son números que pueden estar precedidos del signo + o – y que tienen una parte decimal. 1.5 125.6 -782.21 1222.30 1.3 5.2

DATOS ALFANUMÉRICOS Carácter (simple) y cadena de caracteres: Son datos cuyo contenido pueden ser letras del abecedario (a,b,c…z), dígitos (0123456789) o símbolos especiales (!+·=)(/&%$·”…..etc.), y que van encerrados entre comillas dobles o sencillas, dependiendo el leguaje de programación. Ejemplo de tipo dato carácter contiene un solo carácter ‘a’ ‘B’ ‘$’ ‘9’ ‘-’ ‘#’ ‘G’ Ejemplo de tipo dato cadenas de carácter contiene un conjunto de caracteres. ‘abcde’ ‘Blanco’ ‘$dsd*’ ‘9dasd55’ ‘camilo López’ ‘785454’

Datos lógicos Dentro del este tipo de datos encontramos los booleanos. Son datos que solo pueden tomar dos valores: verdadero (true) o falso (false). ¿Juan es mas alto que Pedro? Juan Pedro = Verdadero (TRUE)

OPERADORES Son elementos que relacionan de forma diferente, los valores de una o mas variables o o una constantes. Es decir, los operadores nos permiten manipular valores. Operadores aritméticos: Los operadores aritméticos permiten la realización de operaciones matemáticas con los variables y las constantes. Los operadores aritméticos pueden ser utilizados con tipos de datos enteros o reales. Si ambos son enteros, el resultado es entero; si alguno de ellos es real, el resultado es real. Los operadores aritméticos son: [+] Suma. [-] Resta. [*] Multiplicación. [/] División con decimales. [\] División entera. [Mod o Modulo] División modular o Residuo de la división. [** o ^] Exponenciación.

Operadores lógicos Operadores que permiten comparar dos valores o variables. Se dividen en operadores lógicos relacionales y operadores lógicos boléanos Operadores lógicos relacionales: Se utilizan para establecer una relación entre dos valores. Compara estos valores entre si y esta comparación produce un resultado de Verdadero o Falso. Los operadores relaciónales comparan valores del mismo tipo, tienen el mismo nivel de prioridad en su evaluación y tienen menor prioridad que los aritméticos. Los operadores relaciónales son

[>] Mayor que. [<] Menor que. [>=] Mayor o igual que. [<=] Menor o igual que. [=] Igual. [< >] Diferente

OPERADORES LÓGICOS BOLÉANOS Estos operadores se utilizan para establecer relaciones entre valores lógicos. Estos valores pueden ser resultado de una expresión relacional. Los operadores lógicos son:

And ] Disyunción Y. [Or ] Conjunción O. [Not] Negación

Jerarquía de los operadores Para resolver cualquier operación o ejercicio se debe desarrollar teniendo en cuenta el siguiente orden: Todas las expresiones entre paréntesis se evalúan primero. Las expresiones con paréntesis anidados se evalúan desde el centro hacia fuera, el paréntesis mas interno se evalúa primero. Dentro de una misma expresión los operadores se evalúan en el siguiente orden. Exponenciación Multiplicación, División (Con decimales) División Entera y División Modular. Suma y resta

Cuando se encuentran operadores del mismo nivel, estos se desarrollan de izquierda a derecha. Cuando se encuentran varios paréntesis, se empiezan a desarrollar por el más interno. Un paréntesis, sólo desaparece, cuando queda un solo término en medio de ellos

Jerarquía de los operadores Para desarrollar cualquier operación algorítmica es necesario utilizar la jerarquía de los operadores, ya que ella indica el orden e importancia de cada uno de los operadores aritméticos

Tomaremos como ejemplo la expresión [2 * 5 + 3]. Algunos tendrían la duda de cual operación resolver en primera instancia ¿La multiplicación o la suma?; otros sumarían y luego multiplicaría diciendo que la respuesta es 16

Para no cometer estos errores o no tener duda al momento de resolver una operación matemática, tenga en cuenta la jerarquía de los operadores, donde notará que primero se debe realizar la multiplicación y luego la suma, por lo tanto la respuesta correcta será 13, discriminado de la siguiente manera:

2 * 5 + 3 10 + 3 13 Resultado Correcto

40 / 5 + 8 ^ 2 * 3 ------> 1° es la exponenciación 40 / 5 + 64 * 3 ---------> Primero se resuelve la división (de izquierda a derecha) 8 + 64 * 3 --------------> Luego división (mismo nivel jerárquico de multiplicación) 8 + 192-----------------> Por último se realiza la suma 200

Primero se resuelve la Exponenciación, ya que al no haber paréntesis, es el operador de mayor jerarquía. En la segunda línea se da solución a la división, que a pesar de estar al mismo nivel que la multiplicación, la condición es que se deben desarrollar de izquierda a derecha. Así, luego de la división se desarrolla la multiplicación, y por última la suma que es el operador ubicado en el último nivel. Observe que en cada línea se señala la operación a solucionar, y en la línea siguiente va la solución a ese cálculo. Lo demás queda igual, sin modificarse.

Primero se resuelve la Exponenciación, ya que al no haber paréntesis, es el operador de mayor jerarquía. En la segunda línea se da solución a la división, que a pesar de estar al mismo nivel que la multiplicación, la condición es que se deben desarrollar de izquierda a derecha. Así, luego de la división se desarrolla la multiplicación, y por última la suma que es el operador ubicado en el último nivel.

Observe que en cada línea se señala la operación a solucionar, y en la línea siguiente va la solución a ese cálculo. Lo demás queda igual, sin modificarse. Luego de adquirir habilidad y práctica con estas operaciones, se podrán desarrollar varias operaciones y cálculos de forma simultanea. En algoritmos se manejan tres tipos de división, las cuales a pesar de su similitud son totalmente diferentes. Tomaremos el caso de dividir 51 por 2 y sumarle 3 utilizando estos tres tipos de división

51 / 2 + 3 ---> La división ( / ) indica que se manejan decimales 25.5 + 3 -----> Luego se realiza la suma de los dos valores 28.5 51 \ 2 + 3 ---> La división ( \ ) indica que sólo se maneja la parte entera. 51 \ 2= 25

25 + 3 -----> Luego se realiza la suma de los dos valores 28 51 mod 2 + 3 ---> (mod) indica que se usa el residuo de la división 51 mod 2 = 1 1 + 3 -----> Luego se realiza la suma de los dos valores 4

Observe lo distinto de los resultados Observe lo distinto de los resultados. La división modular toma sólo el residuo de la división: El 2 en el 51 está 25 veces. 25 x 2 = 50. Por lo tanto de 50 a 51 hay 1 (este es el residuo de la división). Para entender mejor observemos los siguientes Ejercicios

En el primer tipo de división (Ejercicio 11) se tienen en cuenta los decimales. En el segundo sólo la parte entera (Ejercicio 12 - como es divisible da lo mismo que la división anterior), y en el último, el residuo de la división (en este caso es 0, porque es 50 es divisible por 2).

EJERCICIOS 9 + 2 * 12 / 2 ^ 2 + ((5 ^ 3) / 10 + 2.5) 9 + 2 * 12 / 2 ^ 2 + (125 / 10 + 2.5) 9 + 2 * 12 / 2 ^ 2 + (12.5 + 2.5) 9 + 2 * 12 / 2 ^ 2 + 15 9 + 2 * 12 / 4 + 15 9 + 24 / 4 + 15 9 + 6 + 15 15 + 15 30

20 / 2 / 2 / 5 + (41 \ 2 \ 5 + 3) 20 / 2 / 2 / 5 + (20 \ 5 + 3) 20 / 2 / 2 / 5 + (4 + 3) 20 / 2 / 2 / 5 + 7 10 / 2 / 5 + 7 5 / 5 + 7 1 + 7 8

(2 ^ 2 * 4 * 3) \ 2 + (2 ^ 5 mod 2 ^ 2 * 3) (4 * 4 * 3) \ 2 + (2 ^ 5 mod 2 ^ 2 * 3) (16 * 3) \ 2 + (2 ^ 5 mod 2 ^ 2 * 3) 48 \ 2 + (2 ^ 5 mod 2 ^ 2 * 3) 48 \ 2 + (32 mod 2 ^ 2 * 3) 48 \ 2 + (32 mod 4 * 3) 48 \ 2 + (32 mod 12) 48 \ 2 + 8 24 + 8 32

3 ^ 3 + 2 ^ 3 – 4 ^ 2 + 5 / 5 \ 2) mod 3 (27 + 2 ^ 3 – 4 ^ 2 + 5 / 5 \ 2) mod 3 (27 + 8 – 4 ^ 2 + 5 / 5 \ 2) mod 3 (27 + 8 – 16 + 5 / 5 \ 2) mod 3 (27 + 8 – 16 + 1 \ 2) mod 3 (27 + 8 – 16 + 0) mod 3 (35 – 16 + 0) mod 3 (19 + 0) mod 3 19 mod 3 1

(10 ^ 3 + 5 * 100 / 5) + 54 - (605 mod 2) * 1150 (1000 + 5 * 100 / 5) + 54 - (605 mod 2) * 1150 (1000 + 500 / 5) + 54 - (605 mod 2) * 1150 (1000 + 100) + 54 - (605 mod 2) * 1150 1100 + 54 - (605 mod 2) * 1150 1100 + 54 – 1 *1150 1100 + 54 -1150 1154 – 1150 4

360 / 2 / 10 / 3 - (45 mod 8) * 8 + 38 + 500 360 / 2 / 10 / 3 – 5 * 8 + 38 + 500 180 / 10 / 3 – 5 * 8 + 38 + 500 18 / 3 – 5 * 8 + 38 + 500 6 – 5 * 8 + 38 + 500 6 – 40 + 38 + 500 -34 + 38 + 500 4 + 500 504

36 – 32 - 80 mod (48 mod 10 - 6) + 20 36 – 32 - 80 mod (8 - 6) + 20 36 – 32 - 80 mod 2 + 20 36 – 32 – 0 + 20 4 – 0 + 20 4 + 20 24

3 * (2 ^ 4 + (5 * 3 ^ 3 + 2) \ 7) mod 2 3 * (2 ^ 4 + (5 * 27 + 2) \ 7) mod 2 3 * (2 ^ 4 + (135 + 2) \ 7) mod 2 3 * (2 ^ 4 + 137 \ 7) mod 2 3 * (16 + 137 \ 7) mod 2 3 * (16 + 19) mod 2 3 * 35 mod 2 105 mod 2 1

Metodología para la solución de problemas con la computadora ESPECIFICACIÓN DEL PROBLEMA ANÁLISIS DEL PROBLEMA CODIFICACIÓN DIGITALIZACIÓN COMPILACIÓN VERIFICACIÓN DOCUMENTACIÓN

ESQUEMA DE UN COMPILADOR DATOS Programa fuente Compilador Programa objeto Ejecución del programa Resultados

ESQUEMA DE UN INTÉRPRETE DATOS Programa fuente Compilador Resultados

SOLUCIÓN DE PROBLEMAS APLICANDO MODELOS MATEMÁTICOS FÓRMULAS DATOS RESULTADOS

SOLUCIÓN DE PROBLEMAS APLICANDO MODELOS MATEMÁTICOS ANALISIS ALGORITMO ¿Qué datos necesito? Capturar el numero 1 Capturar el numero 2 ¿Qué formulas voy a utilizar? Algoritmo de la suma: Suma = numero 1 + numero 2 ¿Qué resultados voy a obtener? Imprimir el resultado de la suma.

Características y formas de los algoritmos Tres características básicas: Preciso: debe ser concreto, no tener pasos de mas y la solución tiene que ser clara y concreta. Congruente: al probarse varias veces los resultados deben ser los mismos. Finito: al seguir los pasos deben llegar a la solución, es decir, debe tener termino.

Características y formas de los algoritmos Los algoritmos pueden ser creados de dos formas distintas: 1. Pseudo-código: es un conjunto pequeño y claro de instrucciones; en secuencia, que permite llevar a cabo una tarea. 2. Diagrama de flujo: es la representación de la secuencia, a través de símbolos, de la tarea que se va a realizar.

Características y formas de los algoritmos En pseudo-código Inicio Escribe: (“calcula el area de cualquier rectangulo”) Escribe: (“de largo mide”) Captura: (largo) Escribe: (“de ancho mide”) Captura: (“ancho”) Formula: área = largo x ancho Escribe: (“ el area mide:” , area) fin

Características y formas de los algoritmos En diagrama de flujo Entrada (in) Entrada (in) ancho largo inicio Salida (out) área Área = largo x ancho fin

Estructura para crear un modelo lineal. Para elaborar programas que emplean distintos tipos de valores, debemos conocer la estructura necesaria: TIPOS DE VARIABLES: los datos deben ser almacenados en casillas o celdas de memoria. Reciben el nombre de variables y en ellas se almacenan los valores numéricos o alfanuméricos.

VARIABLES REALES: únicamente almacenan números “reales”, enteros o decimales, positivos o negativos. VARIABLES ALFANUMÉRICAS: almacenan cualquier valor que no se utilice para realizar cálculos aritméticos. Una letra, cadena de letras, direcciones, nombres de personas, palabras…

OPERADORES ARITMÉTICOS Operación Ejemplo Resultado ^ Potencia 4 ^ 3 64 * Multiplicación 4 * 3 12 / División 4 / 2 2 + Suma 4 + 2 6 - Resta 4 – 2 = Asignación A = 3

JERARQUÍA DE OPERACIONES Resultado Comentario 1a. ( 4 / 2) paréntesis Se ejecutan antes que ninguna. 2a 4^3 = 64 Después del () 3a. 4 * 8 = 32 ó 4 / 2 = 2 Tienen la misma jerarquía 4a. 7 – 2 = 5 ó 2 + 3 = 5 5a. A = A + 1 Al final de la operación se asigna el valor