INFORMATICA DEL CBU Clase 11 Año 2016 ARREGLOS.

Slides:



Advertisements
Presentaciones similares
Matrices Es una estructura homogénea, compuesta por varios elementos, todos del mismo tipo y almacenados consecutivamente en memoria A cada elemento se.
Advertisements

ARREGLOS BIDIMENSIONALES
COMPUTACION 2009 Clase 6 Clase 7.
Resolución de Problemas y Algoritmos Uso de iteración con secuencias
Programación en Pascal
Sesión 17 Tipos de datos Estruturados Arreglos de Registros Prof:Eridan Otto Programación de Computadores Lenguaje Pascal.
75.40 Algoritmos y Programación I
Definir un vector Forma general Variable=[tipo]*tamaño Tipo: es el valor inicial con el cual quedarán llenas todas las posiciones creadas del vector. Tamaño:
Vectores y Matrices.
Clase 6 COMPUTACION 2009 C lase 8 Tipos de Datos PASCAL Estructurados Simples Primitivos No primitivos Integer Real Char Boolean String Archivos Registros.
Computación I. CI-2125 Tema VII
Arreglos. en Lenguaje C n
Rogramación de omputadores Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial UN - Virtual 2008 Módulo 4 Arreglos, cadenas y matrices.
MATLAB 7 EJERCICIOS. E01. Escribir un programa que permita determinar si un número entero dado es par o impar. (Utilizar el operador mod) E02. Utilizando.
Funciones, Arreglos y Vectores
ROBERTO PINEDA FLORES. ALEXIS JULIAN VELAZQUEZ NAVA.
INFORMATICA DEL CBU Clase 8 Año 2016 PROCEDIMIENTOS.
Stored Procedures Firebird.
Conceptos básicos de programación
Estructuras de Control en Visual Basic.net
Arreglos. en Lenguaje C n
MATRICES.
Memorias Una memoria es un espacio en el cual se puede almacenar información y es análogo a un arreglo o array en programación convencional. En VHDL una.
Tema 3. Fundamentos para la construcción de código a partir del algoritmo Objetivo: El alumno construirá programas utilizando el lenguaje de programación.
TUTORIAL PSeint.
Array Bidemensionales. ¿Qué es una matriz o tabla?  Una matriz es un vector de vectores o también llamado array bidimensional.  Dimensión de un Arreglo:
Programación I MC Beatriz Beltrán Martínez
Paso por Referencia v/s Paso por Valor
Tema 7 Arreglos Parte 1.
LENGUAJE DE PROGRAMACION III Estructuras Estáticas de Datos
CICLOS.
Unidad 2. Algoritmos Unidad 4. Control de flujo
Unidad 3. Introducción a la programación
Actividades de repetición
Curso de iniciación al trabajo con MatLab 7.0
ARRAYS Y COLECCIONES DE DATOS
ARREGLOS BIDIMENSIONALES MATRICES Son un espacio de almacenamiento continuo, que contiene una serie de elementos del mismo tipo de datos. Desde el punto.
ESTRUCTURAS DE CONTROL EN VISUAL BASIC.NET Prof.: Rafael Mourglia.
ELEMENTOS DE COMPUTACIÓN Profesor: Guillermo Figueroa
Diego Hernández R Pascal Variables Diego Hernández R
INFORMATICA DEL CBU Clase 10 Año 2016 ARREGLOS.
Estructuras de Repetición Pseudocodigo1 Estructuras de Repetición Algoritmos Mientras Hacer-Mientras Para.
Tipos de Datos abstractos
Metodología de la Programación
Estructuras de Control Ciclos
INFORMATICA DEL CBU Clase 9 Año 2016 FUNCIONES ARREGLOS.
Procesamiento de señales Introducción a Matlab 2014
Tipos de Datos abstractos
Paso por Referencia v/s Paso por Valor
Fundamentos de Informática Especialidad de Electrónica –
Metodología de la Programación
Arreglos en Java.
ESTADISTICA DESCRIPTIVA
Informática Ingeniería en Electrónica y Automática Industrial
MATRICES. ¿QUÉ ES UNA MATRIZ? Una matriz es un espacio bidimensional que se genera en la memoria del computador. Las matrices deben tener un nombre que.
TUTORIAL PS EINT FUNDAMENTOS DE PROGRAMACIÓN Ing. Elizabeth Díaz Orea.
TUTORIAL PS EINT FUNDAMENTOS DE PROGRAMACIÓN Ing. Elizabeth Díaz Orea.
COLAS O LINEA DE ESPERA EN C# SHARP. ¿QUE ES UNA COLA O LINEA DE ESPERA?  Es una estructura de datos que almacena elemento en una lista y permite acceder.
Diego Hernández R Pascal Variables Diego Hernández R
METODOS DE ORDENAMIENTO
Estructuras de Repetición Algoritmos
String, arreglos y arreglos bidimensionales
TEMARIO DEFINICIÓN ………………………………………………………..………..
String, arreglos y arreglos bidimensionales
Metodología de la Programación
EUPs que imprima la tabla de multiplicar de 2 al 10
Arreglos Bidimensionales
ALGORITMO DE ORDENAMIENTO POR BURBUJA. El método de la burbuja es uno de los mas simples, es tan fácil como comparar todos los elementos de una lista.
UNIDAD VI ARREGLO UNIDIMENSIONAL
UNIDAD VI (continuación) ARREGLO BIDIMENSIONAL
Transcripción de la presentación:

