Tema2-Desarrollo de Algoritmos · Identificadores • Puntos importantes a recordar: • Tenemos...

Post on 17-Mar-2020

0 views 0 download

Transcript of Tema2-Desarrollo de Algoritmos · Identificadores • Puntos importantes a recordar: • Tenemos...

Tema 2: Desarrollo de Algoritmos

E.E. de Algorítmica

Temas a tratar• Identificadores

• Variables • Constantes

• Tipos de Datos • Separadores • Operadores

• Aritméticos • Unarios • Relacionales y Condicionales • Nivel de Bits • Asignación

• Manejo de Memoria

Identificadores• Los identificadores nombran variables, funciones, clases, y objetos; • cualquier cosa que queramos identificar o usar dentro de la programación

se debe identificar. • Se caracterizan por comenzar con:

• una letra, • guión bajo (_) o • un símbolo de peso ($),

• los siguientes caracteres pueden ser letras o dígitos. • Se distinguen mayúsculas y minúsculas y no hay longitud máxima.

Identificadores

• Ejemplos: • tipo identificador [= valor], [identificador [= valor]]; • int variable; • char nombre, apellido_paterno; • float $cantidad;

Identificadores

• Los identificadores vistos son hasta el momento para datos variables, además de estos, contamos con identificadores constantes.

• Estos identificadores declarar datos desde un inicio que son constantes y que no van a variar.

• En algunos lenguajes de programación para poder reconocer estos identificadores se les antecede la palabra “final”

Identificadores

• Ejemplos: • final float Pi = 3.1415926 • final String Autor = “Manuel Suárez” • final int Tamaño = 100

Identificadores• Puntos importantes a recordar:

• Tenemos identificadores globales y locales • Los globales son aquellos que sirven en todo el algoritmo • Los locales solamente sirven dentro de la clase, método,

función o iteración en la que se declaró • Por lo tanto un identificador local sólo es válido dentro del

bloque de código en el que se declaró y no podemos acceder a su valor desde el exterior.

Identificadores• Como sabemos cuando usar un identificador Global o un Local:

• Sí vamos a usarlo únicamente dentro de un bloque es local. • Sí varias instrucciones interactuan con el identificador, pero

seguimos dentro de un método, sigue siendo local. • Unicamente utilizamos un identificador Global, cuando el

algoritmo nos exige que una variable sea utilizada en toda la lógica.

Ejercicio• Indica de las siguientes instrucciones que parte corresponde al

indicador

String nombre = “Rosa” String T1 = “hola”, T2 = “martes”

int edad = 20 int N1 = 4, N2 = 5, Suma = 0

boolean opc = True String Nombre_Completo = “Luis Moya”

int arreglo[ ] int $telefono = 12345678

Tipos de Datos

• El principio de toda computadora es el manejo de información o datos.

• Un dato es la expresión general que describe los objetos con los cuales opera una computadora.

• Los algoritmos pueden trabajar con varios tipos de datos y los programas operan sobre estos tipos de datos.

• Definición de Tipo de datos: • Conjunto especifico de valores de los datos y un conjunto de

operaciones que actúan sobe esos datos. • Existen dos tipos de datos:

• Básicos; son aquellos que están incorporados a todo lenguaje de programación

• Definidos por el programador o usuario.

• Dentro de los tipo de datos básicos tenemos: • Numéricos • Lógicos • Carácter

Datos Numéricos!• Pueden ser:

• Entero o Integer • Real

• Enteros: son números completos, no tienen fracciones o decimales y pueden ser negativos o positivos.

5 6-15 420 17

1340 26

• Los enteros se pueden representar en 8, 16, 32 o 64 bits

Enteros -32,768 a 32,767

Enteros Cortos -128 a 127

Enteros Largos -2,147,483,648 a 2,147,483,647

• Se pueden considerar sin signo (unsigned) y con signo (signed)

• Reales: son aquellos que tienen un punto decimal y pueden ser positivos o negativos.

0.08 3739.41

3.7452 -52.321

-8.12 3.0

• Tipos de Datos Reales:

Tipo Rango

real (float) -3.4 x 10doble (double) -1.7 x 10

Datos Lógicos!• También denominado “booleano o boolean” es aquel tipo de dato

que solamente puede tomar dos valores: • Verdadero (true) • Falso (false)

• Muy utilizado en condiciones de (si y no)

Datos de Carácter!• conjunto finito y ordenado de caracteres reconocido por las

computadoras • Reconocen caracteres de tipo:

• alfabéticos • numéricos • especiales

• Tipos de Datos de Carácter:

Tipo Rango

char un sólo carácter

String cadena de caracteres

• Se encuentran delimitados por: • comilla simple ‘ ‘ • comilla doble “ “

ResumenTipo Rango

int -32,768 a 32,767

short -128 a 127

long -2,147,483,648 a 2,147,483,647

float -3.4 x 10

double -1.7 x 10

boolean True o False

char un sólo carácter

String cadena de caracteres

• VER PRÁCTICA 1

SeparadoresLos separadores definen la forma y función del código, estos son: • () Paréntesis: Para contener listas de parámetros, llamada a métodos. • {} Llaves: Para contener los valores de matrices y arreglos inicializados

automáticamente, definir un bloque de código, clases, métodos, ámbitos locales y condicionales.

• [] Corchetes: Para declarar tipos arreglos, matriz y para referencia a sus valores.

