La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A rogramación de omputadores.

Presentaciones similares


Presentación del tema: "Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A rogramación de omputadores."— Transcripción de la presentación:

1 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A rogramación de omputadores

2 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A Algoritmos: Constructores Básicos

3 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A CONTENIDO 1.Estructura de un algoritmo 2.Los datos en programación 3.Instrucciones sobre variables 4.Estructuras de control 5.Codificación de algoritmos en C++

4 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A ESTRUCTURA DE UN ALGORITMO Los elementos fundamentales: Datos. Instrucciones. Estructuras de control.

5 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A Concepto de Dato Pieza de información simple un número un código un hecho una edad

6 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A Tipo de Dato Un conjunto es una colección bien definida de elementos (objetos). Las vocales Los dígitos

7 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A Tipo de Dato Todo conjunto debe tener un nombre. Z y entero R y real ASCII y caracter Booleano Cadena Libros

8 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A Tipo de Dato El nombre del conjunto al que pertenece el dato constituye el tipo del mismo.

9 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A Datos en programación Entero son representados utilizando 2, 4 u 8 bytes. 2 bytes: rango(0 - 65536) enteros sin signo. rango(-32767 - 32768) enteros con signo.

10 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A Datos en Programación Reales: son representados utilizando dos esquemas: –Punto Flotante: Real representado como un entero y un byte adicional que indica la posición del punto. –Punto Fijo: Real representado por dos enteros, una mantisa y un exponente. 12345.6789 es representado como: Mantisa = 123456789 Exponente =5 pues 0.123456789*10 5 = 12345.6789

11 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A Datos en Programación Caracteres: representados en codificación ASCII, se asigna a cada carácter un valor numérico representado por un byte. Ejemplo: el carácter ´A´ mayúscula es representado por el byte 01000001 (65 en decimal), la letra ´B´ mayúscula por el byte 66 en decimal y así sucesivamente.

12 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A Datos en Programación Existe un código ASCII para cada carácter representable (lista utilizada en los Laboratorios), algunos ejemplos: Espacio32 ;59 048 *42 149 a97 957

13 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A Datos en Programación Cadenas: secuencia de letras, números u otros caracteres que se escriben dentro de comillas dobles. Ejemplo: Estoy en clase de programación

14 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A Booleanos : sólo pueden tomar valor falso o verdadero. Datos en Programación

15 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A Datos en Programación Distinciones importantes: REAL 2.0 ENTERO 2 CARACTER X CADENA X

16 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A Variables Variable : es un símbolo que permite referenciar (señalar o demarcar) un espacio en memoria en el que se puede almacenar un dato.

17 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A Nombre Tipo Estado o Valor MEMORIA nombrePablito Pérezcadena sumaentero168 Variables

18 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A Variables Declaración de una variable : x : real contador : entero Ejemplos

19 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A Variables El valor de una variable puede cambiar en el tiempo.

20 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A Literales Secuencia de caracteres que representa un valor concreto. Tipos : entero: 12345, –138 real: 3465.98, –3.987 caracter: a, 3 cadena: pepito va al colegio booleano: falso o verdadero

21 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A Constantes Constante: es un símbolo que permite referenciar un espacio en memoria en el que hay un dato almacenado que NO se puede cambiar.

22 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A Constantes Declaración de una constante = PI = 3.1416 TAMANO_MAXIMO = 1000 MENSAJE = Digite los datos

23 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A Expresiones E xpresión: es una serie de términos (constantes, literales, variables y funciones) posiblemente agrupados mediante paréntesis y conectados mediante operadores (aritméticos como +, - y lógicos como, ), que representan un cálculo matemático.

24 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A Evaluación de expresiones Es el proceso que permite determinar el valor de la expresión, es decir, el resultado del cálculo. Según el tipo del resultado, las expresiones se clasifican en: Expresiones numéricas Expresiones lógicas

25 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A Precedencia de Operadores Orden en el que se deben llevar a cabo las operaciones para evitar ambigüedad 3+4*5 3 +(4*5)(3+4)*5 Se debe evaluar primero el operador con mayor precedencia.

26 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A Precedencia de Operadores PRECEDENCIAOPERADORES 1Paréntesis 2- (signo menos) 3*, /,mod ( %) 4(+,-)suma y resta 5>, =, 6~ (Negación) 7(Conjunción) 8(Disyunción)