INFORMATICA DEL CBU Clase 11 Año 2016 ARREGLOS

Preguntas Qué es un arreglo? Con qué propósito se lo utiliza? Qué diferencia existe entre: el nombre del arreglo, el subíndice, el valor del subíndice, los elementos del arreglo? Mg. Ing. Fátima Martínez

ARREGLOS Datos estructurados. Un único identificador representa a múltiples datos individuales. Pueden ser manipulados colectiva o individualmente. 7.50 4.75 6.55 5.25 6 … (1) (2) (3) (4) (…) (n) Calificaciones Mg. Ing. Fátima Martínez

Declaración formal de un arreglo En una declaración de variable: Var nombreArreglo: array[tipo de indice] Of tipo Ejemplo: Arreglo de 100 elementos de tipo real Var lista : array[1..100] Of real; Mg. Ing. Fátima Martínez

Matriz de M x N La forma clásica de una matriz de m x n la representamos como: n [columnas] m [filas] Mg. Ing. Fátima Martínez

Declaración formal var Mat : array[DIM1,DIM2]of <Tipo>; var Mat: array[1..4,1..5] of integer; DIM1 y DIM2 se especifican como un subrango de tipo ordinal que tiene un límite inferior y un límite superior. Conviene crear un “alias” para los arreglos, mediante una declarativa type. Mg. Ing. Fátima Martínez

Declarativa type Crear un “alias” mediante una declarativa type. El bloque type permite construir nuevos tipos de datos basados en los que ya se encuentran predefinidos en el lenguaje. type Vect = array[1..100] Of real; var lista: Vect; type TMat = array[1..DIM1,1..DIM2] Of integer; var Mat : TMat; Mg. Ing. Fátima Martínez

OPERACIONES CON VECTORES Asignación: igual a cualquier variable, pero poniendo el número de índice del elemento entre [ ]. Var Notas: Vect; For i := 1 To 100 begin Notas[i] := 1 + random(10); suma = suma + Notas[i]; End; Promedio := suma/100; … Mg. Ing. Fátima del C. Martínez 11/14/2018

Leer o escribir una Matriz Para asignar por completo una Matriz: for i:=1 to DIM1 do for j:=1 to DIM2 do M[i, j]:=20+random(81);  for i:=1 to DIM1 do begin for j:=1 to DIM2 do write(M[i, j]:4); writeln; end; Mg. Ing. Fátima Martínez

Las cadenas. Caso particular de arreglos Tipo string: tipo especial de dato, arreglo de char. En la posicion 0 (cero), se almacena (en forma de equivalente char) la cantidad de caracteres que han ingresado a la cadena. var Texto : string; Frase : string[80]; Frase:=’Programación en Turbo Pascal’; contiene 28 caracteres, se almacena como: P r o g r a m a c i ó n e n T u r b o P a s c a l 0 1 28 255 espacios para almacenar caracteres Devuelve 28 Longitud:=length(Frase) Mg. Ing. Fátima Martínez

Ejemplo 1 En una frase, detectar la cantidad de vocales a, e, i, etc., presentes en la misma. Mg. Ing. Fátima Martínez

type TVoc = array[1..5]of integer; var Voc : TVoc; Frase : string; i : integer; begin clrscr; Frase:=’Esta es una frase breve de prueba’; for i:=1 to 5 do Voc[i]:=0; for i:=1 to lenght(Frase) do case Frase[i] of ‘a’,’A’ : Voc[1]:=Voc[1]+1; ‘e’,’E’ : Voc[2]:=Voc[2]+1; ‘i’,’I’ : Voc[3]:=Voc[3]+1; ‘o’,’O’ : Voc[4]:=Voc[4]+1; ‘u’,’U’ : Voc[5]:=Voc[5]+1; end; Mg. Ing. Fátima Martínez

Ordenar los elementos de un vector. Método de la burbuja Consiste en acomodar el vector moviendo el mayor hasta la última casilla comenzando desde la casilla 1 del vector. Deja el número más grande en la última posición. Prosigue a encontrar  y acomodar el siguiente más grande comparando de nuevo los números desde el inicio del vector. Así sigue hasta ordenar todo los elementos el arreglo. Es muy deficiente porque en cada pasada vuelve a comparar las ya ordenadas. Es el más usado en todos los lenguajes de programación. Mg. Ing. Fátima Martínez

Algoritmo Dado un vector a1, a2, a3, ... an Comparar a1 con a2 e intercambiarlos si a1>a2 (o a1<a2). Seguir hasta que todo se haya comparado an-1 con an. Repetir el proceso anterior n-1 veces Mg. Ing. Fátima Martínez

Mg. Ing. Fátima Martínez

