Taller de Programación I. Tema 04: Arreglos y Matrices en Java



Documentos relacionados
Modulo 1 El lenguaje Java

ISTP CIDET COMPUTACION E INFORMATICA ARREGLOS EN JAVA

APUNTES JAVA ARRAYS (ARREGLOS) Un arreglo es un grupo de posiciones de memoria contiguas. Todas las cuales tienen el mismo nombre y el mismo tipo.

11. Algunas clases estándar de Java (II)

Resumen Lenguaje Java

FACULTAD DE INGENIERÍA

Introducción al tipo de dato ARRAY

Introducción al lenguaje JAVA

RESUMEN DE CONCEPTOS BASICOS DE PROGRAMACION JAVA

INSTITUTO POLITÉCNICO NACIONAL ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ELÉCTRICA UNIDAD CULHUACÁN INTEGRANTES

Tipos primitivos y clases de interés

Programación Avanzada para Sistemas de Telecomunicación Arrays

TEMA 3. CLASES. EJERCICIOS

Ahora podemos comparar fácilmente las cantidades de cada tamaño que se vende. Estos valores de la matriz se denominan elementos.

Arrays y Cadenas en C

Vectores y matrices. Arrays Declaración Creación Acceso a los elementos de un array Manipulación de vectores y matrices

9. Objetos y clases Clases

1. Manejo de memoria estática 2. Manejo de memoria dinámica

1 ELEMENTOS BASICOS DEL LENGUAJE

Objetivo de aprendizaje del tema

Identificadores, palabras reservadas, tipos de datos, operadores aritméticos y el sistema estándar de salida en Java

Computación III. Objetivo de aprendizaje del tema

Compiladores e Intérpretes Proyecto N 1 Sintaxis de MiniJava Segundo Cuatrimestre de 2015

Programación Orientada a Objetos con Java

AGRUPA P R OBJET E OS 1

Aplicaciones lineales

Fundamentos de la Programación

Capítulo. Cálculos con matrices

Introducción a la Programación Orientada a Objetos

Informática Aplicada a la Gestión de Empresas (IAGE) Parte III Excel e Internet Tema 2

Contenidos. Funciones (suplemento) Funciones. Justificación del uso de Funciones

ARREGLOS DEFINICION GENERAL DE ARREGLO

La clase estándar Scanner

INSTITUTO TECNOLÓGICO DE NUEVO LAREDO ING. EN SISTEMAS COMPUTACIONALES

ALGORITMOS Y ESTRUCTURAS DE DATOS

La hoja de cálculo EXCEL. Conceptos básicos

Elabore el diagrama de clases en UML y la codificación de un programa para resolver los siguientes problemas:

EDWIN KÄMMERER ORCASITA INGENIERO ELECTRÓNICO

Un puntero no es más que una variable estática cuyo contenido es una dirección de memoria.

Pontificia Universidad Católica de Chile Escuela de Ingeniería Departamento de Ciencia de la Computación

Microsoft Excel Unidad 6. La Hoja de Cálculo

ÁLGEBRA DE MATRICES. Al consejero A no le gusta ninguno de sus colegas como presidente.

Curso Excel Básico. Clase 1. Relator: Miguel Rivera Adonis

GUIÓN EXCEL Objetivo Manejo del entorno para el desarrollo de pequeñas aplicaciones.

Espacios vectoriales y aplicaciones lineales.

UNIDAD EJECUTORA DE CONSERVACION VIAL MANUAL DEL USUARIO DEL SISTEMA INTEGRAL DE CONTROL DE PROYECTOS

CTIT Aplicación Web - Instructivo para la importación de datos desde hojas de cálculo Versión 1

Tema 3: Herencia en C++ Programación Orientada a Objetos Curso 2008/2009 Begoña Moros Valle

1. Ejemplo de clase : La clase Cuenta 2. Uso de la clase Cuenta. 3. Métodos y objetos receptores de mensajes (Importante)

PRUEBAS DE ACCESO A LA UNIVERSIDAD PARA EL ALUMNADO DE BACHILLERATO 158 MATEMÁTICAS II. SEPTIEMBRE 2015

Centro de Capacitación en Informática

INTRODUCCIÓN AL TIPO COMPUESTO CADENA CONTENIDOS

Programación Orientada a Objetos en JAVA

Tema 2. El lenguaje de programación Java (Parte 1)

Centro de Capacitación en Informática

CREAR TABLAS EN WORD

Las propiedades de la clase en java es el equivalente a las variables globales en lenguajes estructurados como el C.

Conceptos. ELO329: Diseño y Programación Orientados a Objetos. ELO 329: Diseño y Programación Orientados a Objetos

2. ABRIR UN NUEVO DOCUMENTO DE TRABAJO