27 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A Evaluación expresiones numéricas (a + 5 ) * ( y+ abs (x) ) MEMORIA a x 5 y 8 (5 + 5 ) * ( 8 + abs (-1) ) (5 + 5 ) * ( 8 + 1 ) 10 * 9 90

28 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A Expresiones lógicas PQ~P~QP QP V Q VVFFVV VFFVFV FVVFFV FFVVFF

29 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A Evaluación expresiones lógicas ( a + 5 < 4 ) ( b = 3 ) MEMORIA 4 a b 3 F ( 4 + 5 < 4 ) ( 3 = 3 ) ( 9 < 4 ) ( 3 = 3 ) F V

30 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A Ejemplo -3 * a + b * c (-3) * 5 + 3 * 9 -15 + 27 12 MEMORIA 5 a b c 39

31 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A INSTRUCCIONES SOBRE VARIABLES Operaciones para modificar variables Asignación Lectura (entrada). Operación para mostrar el valor de las variables Escritura (salida).

32 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A INSTRUCCIONES ASIGNACIÓN Estructura = Nombre Operador de Asignación Constante Variable o Expresión

33 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A ASIGNACIÓN Representación en diagrama de flujo variable = expresión

34 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A EJEMPLOS DE ASIGNACIÓN Asignar un valor a las variables a y b

35 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A EJEMPLOS DE ASIGNACIÓN a: entero b: entero a = 5 b = a MEMORIA a b 55

36 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A INSTRUCCIONES DE ENTRADA LECTURA leer (variable)

37 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A INSTRUCCIONES DE ENTRADA variable(s) Representación en diagrama de flujo

38 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A ProgramaTecladoMemoria XXX a 125 a INSTRUCCIONES DE ENTRADA a

39 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A INSTRUCCIONES DE SALIDA ESCRITURA escribir (variable) 150

40 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A INSTRUCCIONES DE SALIDA Representación en diagrama de flujo Variable(s)

41 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A INSTRUCCIONES DE SALIDA Pantalla ProgramaMemoria a 125 a

42 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A ESTRUCTURAS DE CONTROL Constructores que determinan el flujo del programa

43 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A TIPOS DE ESTRUCTURAS Secuencia Selección

44 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A Diagrama de Flujo SECUENCIA Pseudo código a: entero leer (a) a = a*a escribir (a) a = a*a a a

45 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A EJEMPLO Hallar el cuadrado de un número previamente leído

46 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A EJEMPLO a, b: entero leer (a) b = a*a escribir (b) Memoria XX a b 1 2 3 100XX10 100

47 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A SELECCIÓN Si No Tengo un buen trabajo ?????

48 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A SELECCIÓN si entonces sino fin_si

49 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A Diagrama de Flujo SELECCIÓN Pseudo código si x > 0 entonces y = 0 sino y = 1 fin_si x>0 y = 1y = 0 NOSI

50 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A EJEMPLO Hallar el cuadrado o la suma de un número previamente leído, según la condición

51 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A EJEMPLO leer (a) si a >0 entonces b = a+a sino b = a*a fin_si escribir (b) Memoria XXX a b XXX leer (a) si a >0 entonces b = a+a sino b = a*a fin_si escribir (b) 40 leer (a) si a >0 entonces b = a+a sino b = a*a fin_si escribir (b) leer (a) si a >0 entonces b = a+a sino b = a*a fin_si escribir (b) 80 leer (a) si a >0 entonces b = a+a sino b = a*a fin_si escribir (b) leer (a) si a >0 entonces sino fin_si escribir (b) 80 a, b: entero

52 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A EJEMPLO leer (a) si a >0 entonces b = a+a sino b = a*a fin_si escribir (b) Memoria XXX a b XXX leer (a) si a >0 entonces b = a+a sino b = a*a fin_si escribir (b) -10 leer (a) si a >0 entonces b = a+a sino b = a*a fin_si escribir (b) leer (a) si a >0 entonces b = a+a sino b = a*a fin_si escribir (b) 100 leer (a) si a >0 entonces b = a+a sino b = a*a fin_si escribir (b) leer (a) si a >0 entonces sino fin_si escribir (b) 100 a, b: entero

53 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A EJEMPLO Dados tres números enteros, calcular el máximo

