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

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

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

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte A

rogramación rogramación dedeomputadoreomputadoress

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte A

Algoritmos: Constructores

Básicos

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte A

CONTENIDO1. 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++

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte A

ESTRUCTURA DE UN ALGORITMO

Los elementos fundamentales:

Datos. Instrucciones. Estructuras de control.

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte A

Concepto de Dato

Pieza de información simple

un número un código un hecho una edad

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte ATipo de Dato

Un conjunto es una colección ‘bien definida’ de elementos (objetos).

Las vocales

Los dígitos

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte ATipo de Dato

Todo conjunto debe tener un nombre. Z y entero R y real ASCII y caracter Booleano Cadena

Libros

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte A

Tipo de Dato

El nombre del conjunto al que pertenece el dato constituye el tipo del mismo.

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores 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.

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores 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 =5pues 0.123456789*105= 12345.6789

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores 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.

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores 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:Espacio

32 ;59 048 *42 149 a97 957

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores 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”

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte A

Booleanos : sólo pueden tomar valor falso o verdadero.

Datos en Programación

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte A

Datos en Programación Distinciones importantes:

REAL2.0

ENTERO2

CARACTER‘X’

CADENA“X”

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte AVariables

Variable : es un símbolo que permite referenciar (señalar o demarcar) un espacio en memoria en el que se puede almacenar un dato.

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte A

Nombre Tipo Estado o Valor

MEMORIA

nombre Pablito Pérezcadenasuma entero 168

Variables

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte AVariables

Declaración de una variable

<variable> : <tipo>

x : real contador : entero

Ejemplos

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte AVariables

El valor de una variable puede cambiar en el tiempo.

tiempo identificador valorantes saldo 500000

despues saldo 100000

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte ALiterales

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

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte AConstantes

Constante: es un símbolo que permite referenciar un espacio en memoria en el que hay un dato almacenado que NO se puede cambiar.

ayer PI 3.1416hoy PI 3.1416

MEMORIA

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte AConstantes

Declaración de una constante

<nombre> = <literal>

PI = 3.1416 TAMANO_MAXIMO = 1000 MENSAJE = “Digite los datos”

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte AExpresiones

Expresió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.

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte A

Evaluación de expresionesEs 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

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores 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.

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte A

Precedencia de OperadoresPRECEDENCIA OPERADORES

1 Paréntesis

2 - (signo menos)

3 *, / ,mod ( %)

4 (+,-)suma y resta

5 >, <, >=, <=, <>

6 ~ (Negación)

7 (Conjunción)

8 (Disyunción)

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte A

Evaluación expresiones numéricas

(a + 5 ) * ( y+ abs (x) ) MEMORIA

a

x

5

y 8

-1

(5 + 5 ) * ( 8 + abs (-1) )

(5 + 5 ) * ( 8 + 1 )

10 * 9

90

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte A

Expresiones lógicas

P Q ~P ~Q P Q P V Q

V V F F V V

V F F V F V

F V V F F V

F F V V F F

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores 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

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte A

Ejemplo

-3 * a + b * c

(-3) * 5 + 3 * 9

-15 + 27

12

MEMORIA

5

a b

c 3 9

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores 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).

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte AINSTRUCCIONES

ASIGNACIÓN Estructura

<variable> = <valor>

Nombre Operador de Asignación

ConstanteVariable oExpresión

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte A

ASIGNACIÓN

Representación en diagrama de flujo

variable = expresión

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte A

EJEMPLOS DE ASIGNACIÓN

Asignar un valor a las variables a y b

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte A

EJEMPLOS DE ASIGNACIÓN

a: entero

b: entero

a = 5

b = a

MEMORIA

a b

5 5

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte A

INSTRUCCIONES DE ENTRADA LECTURA

leer (variable)

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte A

INSTRUCCIONES DE ENTRADA

variable(s)

• Representación en diagrama de flujo

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte A

Programa Teclado Memoria

XXX

a 125

a

INSTRUCCIONES DE ENTRADA

a

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte A

INSTRUCCIONES DE SALIDA ESCRITURA

escribir (variable)

150

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte A

INSTRUCCIONES DE SALIDA Representación en diagrama de flujo

Variable(s)

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte A

INSTRUCCIONES DE SALIDA

Pantalla

Programa

Memoria

a 125125 a

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte A

ESTRUCTURAS DE CONTROL Constructores que determinan el

flujo del programa

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte A

TIPOS DE ESTRUCTURAS

Secuencia Selección

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores 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

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte A

EJEMPLO

Hallar el cuadrado de un número previamente leído

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte A

EJEMPLO

a, b: entero

leer (a)

b = a*a

escribir (b)

Memoria

XX

a b

1

2

3

100XX10100

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte A

SELECCIÓN

SiNo

Tengo un buen trabajo ?????

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte A

SELECCIÓN

si < condición > entonces< bloque instrucciones 1>