MATERIAL 2 EXCEL 2007

Arreglos. // Incluir E/S y Librerías Standard #include <stdlib.h> #include <stdio.h>

ALGORITMICA Y PROGRAMACION POR OBJETOS I

Selectividad Septiembre 2013 OPCIÓN B

3.- DETERMINANTES. a 11 a 22 a 12 a 21

ESTRUCTURA DE DATOS: ARREGLOS

Uso del programa CALC

Práctica de Aplicaciones Lineales

1 Espacios y subespacios vectoriales.

Programación: QBASIC

Menús. Gestor de Menús

Práctica 2: Simón dice

OBTENER DATOS EXTERNOS

Apuntes de Matemática Discreta 1. Conjuntos y Subconjuntos

Sistema electrónico de presentación del informe conforme al artículo 15 del Convenio

Variables y tipos de datos

Funciones mas importantes para el manejo de Caracteres

El Problema del Transporte

Planilla de cálculo. Módulo II - OpenOffice.org Calc

A Dios por la vida misma, por haberme dado la capacidad de pensar y porque me ha permitido llegar sano a este momento.

TEOREMA DE DETERMINACIÓN DE APLICACIONES LINEALES

Principios de Bases de Datos Relacionales, Normalización. Unidad 4

Instructivo de Microsoft Excel 2003

Capítulo 4 Procesos con estructuras de repetición

8. Sentencia return y métodos

Claves para las fórmulas: Incrementos Decrementos Porcentajes Múltiplos - Partes - Diferencia

Elabore el análisis, el diseño mediante pseudocódigo y un diagrama de flujo de un algoritmo para resolver cada uno de las siguientes problemas:

MANUAL DE USUARIO NOTAS PARCIALES VIA INTRANET

Modelos y Bases de Datos

Módulo II - PowerPoint

Capitán de fragata ingeniero AGUSTÍN E. GONZÁLEZ MORALES. ÁLGEBRA PARA INGENIEROS (Solucionario)

Tema 2. El lenguaje de programación Java. Arrays y cadenas

LABORATORIO Nº 2 GUÍA PARA REALIZAR FORMULAS EN EXCEL

FACULTAD DE INGENIERÍA

Herramientas computacionales para la matemática MATLAB: Otros tipos de datos

Para leer la entrada de consola, lo primero que se hace es construir un Scanner que este asociado al flujo de entrada estándar System.

Transcripción:

INACAP Universidad Tecnológica de Chile Sede Santiago Centro Taller de Programación I Curso Java J2SE Tema 04: Arreglos y Matrices en Java Ing. Manuel López Ramos (versión 2)

Parte I Arreglos en Java

Arreglos en Java Un arreglo es una estructura de datos lineal, que puede almacenar 1 ó más datos, y que presenta sólo una dimensión (1 dimensión = largo). variable Posiciones de datos Celdas de datos referencia Los datos de un arreglo se almacenan en celdas de memoria, de manera contigua. A cada celda se le asigna un número entero que indica la posición de un dato con respecto a los demás. La primera posición es la cero; la última posición es igual al largo del arreglo menos 1. Los arreglos, al igual que los strings, tienen una propiedad fundamental: su largo o cantidad de celdas de datos. a) primera posición del arreglo = 0 b) última posición del arreglo = largo del arreglo - 1

Arreglos en Java Los arreglos sólo pueden almacenar datos de un sólo tipo primitivo o de un sólo tipo de objetos. Para definir un arreglo se debe indicar: el tipo de todos sus datos, la cantidad de celdas de memoria (o posiciones) a generar y un nombre de variable. Para crear las celdas se utiliza la palabra clave new. Los arreglos son tipos de datos para los cuales, una vez definido el largo del arreglo, éste no puede ser modificado con posterioridad -> arreglos de largo no modificable a) Forma de C: arreglo nulo int arrdatos[]; // sólo declaración char arrletras[] = new char[4]; b) Forma de Java: int[] arrdatos = new int[5]; float[] notascurso = new float[6];

Arreglos en Java Para inicializar un arreglo, basta con definir sus elementos entre llaves, separados con comas. Esto automáticamente crea celdas de datos para cada elemento. int[] arrdatos = {9, 8, 7, 6, 5}; float[] notascurso = {4.0F, 1.0F, 6.5F, 5.5F, 7.0F, 4.5F}; boolean[] estadopersonaje = {false, true};

Arreglos en Java Diferentes formas de declaración y definición de arreglos: notar que los arreglos también utilizan la notación de referencias para unir la variable con el espacio para datos. int[] arrdatos; int[] arrdatos = null; arreglo nulo (sin espacio para datos) int[] arrdatos = new int[5]; int[] arrdatos = {9, 8, 7, 6, 5}; espacio de datos inicializado con ceros espacio con datos inicializados explícitamente