Ingresa datos al vector Dimension datos[5] i <- 1 Mientras i<=5 Hacer Escribir 'Ingrese el dato ',i,':' Leer datos[i] i <- i+1 FinMientras Mg. Ing. Fátima Martínez

Si datos[i]>datos[j] Entonces aux <- datos[i] Mientras i<=4 Hacer j <- i+1 Mientras j<=5 Hacer Si datos[i]>datos[j] Entonces aux <- datos[i] datos[i] <- datos[j] datos[j] <- aux FinSi j <- j+1 FinMientras i <- i+1 Mg. Ing. Fátima Martínez

Generar un vector de orden N Que cumpla con las siguientes condiciones: El último elemento valdrá N: vec[n] = N; El penúltimo elemento N-1 valdrá : vec[n-1] = vec[N] +1 El antepenúltimo elemento N-2 valdrá : vec[n-2] = vec[N-1] +2 Continuar la serie hasta completar el vector Mg. Ing. Fátima Martínez

Serie Algoritmo serie Dimension vector(10) a<-1 vector(10) <-10 Escribir vector(10) Para n<-9 Hasta 1 Con Paso -1 Hacer vector(n) <- vector(n+1) + a Escribir vector(n) a<- a + 1 Fin Para FinAlgoritmo Serie Mg. Ing. Fátima Martínez

Vector Sin repetidos Dado un vector de N elementos, se desea saber si tiene elementos repetidos. Si no tiene elementos repetidos presentar un mensaje: No tiene repetidos. Caso contrario generar un segundo vector con los elementos del primero pero que no tenga repetidos. Presentar el primero vector y el segundo sin repetidos. SIN REPETIDOS V[N] = (1, 5, 4, 5, 1, 8) A[N] = (1, 5, 4, 8) Mg. Ing. Fátima Martínez

Matriz de orden M x N Generar una matriz de m x n. Ejemplo: Si la matriz es de 5 x 5 Mg. Ing. Fátima Martínez

Mg. Ing. Fátima Martínez

Algoritmo MatrizCuadrada Dimension mat[5,5] i <- 1 k <- 1 Mientras (i<=5) Hacer Si (i MOD 2=1) Entonces j <- 1 Mientras (j<=5) Hacer mat[i,j]<-k Escribir mat[i,j] j <- j+1 k <- k+1 FinMientras Mg. Ing. Fátima Martínez

Mientras (j>=1) Hacer mat[i,j]<-k Escribir mat[i,j] j <- j-1 Sino j <- 5 Mientras (j>=1) Hacer mat[i,j]<-k Escribir mat[i,j] j <- j-1 k <- k+1 FinMientras FinSi i <- i+1 FinAlgoritmo Mg. Ing. Fátima Martínez

Elemento mayor de la Diagonal Se cargará una matriz A de N x N elementos. Determinar el MAXIMO elemento de la diagonal principal. Luego encontrar el mayor elemento de la fila y también de la columna que intersecta en la posición donde se encontró el MAXIMO. Mg. Ing. Fátima Martínez

Mg. Ing. Fátima Martínez

Mg. Ing. Fátima Martínez

Mg. Ing. Fátima Martínez

Carga la Matriz de 5 x 5 Algoritmo MaximoDiagonal Dimension mat[5,5] Mientras i<=5 Hacer j <- 1 Mientras j<=5 Hacer mat[i,j]<-Aleatorio(1,9) j <- j+1 FinMientras i <- i+1 Mg. Ing. Fátima Martínez

Máximo en la Diagonal max <- mat[1,1] i <- 2 col <- 1 Mientras i<=5 Hacer Si mat[i,i]>max Entonces max <- mat[i,i] col <- i FinSi i <- i+1 FinMientras Escribir ‘Maximo en diagonal’: [',col,', ',col,'] = ',max Mg. Ing. Fátima Martínez

Máximo en la FILA // empiezo por la fila = col max <- mat[col,1] k <- 1 j <- 2 Mientras j<=5 Hacer Si mat[col,j]>max Entonces max <- mat[col,j] k <- j FinSi j <- j+1 FinMientras Escribir 'MAXIMO en FILA: [',col,', ',k,'] = ',max Mg. Ing. Fátima Martínez

Máximo en la COLUMNA // sigo con la columna = col max <- mat[1,col] k <- 1 i <- 2 Mientras i<=5 Hacer Si mat[i,col]>max Entonces max <- mat[i,col] k <- i FinSi i <- i+1 FinMientras Escribir 'MAXIMO en COLUMNA: [',k,', ',col,'] = ',max Mg. Ing. Fátima Martínez

Campeonato de Futbol En un campeonato intervienen M equipos. Se registran los resultados en una matriz R de orden M x M. Mg. Ing. Fátima Martínez

Juego del Ahorcadito Un jugador ingresa una palabra y el otro jugador trata de adivinar la palabra ingresando letras individuales. El jugador GANA si acierta todas las letras en una cantidad de jugadas a determinar. Si no lo logra, pierde y queda AHORCADO. Mg. Ing. Fátima Martínez

Palabra de 10 letras Mg. Ing. Fátima Martínez

Mg. Ing. Fátima Martínez

Mg. Ing. Fátima Martínez