sino < bloque instrucciones 2>

fin_si

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte A

Diagrama de Flujo

SELECCIÓN

Pseudo código si x > 0 entonces y = 0sino y = 1fin_si

x>0

y =1y = 0

NO

SI

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte A

EJEMPLO

Hallar el cuadrado o la suma de un número previamente leído,

según la condición

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte A

EJEMPLO

leer (a)si a >0 entonces b = a+a sino b = a*afin_siescribir (b)

Memoria

XXX a b

XXX

leer (a)si a >0 entonces b = a+a sino b = a*afin_siescribir (b)

40

leer (a)si a >0 entonces b = a+a sino b = a*afin_siescribir (b)

leer (a)si a >0 entonces b = a+a sino b = a*afin_siescribir (b)

80

leer (a)si a >0 entonces b = a+a sino b = a*afin_siescribir (b)

leer (a)si a >0 entonces sino fin_siescribir (b)

80

a, b: entero

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte A

EJEMPLO

leer (a)si a >0 entonces b = a+a sino b = a*afin_siescribir (b)

Memoria

XXX a b

XXX

leer (a)si a >0 entonces b = a+a sino b = a*afin_siescribir (b)

-10

leer (a)si a >0 entonces b = a+a sino b = a*afin_siescribir (b)

leer (a)si a >0 entonces b = a+a sino b = a*afin_siescribir (b)

100

leer (a)si a >0 entonces b = a+a sino b = a*afin_siescribir (b)

leer (a)si a >0 entonces sino fin_siescribir (b)

100

a, b: entero

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte A

EJEMPLO

Dados tres números enteros, calcular el máximo

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte A

a b c

mayor

XXX XXX XXX

XXX

EJEMPLO (a)a, b, c : entero mayor: enteroleer (a) leer (b)leer (c)si a>=b & a>=c entonces mayor := asino si b>=a & b>=c entonces mayor := b sino mayor := c fin_sifin_siescribir (“maximo”)escribir (mayor)

a, b, c : entero mayor: enteroleer (a) leer (b)leer (c)si a>=b & a>=c entonces mayor := asino si b>=a & b>=c entonces mayor := b sino mayor := c fin_sifin_siescribir (“maximo”)escribir (mayor)

a, b, c : entero mayor: enteroleer (a) leer (b)leer (c)si a>=b & a>=c entonces mayor := asino si b>=a & b>=c entonces mayor := b sino mayor := c fin_sifin_siescribir (“maximo”)escribir (mayor)

a, b, c : entero mayor: enteroleer (a) leer (b)leer (c)si a>=b & a>=c entonces mayor := asino si b>=a & b>=c entonces mayor := b sino mayor := c fin_sifin_siescribir (“maximo”)escribir (mayor)

a, b, c : entero mayor: enteroleer (a) leer (b)leer (c)si a>=b & a>=c entonces mayor := asino si b>=a & b>=c entonces mayor := b sino mayor := c fin_sifin_siescribir (“maximo”)escribir (mayor)

a, b, c : entero mayor: enteroleer (a) leer (b)leer (c)si a>=b & a>=c entonces mayor := asino si b>=a & b>=c entonces mayor := b sino mayor := c fin_sifin_siescribir (“maximo”)escribir (mayor)

a, b, c : entero mayor: enteroleer (a) leer (b)leer (c)si a>=b & a>=c entonces mayor := asino si b>=a & b>=c entonces mayor := b sino mayor := c fin_sifin_siescribir (“maximo”)escribir (mayor)

a, b, c : entero mayor: enteroleer (a) leer (b)leer (c)si a>=b & a>=c entonces mayor := asino si b>=a & b>=c entonces mayor := b sino mayor := c fin_sifin_siescribir (“maximo”)escribir (mayor)

a, b, c : entero mayor: enteroleer (a) leer (b)leer (c)si a>=b & a>=c entonces mayor := asino si b>=a & b>=c entonces mayor := b sino mayor := c fin_sifin_siescribir (“maximo”)escribir (mayor)

a, b, c : entero mayor: enteroleer (a) leer (b)leer (c)si a>=b & a>=c entonces mayor := asino si b>=a & b>=c entonces mayor := b sino mayor := c fin_sifin_siescribir (“maximo”)escribir (mayor)

a, b, c : entero mayor: enteroleer (a) leer (b)leer (c)si a>=b & a>=c entonces mayor := asino si b>=a & b>=c entonces mayor := b sino mayor := c fin_sifin_siescribir (“maximo”)escribir (mayor)

a, b, c : entero mayor: enteroleer (a) leer (b)leer (c)si a>=b & a>=c entonces mayor := asino si b>=a & b>=c entonces mayor := b sino mayor := c fin_sifin_siescribir (“maximo”)escribir (mayor)

a, b, c : entero mayor: enteroleer (a) leer (b)leer (c)si a>=b & a>=c entonces mayor = asino si b>=a & b>=c entonces mayor = b sino mayor = c fin_sifin_siescribir (“maximo”)escribir (mayor)