54 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A a b c mayor XXX EJEMPLO (a) a, b, c : entero mayor: entero leer (a) leer (b) leer (c) si a>=b & a>=c entonces mayor := a sino si b>=a & b>=c entonces mayor := b sino mayor := c fin_si escribir (maximo) escribir (mayor) a, b, c : entero mayor: entero leer (a) leer (b) leer (c) si a>=b & a>=c entonces mayor := a sino si b>=a & b>=c entonces mayor := b sino mayor := c fin_si escribir (maximo) escribir (mayor) a, b, c : entero mayor: entero leer (a) leer (b) leer (c) si a>=b & a>=c entonces mayor := a sino si b>=a & b>=c entonces mayor := b sino mayor := c fin_si escribir (maximo) escribir (mayor) a, b, c : entero mayor: entero leer (a) leer (b) leer (c) si a>=b & a>=c entonces mayor := a sino si b>=a & b>=c entonces mayor := b sino mayor := c fin_si escribir (maximo) escribir (mayor) a, b, c : entero mayor: entero leer (a) leer (b) leer (c) si a>=b & a>=c entonces mayor := a sino si b>=a & b>=c entonces mayor := b sino mayor := c fin_si escribir (maximo) escribir (mayor) a, b, c : entero mayor: entero leer (a) leer (b) leer (c) si a>=b & a>=c entonces mayor := a sino si b>=a & b>=c entonces mayor := b sino mayor := c fin_si escribir (maximo) escribir (mayor) a, b, c : entero mayor: entero leer (a) leer (b) leer (c) si a>=b & a>=c entonces mayor := a sino si b>=a & b>=c entonces mayor := b sino mayor := c fin_si escribir (maximo) escribir (mayor) a, b, c : entero mayor: entero leer (a) leer (b) leer (c) si a>=b & a>=c entonces mayor := a sino si b>=a & b>=c entonces mayor := b sino mayor := c fin_si escribir (maximo) escribir (mayor) a, b, c : entero mayor: entero leer (a) leer (b) leer (c) si a>=b & a>=c entonces mayor := a sino si b>=a & b>=c entonces mayor := b sino mayor := c fin_si escribir (maximo) escribir (mayor) a, b, c : entero mayor: entero leer (a) leer (b) leer (c) si a>=b & a>=c entonces mayor := a sino si b>=a & b>=c entonces mayor := b sino mayor := c fin_si escribir (maximo) escribir (mayor) a, b, c : entero mayor: entero leer (a) leer (b) leer (c) si a>=b & a>=c entonces mayor := a sino si b>=a & b>=c entonces mayor := b sino mayor := c fin_si escribir (maximo) escribir (mayor) a, b, c : entero mayor: entero leer (a) leer (b) leer (c) si a>=b & a>=c entonces mayor := a sino si b>=a & b>=c entonces mayor := b sino mayor := c fin_si escribir (maximo) escribir (mayor) a, b, c : entero mayor: entero leer (a) leer (b) leer (c) si a>=b & a>=c entonces mayor = a sino si b>=a & b>=c entonces mayor = b sino mayor = c fin_si escribir (maximo) escribir (mayor) Memoria 2510 maximo 10

