Departamento de Informática Universidad Técnica Federico Santa María Capítulo 2 “Subprogramas/Funciones - Arreglos” Arreglos-Arrays.

Slides:



Advertisements
Presentaciones similares
Arreglos Unidimensionales y Bidimensionales ESTRUCTURAS DE DATOS I
Advertisements

Estrella 0 - Fundamentos de la Programación
Curso de Java Capitulo 6: Cadenas y Arrays Profesor:
Abstracción de Datos Arrays.
PROGRAMACIÓN ESTRUCTURADA EN PSEUDÓCODIGO
Estructuras de Datos (ARRAYS)
Tipos de Datos Básicos y Estructurados
Las estructuras de arreglos fueron usadas en las primeras computadoras digitales, cuando la programación se hacía todavía en lenguaje máquina, para tablas.
Arrays Universidad Nacional Mayor de San Marcos
MANEJO DE ARRAYS EN C.
INFORMATICA I Arreglos 2 CLASE 18.
Arreglos Ing. Nahiby Castillo.
VECTORES.
Estructuras de datos tipo arreglo
ARREGLOS Estructuras de datos.
Unidad 3 Punteros.
Vectores en java.
Arreglos: Vectores en JAVA
Curso de Computación.  Manipular una colección de datos usando vectores  Declarar y utilizar un vector de tipos de datos primitivos en la implementación.
Semana 5 Subprogramas..
Matrices Es una estructura homogénea, compuesta por varios elementos, todos del mismo tipo y almacenados consecutivamente en memoria A cada elemento se.
Arreglos.
Curso Programación en Java
UNIDAD V Arreglos y Cadenas
ESTRUCTURAS DE DATOS I Conocer, comprender y analizar algunos de los principales tipos de estructuras de datos.
 2003 Prentice Hall, Inc. All rights reserved. 1 Capítulo 4 - Arrays Índice del Capítulo 4.1Introducción 4.2Arrays 4.3Declaración de Arrays 4.4Ejemplos.
Manejo de Vectores y Matirces
Universidad Domingo Savio Facultad de Ciencias y Tecnología de la Información Carrera Ingeniería en Redes y Telecomunicaciones Materia : Programación I.
1 Chapter 12 Arrays Dale/Weems/Headington. 2 Chapter 12 Topics l Declaring and Using a One-Dimensional Array l Passing an Array as a Function Argument.
Capítulo 1 “Elementos de Programación”
ESTRUCTURA DE DATOS EN JAVA
Clase 10: Estructuras de datos y arreglos.
Programación IMC José Andrés Vázquez Flores. Definición Un arreglo es un conjunto finito e indexado de elementos homogéneos, que se referencian por un.
METODOLOGÍA DE LA PROGRAMACIÓN
Resolución de Problemas y Algoritmos Uso de iteración con secuencias
Aplicación de estructuras de datos
75.40 Algoritmos y Programación I
Arrays Arreglos Prof. Gonzalo Pastor Vectores. Definición Un vector es un tipo de variable que puede guardar muchos valores Una variable sólo puede guardar.
Fundamentos de Programación
Vectores y Matrices.
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:
Tema 8: Tipos de Datos Estructurados I
Matrices Departamento de Computación Escuela de Ingeniería de Sistemas
Vectores y Matrices.
CAPITULO V ARREGLOS Y CADENAS.
Introducción a la Programación “Conceptos Básicos” Manuel Crisosto M., Claudio Gutiérrez S., Christian Vidal C.
Clase 6 COMPUTACION 2009 C lase 8 Tipos de Datos PASCAL Estructurados Simples Primitivos No primitivos Integer Real Char Boolean String Archivos Registros.
Matrices Prof. Flor Narciso Departamento de Computación
Aun en problemas muy simples surge la necesidad de agrupar valores elementales de alguna manera. Cuando representamos una caja de ahorro bancaria definimos.
Departamento de Informática Universidad Técnica Federico Santa María Capítulo 2 “Subprogramas/Funciones - Arreglos” Arreglos-Arrays.
Objetivo Mostrar los fundamentos de la programación a través de ejemplos y prácticas utilizadas cotidianamente en el desarrollo de aplicaciones.
ELEMENTOS DE COMPUTACIÓN Profesor: Guillermo Figueroa
Centro de Computación IMB-PC Visual Basic
Estructura de datos I CIS - UABJB.
Capitulo 4 Arreglos o Arrays Unidimensionales Bidimensionales Strings
Arreglos: Vectores Departamento de Computación
Fundamentos de Programación
Arrays multidimensionales en JAVA
Arreglos unidimensionales
Al finalizar el curso el alumno será capaz de: Diseñar algoritmos utilizando estructuras estáticas de datos y programación modular.
Universidad Domingo Savio Facultad de Ciencias y Tecnología de la Información Carrera Ingeniería en Redes y Telecomunicaciones Materia : Programación I.
Arreglos: Vectores Prof. Flor Narciso Departamento de Computación Escuela de Ingeniería de Sistemas Facultad de Ingeniería Universidad de Los Andes.
ARRAYS Y COLECCIONES DE DATOS. ARRAYS Arrays – Matriz – Vector Elemento del lenguaje que nos permite agrupar un conjunto de valores del mismo tipo, y.
ESTRUCTURAS DE DATOS “Conceptualización de estructuras de datos” Por: Eduardo Robayo.
OBJETIVOS DEFINIR LA ESTRUCTURA DE ARREGLOS. DECLARAR ARREGLOS EN C.
FUNDAMENTOS DE PROGRAMACIÓN Unidad II. Un array bidimensional o matriz es un conjunto de datos homogéneos (todos del mismo tipo), cada uno de los cuales.
PROF. RAFAEL MONTENEGRO B. UNELLEZ-APURE Introducci Ó n a los Arreglos (“arrays”) en C++
UNIVERSIDAD TECNOLÓGICA DE PANAMÁ Facultad de Ingeniería de Sistemas Computacionales Programa de Lic. en Informática Educativa Computación.
ArreglosBidimensionales enjava. Sonestructurasdetamañofijoorganizadasporfilasy columnas. Estas estructuras almacenan valores del MISMO TIPO de dato. Cada.
UNIVERSIDAD AUTÓNOMA DEL ESTADO DE MÉXICO FACULTAD DE INGENIERÍA COORDINACIÓN DE MATERIAS PROPEDÉUTICAS INGENIERÍA EN SISTEMAS ENERGÉTICOS SUSTENTABLES.
Transcripción de la presentación:

Departamento de Informática Universidad Técnica Federico Santa María Capítulo 2 “Subprogramas/Funciones - Arreglos” Arreglos-Arrays.

Departamento de Informática Programación de Computadores IWI-131 Arreglos - Arrays Supongamos que tenemos 10 variables: a; b; c; d; e; f; g; h; i; j Si se desea manipular las variables debemos poner sus nombres cada vez que se requiera Un enfoque más general es utilizar las variables con el mismo nombre, pero diferenciándolas con un nuúmero Semejante a como los libros de matemáticas utilizan los vectores y las tuplas a1; a2; a3; a4; a5; a6; a7; a8; a9; a10

Departamento de Informática Programación de Computadores IWI-131 Arreglos - Arrays Ahora sumar las variables, es mucho más fácil:

Departamento de Informática Programación de Computadores IWI-131 Arreglos - Arrays Suponga que se quieren leer 5000 enteros y hacer algún tipo de operación con ellos Con los contenidos que conocemos(¿?) hasta ahora necesitamos utilizar 5000 variables Problemas: –De comprensión en la codificación –De utilización de memoria La solución es utilizar ARREGLOS ó ARRAYS

Departamento de Informática Programación de Computadores IWI-131 Arreglos - Arrays Los arreglos son conjuntos de variables que comparten un mismo nombre, son capaces de almacenar una colección de datos del mismo tipo. Pueden ser referenciadas de manera individual con ayuda de uno o más índices Tenemos según su dimensionalidad: –Unidimensionales (Ej. Vector Matemático) –Bidimensionales (Ej. Matriz) –Tridimensional (Ej. Cubo) –Multidimensionales

Departamento de Informática Programación de Computadores IWI-131 Ejemplos UNIDIMENSIONAL BIDIMENSIONAL TRIDIMENSIONAL

Departamento de Informática Programación de Computadores IWI-131 Ejemplos // Enteros tamaño int[] unidimensional={2,0,0,7}; //Arreglo bidimensional de enteros int[][] bidimensional={ {0,0,0},{1,1,1}};

Departamento de Informática Programación de Computadores IWI-131 Arreglos - Arrays Como las variables, al utilizar un arreglo primero que se debe hacer es declararlo. Al igual que otras variables, la declaración de un arreglo tiene dos componentes primarios: tipoArreglo[] nombre; Un tipo de arreglo incluye el tipo de dato de los elementos que va contener el arreglo. 8

Departamento de Informática Programación de Computadores IWI-131 Arreglos - Arrays Por ejemplo, el tipo de dato para un arreglo que sólo va a contener elementos enteros es un arreglo de enteros. int[] arrayDeEnteros; 9

Departamento de Informática Programación de Computadores IWI-131 Arreglos - Arrays int[] arrayDeEnteros; La parte int de la declaración indica que arrayDeEnteros es un arreglo de enteros. []: indica que su dimensionalidad es uno La declaración NO ha asignado memoria para contener los elementos del arreglo. 10

