Matrices y Cadenas

18
Company LOGO Matrices y Cadenas Algoritmos y Estructuras de Datos

description

Curso de Algoritmos para quienes se inician en la programación

Transcript of Matrices y Cadenas

Page 1: Matrices y Cadenas

Company

LOGO

Matrices y Cadenas

Algoritmos y Estructuras de Datos

Page 2: Matrices y Cadenas

Agenda

1. Notas administrativas

2. Cadenas

3. Matrices

4. Números aleatorios

Page 3: Matrices y Cadenas

Invitación al Curso

Page 4: Matrices y Cadenas

Confirmar Registro

Page 5: Matrices y Cadenas

Crear Cuenta

Page 6: Matrices y Cadenas

Código ASCII

Carácter: Número, letra o símbolo que se puede ingresar por el teclado.

• Internamente, son representados por un código numérico.

• En PSeInt van entre comillas,

ASCII: American Standard Code for InformationInterchange

• Las mayúsculas y minúsculas tienen códigos diferentes.

• Los espacios en blanco también tienen un código.

Cadena: Secuencia de Caracteres

• En PSeInt van entre comillas.

Page 7: Matrices y Cadenas

Procesamiento de Cadenas

Vectores y Cadenas

Algunos lenguajes no poseen el tipo de dato “Cadena de Caracteres”.

En esos casos, se implementan las cadenas como vectores del tipo de dato Carácter.

Declaración Dimension mi_nombre[20];

Definir mi_nombre como Caracter;

Longitud de una cadena

Número de caracteres presentes en una cadena.

Page 8: Matrices y Cadenas

Funciones y cadenas

Función Longitud() Devuelve el

número de caracteres de la cadena que recibe como parámetro.

Definir el_campeon comoCadena;

el_campeon <-

"Universitario";

EscribirLongitud(el_campeon);

Función Subcadena() Extrae una parte

de una cadena, desde y hacia una posición dada.

EscribirSubcadena(el_campeon, 0, 0);

EscribirSubcadena(el_campeon, 0, 2);

Page 9: Matrices y Cadenas

Caso: Contar vocales

Page 10: Matrices y Cadenas

Matrices

Definiciones Es un vector de dos dimensiones

El valor de cada elemento depende de dos factores.

Es como una hoja excel

Declaración Dimension notas_practicas[40, 4];

Definir notas_practicas como Entero;

Asignación notas_practicas[0, 0] <- 1;

notas_practicas[0, 1] <- 2;

notas_practicas[0, 2] <- 3;

notas_practicas[0, 3] <- 4;

Page 11: Matrices y Cadenas

Uso de matrices

Para recorrerlas, necesitamos hacer uso de

bucles anidados.

Para leer múltiples valores, múltiples veces.

Por ejemplo, leer las 4 prácticas de cada estudiante.

Existe la posibilidad de

usar más de dos dimensiones

Se les llama Vectores Multi-Dimensionales.

Page 12: Matrices y Cadenas

Carga de Matrices

Page 13: Matrices y Cadenas

Caso: Cuadrado Mágico

7 12 1 14

2 13 8 11

16 3 10 5

9 6 15 4

Page 14: Matrices y Cadenas

Resultado esperado

Page 15: Matrices y Cadenas

Números aleatorios

Números cuyos valores forman una

secuencia no-predecible.

Los lenguajes de programación

contienen funciones generadoras de estos números.

Son usados en programación de

juegos, simulaciones, etc.

Azar(X): Entero aleatorio entre 0 y X

-1

Page 16: Matrices y Cadenas

Números aleatorios

Azar(3)

Genera 0, 1 o 2.

Azar(3)

+ 5 Genera 5, 6 o 7

Azar(5)

- 4 Genera -4, -3, -2, -1 y 0

Azar(3)

* 5 Genera 0, 5 o 10

Page 17: Matrices y Cadenas

Números pseudo-aleatorios

Los programas de computadora no pueden generar

números aleatorios.

Estos son generados por un algoritmo

matemático.

Estos algoritmos parten de un valor inicial, denominado

semilla.

Para evitar secuencias repetidas, es necesario cambiar el valor de la semilla en cada ejecución.

Por ejemplo, los milisegundos

transcurridos desde el inicio del año

Page 18: Matrices y Cadenas

Caso: Simular lanzar dados