• ; Punto y coma: Separa sentencias o instrucciones. • , Coma: Separa identificadores consecutivos en la declaración de

variables.

Operadores

• Aritméticos • Unarios • Relacionales y Condicionales • Nivel de Bits • Asignación

Operadores Aritméticos

+ Suma (también utilizado para concatenar cadenas) - Resta * Multiplicación / División % Modulo (obtiene el residuo de una división)

Operadores Unarios

+ Valor Positivo - Valor Negativo ++ Suma 1 al operando - - Resta 1 al operando

Operadores Relacionales y Condicionales> El operando izquierdo es mayor que el derecho >= El operando izquierdo es mayor o igual que el derecho < El operando izquierdo es menor que el derecho <= El operando izquierdo es menor o igual que el derecho == El operando izquierdo es igual que el derecho != El operando izquierdo es distinto que el derecho && Ambas expresiones son verdaderas, también conocido como AND || Alguna de las expresiones es verdadera, también conocido como OR ! La expresión de la derecha es false

Operadores de Asignación

Son operadores compuestos de otros operadores para realizar la operación deseada y luego asignar el valor obtenido al operando situado a la izquierda del operador de asignación, de este modo se pueden hacer dos operaciones con un sólo operador. Ejemplos: +=-=*=/=%=

Reglas de Prioridad

• Toda expresión que tiene dos o más operandos requieren del uso de reglas matemáticas que permitan determinar el orden de las operaciones.

• Estas reglas se denominan “reglas de prioridad o precedencia”.

• Estas reglas consisten en: • Las operaciones que están encerradas entre paréntesis se evalúan primero. • Si existen diferentes paréntesis anidados (interiores unos a otros), las expresiones más

internas se evalúan primero. • En caso de tener operadores con la misma procedencia evaluamos de izquierda a

derecha. • Las operaciones aritméticas dentro de una expresión suelen seguir el siguiente orden de

prioridad: • Operador ( ) • operadores ++ , - -, + y - • operador ^ • operadores *, /, % • operadores + , -

¿Cuál es el resultado de las siguientes expresiones?

Solución 3 + 6 * 14

!

3 + 84 !

87

a) 3 + 6 * 14

⎬⎬

Solución 8 + 7 * 3 + 4 * 6

!

8 + 21 + 24 !

29 + 24 !

53

b) 8 + 7 * 3 + 4 * 6

⎬ ⎬

⎬⎬

Solución -4 * 7 + 2^3 / 4 - 5

!

-4 * 7 + 8 / 4 - 5 !

-28 + 8 / 4 - 5 !

-28 + 2 - 5 !

-31

c) -4 * 7 + 2^3 / 4 - 5

⎬⎬⎬

EjerciciosA. a * ( b + 3) B. 12 + 3 * 7 + 5 * 4 C. 8 + 7 * 3 + 4 * 6 D. -23 ^ 3 E. (33 + 3 * 4) / 5 F. 2 ^ 2 * 3 G. 3 + 2 * (18 - 4 ^2) H. 16 * 6 - 3 * 2

I. 7 + 5 - 6 J. 9 + 7 * 8 - 36 / 5 K. 7 * 5 ^ 3 / 4 % 3

• VER PRÁCTICA 2

Manejo de Memoria

• En la mayoría de las computadoras existen dos tipos de memoria: • RAM (Memoria de Acceso Aleatorio): Almacenamiento temporal

de programas y datos. • ROM (Memoria de Sólo Lectura): Almacenamiento de datos y

programas de modo permanente.

• La memoria central, mejor conocida como RAM o simplemente memoria, es la que usamos cuando creamos nuestros algoritmos, ya que es de uso temporal y una vez terminado el algoritmo este se elimina de la memoria.

• La RAM almacena las instrucciones y los datos • Para que un programa se pueda ejecutar se debe almacenar en la

RAM

• La memoria principal es la encargada de almacenar los programas y datos que se están ejecutando

• Su principal característica es la velocidad de respuesta, ya que es muy rápida.

• Es una memoria de tipo volátil, ya que su contenido se pierde cuando se apaga la computadora

• La RAM puede ser: • Estática (SDRAM) • Dinámica (DRAM) !

• La más común es la SDRAM en sus dos tipos DDR y DDR2 (Double Data Rate)

• En cuanto a la memoria ROM, almacena toda información de modo permanente ya que solamente podemos acceder a ella para lectura.

• Los datos de esta no se pierden cuando se apaga la computadora. • Los programas son almacenados en los chips ROM y no se pueden

modificar • Contiene lo que comúnmente llamamos BIOS para el arranque de la

computadora.

• Normalmente una computadora tiene más RAM que ROM. • La RAM es una memoria muy rápida y limitada en tamaño • La RAM es la memoria a la que accede normalmente un

programador.

Unidades de medida de almacenamientoByte Byte (B) equivale a 8 bits

Kilobyte Kbyte (KB) equivale a 1,024 bytes (10 Megabyte Mbyte (MB)! equivale a 1,024 Mbytes (10 Gigabyte Gbyte (GB) equivale a 1,024 Gbytes (10 Terabyte Tbyte (TB) equivale a 1,024 Tbytes (10 Petabyte Pbyte (PB) equivale a 1,024 Pbytes (10 Exabyte Ebyte (EB) equivale a 1,024 Ebytes (10 Zettabyte Zbyte (ZB) equivale a 1,024 Zbytes (10 Yotta Ybyte (YB) equivale a 1,024 Ybytes (10