Departamento de Informática Programación de Computadores IWI-131 Arreglos - Arrays Para asignar memoria se utiliza el operador new. La siguiente sentencia asigna la suficiente memoria para que arrayDeEnteros pueda contener diez enteros. int[] arrayDeEnteros = new int[10]; 11

Departamento de Informática Programación de Computadores IWI-131 Arreglos - Arrays En general, cuando se crea un arreglo, se utiliza el operador new, más el tipo de dato de los elementos del arreglo, más el número de elementos deseados encerrado entre corchetes cuadrados ('[' y ']'). TipoElemento[] nombreArray = new TipoElementos[tamano]; 12

Departamento de Informática Programación de Computadores IWI-131 Arreglos - Arrays Ahora que se ha asignado memoria para un arreglo ya se pueden asignar valores a los elementos y recuperar esos valores. for (int j = 0; j < arrayDeEnteros.length; j++) { arrayDeEnteros[j] = j; StdOut.println("[j] = " + arrayDeEnteros[j]); } 13

Departamento de Informática Programación de Computadores IWI-131 Arreglos - Arrays Como se puede ver en el ejemplo anterior, para referirse a un elemento del arreglo, se añade corchetes cuadrados al nombre del array. Entre los corchetes cuadrados se indica (bien con una variable o con una expresión) el índice del elemento al que se quiere acceder. El índice del array empieza en 0 y termina en la longitud del array menos uno. 14

Departamento de Informática Programación de Computadores IWI-131 Accediendo los elementos Un índice describe la posición de un elemento dentro de un arreglo. Recordar en Java el primer elemento tiene el índice cero!

Departamento de Informática Programación de Computadores IWI-131 Arreglos - Arrays Hay otro elemento interesante en el pequeño ejemplo anterior. –El bucle for itera sobre cada elemento de arrayDeEnteros asignándole valores e imprimiendo esos valores. –Se usa arrayDeEnteros.length para obtener el tamaño real del arreglo, length es una propiedad proporcionada para todos los arreglos de Java. 16

Departamento de Informática Programación de Computadores IWI-131 Ejemplos 1.- Realizar un programa en el que se ingresen 10 enteros, y luego muestre la suma de ellos y su promedio 2.- Encontrar el máximo de una lista de 10 elementos 3.- Desarrolle un programa que calcule el promedio de las notas de un curso

Departamento de Informática Programación de Computadores IWI-131 Arreglos Bidimensionales Un arreglo bidimensional es una lista de arreglos unidimensional Para declarar un arreglo bidimensional de enteros int [][] matriz = new int[3][4];

Departamento de Informática Programación de Computadores IWI-131 Ejemplo int fila=3,col=4; for(fila=0;fila<3;fila++) for(col=0;col<4;col++) matriz[fila][col]=fila*col; //más fácil for(fila=0;fila<matriz.length;fila++) for(col=0;col<matriz[0].length;col++) StdOut.print(matriz[fila][col]);

Departamento de Informática Programación de Computadores IWI-131 Arreglos Bidimensionales Por ejemplo: Cada alumno tiene tres notas, una por cada certamen. Entonces las notas de un alumno pueden contenerse en un arreglo de tamaño tres, Ahora si queremos mantener las notas de un curso de 52 alumnos. Podemos mantener las notas en un arreglo de 52 arreglos de tamaño 3

Departamento de Informática Programación de Computadores IWI-131 Notas del curso int alumnos=52; int notas=3; int curso[][] = new int[alumnos][notas]; int fila,col; for(fila=0;fila<alumnos;fila++) for(col=0;col<notas;col++) curso[fila][col]=StdIn.readInt(); Con lo cual curso[10][2] representa la nota del tercer certamen del alumno identificado como 10 (que realmente será el 11 ingresado dado que el arreglo comienza en 0)

Departamento de Informática Programación de Computadores IWI-131 Ejemplo Desarrolle un programa que reciba como entrada las notas de cada pregunta del certamen 1 de programación, para todos los alumnos, y muestre como salida un resumen con las notas finales de todos los alumnos

Departamento de Informática Programación de Computadores IWI-131 Multidimensionales No existe un limite lógico definido para la cantidad de dimensiones que puede tener un arreglo, físico sí, la memoria reservada. Java permite arreglos con mas de dos dimensiones,La forma general de una declaración de arreglo es: tipo[][]…[] nombre_var; nombre_var= new tipo[tamaño1][tamaño2]…[tamañoN]; int a=3,b=4,c=5,i,j,k; int[][][] arr= new int[a][b][c]; for(i=0; i<a; i++) for(j=0; j<b; j++) for(k=0; k<c; k++) arr[i][j][k]=i+j+k;

Departamento de Informática Universidad Técnica Federico Santa María Fin Preparando la revancha …