Memoria

25 10

10

maximo

10

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte A

a, b, c : entero mayor: enteroleer (a) leer (b)leer (c)si a>=b & a>=c entonces mayor = asino si b>=a & b>=c entonces mayor = b sino mayor = c fin_sifin_siescribir (“maximo”)escribir (mayor)

a, b, c : entero mayor: enteroleer (a) leer (b)leer (c)si a>=b & a>=c entonces mayor = asino si b>=a & b>=c entonces mayor = b sino mayor = c fin_sifin_siescribir (“maximo”)escribir (mayor)

a, b, c : entero mayor: enteroleer (a) leer (b)leer (c)si a>=b & a>=c entonces mayor = asino si b>=a & b>=c entonces mayor = b sino mayor = c fin_sifin_siescribir (“maximo”)escribir (mayor)

a, b, c : entero mayor: enteroleer (a) leer (b)leer (c)si a>=b & a>=c entonces mayor = asino si b>=a & b>=c entonces mayor = b sino mayor = c fin_sifin_siescribir (“maximo”)escribir (mayor)

a, b, c : entero mayor: enteroleer (a) leer (b)leer (c)si a>=b & a>=c entonces mayor = asino si b>=a & b>=c entonces mayor = b sino mayor = c fin_sifin_siescribir (“maximo”)escribir (mayor)

a, b, c : entero mayor: enteroleer (a) leer (b)leer (c)si a>=b & a>=c entonces mayor = asino si b>=a & b>=c entonces mayor = b sino mayor = c fin_sifin_siescribir (“maximo”)escribir (mayor)

a, b, c : entero mayor: enteroleer (a) leer (b)leer (c)si a>=b & a>=c entonces mayor = asino si b>=a & b>=c entonces mayor = b sino mayor = c fin_sifin_siescribir (“maximo”)escribir (mayor)

a, b, c : entero mayor: enteroleer (a) leer (b)leer (c)si a>=b & a>=c entonces mayor = asino si b>=a & b>=c entonces mayor = b sino mayor = c fin_sifin_siescribir (“maximo”)escribir (mayor)

a, b, c : entero mayor: enteroleer (a) leer (b)leer (c)si a>=b & a>=c entonces mayor = asino si b>=a & b>=c entonces mayor = b sino mayor = c fin_sifin_siescribir (“maximo”)escribir (mayor)

a, b, c : entero mayor: enteroleer (a) leer (b)leer (c)si a>=b & a>=c entonces mayor = asino si b>=a & b>=c entonces mayor = b sino mayor = c fin_sifin_siescribir (“maximo”)escribir (mayor)

a, b, c : entero mayor: enteroleer (a) leer (b)leer (c)si a>=b & a>=c entonces mayor = asino si b>=a & b>=c entonces mayor = b sino mayor = c fin_sifin_siescribir (“maximo”)escribir (mayor)

a, b, c : entero mayor: enteroleer (a) leer (b)leer (c)si a>=b & a>=c entonces mayor = asino si b>=a & b>=c entonces mayor = b sino mayor = c fin_sifin_siescribir (“maximo”)escribir (mayor)

a b c

mayor

XXX XXX XXX

XXX

EJEMPLO (b)

Memoria

92 4

9

maximo9

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte A

SELECCIÓN MÚLTIPLEseleccionar <opcion> hacer caso <constante 1>:

<bloque_intrucciones 1> . . . caso <constante n>:

<bloque_intrucciones n> otrocaso:

<bloque_intrucciones>fin_seleccionar

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte A

EJEMPLO

Selección de una transacciónen un cajero automático

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte A

opcion

XXX

EJEMPLO (a)

opcion: enteroleer (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

4Cambio de Cambio de ClaveClave

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte A

opcion

XXX

EJEMPLO (b)

opcion: enteroleer (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

5SalirSalir

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte A

SEUDOCODIGO C++

Def. Variables x : tipo tipo x;

Def. Constante PI = 3.1415926 PI = 3.1415926

Asignación = =

Oper. Aritméticos

Suma + +

Resta - -

Multiplicación * *

División / /

Módulo mod %

CODIFICACIÓN DE ALGORITMOS EN C++

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte A

Lectura leer (a) cin >>a;

Impresión escribir(a) cout << a;

Cambio de línea cambio_linea “\n”

Cad. Caracteres “cadena” "cadena"

Selección si (condición) entonces bloque_instrucciones1sino bloque_instrucciones2fin_si

if (condición) { bloque_instrucciones1;} else { bloque_instrucciones2 ;}

CODIFICACIÓN DE ALGORITMOS EN C++

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores 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 instruccionesfin_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++

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte A

Comentarios /*comentario*/ /*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++

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

Facultad Ingeniería Departamento de Sistemas e Industrial

Módulo 2Constructores Básicos Parte A

FIN

Gracias por la atención prestada