Arreglos en Java Arreglos de strings (o de cualquier objeto): notar que para un arreglo de objetos (por ejemplo de strings) la notación gráfica de referencias indica cuatro elementos: la variable la referencia de la variable al espacio de datos el espacio de datos (que contiene referencias a 1 ó varios strings) los strings, en otras celdas de memoria. Por ejemplo,recordando cómo se representaba una variable de string, se tiene que: String frase3 = "Buenas noches!"; String[] diccionario = {"árbol", "barco", "casa", "dado", "e"};

Arreglos en Java Para almacenar un nuevo dato en el arreglo, se debe indicar el nombre del arreglo, la posición a utilizar y el nuevo dato a almacenar. int[] arrdatos = {9, 8, 7, 6, 5}; arrdatos[3] = 45; nuevo dato a almacenar posición de la celda a utilizar arrdatos[1] = -234;

Arreglos en Java Para utilizar un dato de un arreglo basta con indicar el nombre del arreglo y la posición que se requiera. int total = arrdatos[0] + arrdatos[2] * 3 - arrdatos[4]; arrdatos[2] = arrdatos[0] - total;

Parte II Matrices en Java

Matrices en Java Las matrices son estructuras de datos derivadas de los arreglos, que puede almacenar 1 ó más datos, y que presentan dos ó más dimensiones (largo, ancho, profundidad, etc.) Las más populares son las de 2 y 3 dimensiones, aunque pueden existir matrices con más dimensiones, si así se requiere. Posiciones de columna variable referencia Celdas de datos Posiciones de fila En cada dimensión, la primera posición es la cero; la última posición de cada dimensión es igual al largo de la dimensión menos 1.

Matrices en Java Las matrices, al igual que los arreglos, sólo pueden almacenar datos de un sólo tipo primitivo o de un sólo tipo de objetos y su tamaño, una vez definido, no se puede modificar, a menos que se desee perder todos los datos ya almacenados en ella. Si sólo se declara una matriz, su inicialización por defecto será hecha con el valor null. a) Forma de Java: int[][] matdatos; int[][] matdatos = null; matriz nula int[][] matdatos = new int[3][5]; columnas filas

Matrices en Java Para inicializar una matriz, basta con definir sus elementos entre llaves, separados con comas. La inicialización consta de los siguientes elementos: un par de llaves externas para definir toda la matriz pares de llaves internas para definir filas de la matriz, según la cantidad de dimensiones que tenga la estructura. Por ejemplo, para una matriz de 3 filas x 5 columnas (2 dimensiones), se define lo siguiente: int[][] matdatos = { { 4, -1, 5, 0, 9 }, // Fila 0 { 292, 12, -34, 67, -8 }, // Fila 1 { 45, 0, 0, 0, 1} // Fila 2 };

Matrices en Java Para almacenar un nuevo dato en la matriz, se debe indicar el nombre de la matriz, la posición a utilizar (con una coordenada de N valores para N dimensiones) y el nuevo dato a almacenar. int[][] matdatos = { { 4, -1, 5, 0, 9 }, { 292, 12, -34, 67, -8 }, { 45, 0, 0, 0, 1} }; posición de fila-columna matdatos[2][3] = -10; nuevo dato a almacenar

Matrices en Java Para leer un dato de la matriz y utilizarlo, se especifican sus coordenadas de fila-columna dentro de una expresión aritmética u operatoria de objetos. int[][] matdatos = { { 4, -1, 5, 0, 9 }, { 292, 12, -34, 67, -8 }, { 45, 0, 0, -10, 1} }; System.out.println( matdatos[2][3] + matdatos[1][2] ); +

Matrices en Java Nota importante: la representación de matrices utilizada en las diapositivas anteriores puede ser considerada como una simplificación, debido a que la forma real define cada una de las filas como independiente de las demás (como lo indica el diagrama siguiente): La independencia de las filas permite inclusive crear matrices con filas de diferente tamaño (por ejemplo, la fila 0 con 5 celdas, la fila 1 con 20 celdas y la fila 2 con 100 celdas, todas dentro de la misma matriz).

Propiedades de los arreglos y matrices (en Java) Notas importantes: 1.- La cantidad de elementos del arreglo (el largo) de arr1 es igual a: largoarreglo = arr1.length() 2.- La cantidad de filas de la matriz mat1 es igual a: totalfilas = mat1.length() 3.- La cantidad de columnas de la fila nf de la matriz mat1 es igual a: totalcols = mat1[nf].length() NOTA: para una matriz rectangular, la cantidad de columnas de cada fila es igual a: totalcols = mat1[0].length()