55 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A a, b, c : entero mayor: entero leer (a) leer (b) leer (c) si a>=b & a>=c entonces mayor = a sino si b>=a & b>=c entonces mayor = b sino mayor = c fin_si escribir (maximo) escribir (mayor) a, b, c : entero mayor: entero leer (a) leer (b) leer (c) si a>=b & a>=c entonces mayor = a sino si b>=a & b>=c entonces mayor = b sino mayor = c fin_si escribir (maximo) escribir (mayor) a, b, c : entero mayor: entero leer (a) leer (b) leer (c) si a>=b & a>=c entonces mayor = a sino si b>=a & b>=c entonces mayor = b sino mayor = c fin_si escribir (maximo) escribir (mayor) a, b, c : entero mayor: entero leer (a) leer (b) leer (c) si a>=b & a>=c entonces mayor = a sino si b>=a & b>=c entonces mayor = b sino mayor = c fin_si escribir (maximo) escribir (mayor) a, b, c : entero mayor: entero leer (a) leer (b) leer (c) si a>=b & a>=c entonces mayor = a sino si b>=a & b>=c entonces mayor = b sino mayor = c fin_si escribir (maximo) escribir (mayor) a, b, c : entero mayor: entero leer (a) leer (b) leer (c) si a>=b & a>=c entonces mayor = a sino si b>=a & b>=c entonces mayor = b sino mayor = c fin_si escribir (maximo) escribir (mayor) a, b, c : entero mayor: entero leer (a) leer (b) leer (c) si a>=b & a>=c entonces mayor = a sino si b>=a & b>=c entonces mayor = b sino mayor = c fin_si escribir (maximo) escribir (mayor) a, b, c : entero mayor: entero leer (a) leer (b) leer (c) si a>=b & a>=c entonces mayor = a sino si b>=a & b>=c entonces mayor = b sino mayor = c fin_si escribir (maximo) escribir (mayor) a, b, c : entero mayor: entero leer (a) leer (b) leer (c) si a>=b & a>=c entonces mayor = a sino si b>=a & b>=c entonces mayor = b sino mayor = c fin_si escribir (maximo) escribir (mayor) a, b, c : entero mayor: entero leer (a) leer (b) leer (c) si a>=b & a>=c entonces mayor = a sino si b>=a & b>=c entonces mayor = b sino mayor = c fin_si escribir (maximo) escribir (mayor) a, b, c : entero mayor: entero leer (a) leer (b) leer (c) si a>=b & a>=c entonces mayor = a sino si b>=a & b>=c entonces mayor = b sino mayor = c fin_si escribir (maximo) escribir (mayor) a, b, c : entero mayor: entero leer (a) leer (b) leer (c) si a>=b & a>=c entonces mayor = a sino si b>=a & b>=c entonces mayor = b sino mayor = c fin_si escribir (maximo) escribir (mayor) a b c mayor XXX EJEMPLO (b) Memoria 924 9 maximo 9

56 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A SELECCIÓN MÚLTIPLE seleccionar hacer caso :. caso : otrocaso: fin_seleccionar

57 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A EJEMPLO Selección de una transacción en un cajero automático

58 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A opcion XXX EJEMPLO (a) opcion: entero leer (opcion) seleccionar opcion de caso1: escribir (Consignación) caso2: escribir (Retiro) caso3: escribir (Pago de Servicios) caso4: escribir (Cambio de Clave) caso5: escribir (Terminar) otrocaso: escribir (Terminar) fin_seleccionar 4 Cambio de Clave

59 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A opcion XXX EJEMPLO (b) opcion: entero leer (opcion) seleccionar opcion de caso1: escribir (Consignación) caso2: escribir (Retiro) caso3: escribir (Pago de Servicios) caso4: escribir (Cambio de Clave) caso5: escribir (Salir) otrocaso: escribir(Salir) fin_seleccionar 5 Salir

60 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A SEUDOCODIGOC++ Def. Variables x : tipotipo x; Def. Constante PI = 3.1415926 Asignación== Oper. Aritméticos Suma++ Resta-- Multiplicación** División// Módulomod% CODIFICACIÓN DE ALGORITMOS EN C++

61 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A Lecturaleer (a)cin >>a; Impresiónescribir(a)cout << a; Cambio de líneacambio_linea\n Cad. Caracterescadena"cadena" Selecciónsi (condición) entonces bloque_instrucciones1 sino bloque_instrucciones2 fin_si if (condición) { bloque_instru cciones1; } else { bloque_instru cciones2 ; } CODIFICACIÓN DE ALGORITMOS EN C++

62 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A Selección Múltiple Seleccionar(variable) de caso constante 1: bloque_instrucciones_1. caso constante n: bloque_instrucciones_n otro caso: bloque instrucciones fin_seleccionar switch(opción) { case constante_1: { bloque_instrucciones_1; break; }. case constante_n: {..bloque_instrucciones_n; break; } default: { bloque_instrucciones; break; } CODIFICACIÓN DE ALGORITMOS EN C++

63 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A Comentarios/*comentario*/ Operadores Lógicos negación~! y lógico&& o lógico|| Oper. Relacionales Menor que<< Mayor que>> Igual a=== Menor o igual que<= Mayor o igual que>= Diferente a<>!= CODIFICACIÓN DE ALGORITMOS EN C++

64 Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A FIN Gracias por la atención prestada


Descargar ppt "Facultad Ingeniería Departamento de Sistemas e Industrial Módulo 2 Constructores Básicos Parte A rogramación de omputadores."

Presentaciones similares


Anuncios Google