MATRICES ARREGLOS BIDIMENSIONALES

Documentos relacionados
ARREGLOS UNIDIMENSIONALES

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

int A[][]=new int[3][4]

Tema: Matrices en C#.

CURSO : ESTRUCTURA DE DATOS DOCENTE : ING. JUAN ZEVALLOS VALLE

Introducción al lenguaje de programación java

Nelson David Muñoz Politécnico CJIC TUTORIAL DISPLAYS

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.

HOJA DE EJERCICIOS 5 PROGRAMACIÓN CON EXCEPCIONES EN JAVA

Resumen Lenguaje Java

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

ISTP CIDET COMPUTACION E INFORMATICA ARREGLOS EN JAVA

CAPÍTULO 3 ESTRUCTURAS DE DATOS ESTÁTICAS

Universidad Nacional del Santa FACULTAD DE INGENIERIA E.A.P de Ingeniería de Sistemas e Informática NETBEANS 7.0

Tema 14: Arreglos estáticos en C

Programación I. Arreglos. Prof. Lisbeth Pérez Rivas

III. Desarrollo de aplicaciones con manejo de datos en la memoria Reuven Feuerstein Javier Navarro

ALGORITMIA Y PROGRAMACIÓN ESTRUCTURAS ITERATIVAS

UNIDAD V: ARR R EGL G OS O BIDI D MENS N IONALE L S

Arreglos Unidimensionales En este tipo de arreglo se hace uso de un índice solamente para hacer referencia a una posición particular del arreglo.

Tema 6: Memoria dinámica

Informática II Vectores y Matrices

Introducción al lenguaje Java

Para crear un arreglo de cualquier tipo de elementos la sintaxis es:

UNIVERSIDAD DON BOSCO FACULTAD DE ESTUDIOS TECNOLÓGICOS ESCUELA DE COMPUTACION

Práctica Guiada: Vectores y Matrices

REPASO ARRAYS MULTIDIMENSIONALES EN JAVA. DECLARACIÓN Y USO. EJEMPLOS Y EJERCICIOS RESUELTOS. (CU00905C)

En Java, un arreglo es un grupo de variables (llamados elementos o componentes) que contienen valores, todos del mismo tipo.

Unidad II. Fundamentos de programación en Java. Ing. José Luis Llamas Cárdenas

Arreglos. Otra definición seria;

Objetivos de la sesión. Aplicación de consola 7/30/11. Código con que se inicia un programa en Visual C# (aplicación de consola)

Modulo 1 El lenguaje Java

Una matriz es un arreglo rectangular de elementos. Por ejemplo:

Guía - Taller # 2 (JAVA)

Programación Java - Ingeniería de Sistemas - UATF 12 Ing. Limber Ruíz Molina

Tema 7.- Fundamentos de la Programación Orientada a Objetos

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

UNIVERSIDAD DON BOSCO FACULTAD DE ESTUDIOS TECNOLÓGICOS ESCUELA DE COMPUTACION

ARREGLOS EN. Nota: El autor.

Programación Orientada a Objetos con Java. Elementos Básicos del Lenguaje Java. Creación de un objeto. Creación de un objeto. Creación de un objeto

Programación Estructurada

Tipos de Arreglos. Notación Algoritmica de los Arreglos multidimensionales tipo_dato nombre[dim 1. , dim 2. ,..., dim n

FACULTAD DE INGENIERÍA

Introduciendo datos desde el

Columnas

Trabajo Práctico 5 Estructura Repetitiva

Sistema de Archivos en Java

Porque usar Arreglos?

Universidad Nacional del Santa F A C U L T A D D E I N G E N I E R I A E.A.P. Ingeniería de Sistemas e Informática NETBEANS 7.0

Programación Orientada a Objetos: Arreglos en Java

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.

Metodología y Tecnología de la Programación

Tipos Recursivos de Datos

TEMA 3. CLASES. EJERCICIOS

String s = t.readline() 4. Si el valor leído desde teclado, se requiere almacenar en una variable de un tipo diferente a

Programación Orientada a Objetos

REPASO ARRAYS O ARREGLOS UNIDIMENSIONALES EN JAVA. EJEMPLOS DE CÓDIGO. (CU00903C)

Tutorial básico del entorno de desarrollo Eclipse.

Algoritmia y Programación

Prueba N o 1. Programación II

CAPÍTULO 4. ARREGLOS

Programación. Test Autoevaluación Tema 3

Estructuras de control condicionales

Algoritmos y Programación I

ARREGLOS (ARRAYS)- MATRICES.

Partes de un programa en Java. A. Ejemplo de un Programa en Java /* Programa Ejemplo de Java: Muestra una Ventana Archivo: Ejemplo1.

U nidad 6: A rreglos: U nidim ensionales y m ultidim ensionales

GUIA DE LABORATORIO # 13 Arreglos unidimensionales y bidimensionales

Arrays. Los arreglos son una colección de objetos del mismo tipo los cuales tienen un nombre en común y su acceso es mediante un índice.

5. Sentencias selectivas o condicionales

Tema 3. Estructuras de control y programación estructurada

Guia#9: Punteros en C#.

Curso de Java Introducción a la Programación I

Estructuras de control repetitivas/iterativas

Bloque II. Elementos del lenguaje de programación Java

Unidad Didáctica 2. Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones

Tema: Introducción al IDE de Microsoft Visual C#.

A l g o r i t m o y E s t r u c t u r a d e D a t o s Ing. en Sistemas de Información 1º año

GUIA DE EJERCICIOS N 1 LENGUAJE C# Página 1 de 5. Instructor: Ing. Néstor Raúl Suarez Perpiñan

GUÍA DE LABORATORIO 5 ARREGLOS DE UNA DIMENSIÓN

Práctica: Creación de un programa C# sencillo

FACULTAD DE ECONOMIA Y ADMINISTRACION DEPARTAMENTO DE CIENCIAS DE LA COMPUTACION CÁTEDRA PROGRAMACION GENERAL. Trabajo Práctico Nº 4

GUÍA DE TRABAJO N 2 ARREGLOS EN C# Ing. Néstor Raúl Suarez Perpiñan Página 1 de 8. Tema: ARREGLOS (ARRAYS) LENGUAJE C#

Instrucción de selección múltiple switch.

Cátedra I Informática Autor I Carlos Bartó

Curso Informática Lección 2. Introducción a la programación en Java

PROGRAMACIÓN ORIENTADA A OBJETOS (L40629) Sabino Miranda-Jiménez

Clase adicional 9. Listas enlazadas. Temas. Listas enlazadas Árboles Problemas de la clase adicional Ejercicios de diseño

UNIDAD 8 Tipos de datos dinámicos: Punteros Asignación dinámica de memoria. Uso de punteros. Inicialización y asignación de punteros.

PRACTICA 9 INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS (PARTE II) Objetivos

#include <stdio.h> /* Factorial de un número - versión 1- */

Estructura de datos tipo vector.

TEMA 1. Introducción a la programación. CONSIDERACIONES GENERALES.

Transcripción:

MATRICES ARREGLOS BIDIMENSIONALES

CONTENIDO Arreglos Bidimensionales (matrices) Qué son Cómo se declaran Cómo se insertan y leen datos Ejemplos Slide 2

MATRICES También llamados arreglos bidimensionales Es un conjunto de datos de un mismo tipo que están almacenados en arreglos de dos dimensiones. Tienen una cantidad de filas y una cantidad de columnas Slide 3

MATRICES También llamados arreglos bidimensionales Es un conjunto de datos de un mismo tipo que están almacenados en arreglos de dos dimensiones. Tienen una cantidad de filas y una cantidad de columnas 3.5 4.0 5.0 5.0 5.0 5.0 3.0 2.5 4.5 4.5 4.0 5.0 Arreglo bidimensional con 3 filas y 4 columnas Slide 4

MATRICES * Al igual que los arreglos unidimensionales, los índices empiezan a partir de cero y se indican entre corchetes: [ ][ ]. El primer índice indica la fila y el segundo indica la columna. Slide 5

ARREGLOS BIDIMENSIONALES 0 1 2 0 1 2 3 3.5 4.0 5.0 5.0 5.0 5.0 3.0 2.5 4.5 4.5 4.0 5.0 Índice para las columnas Índice para las filas Slide 6

PARA RECORDAR * Una matriz almacena elementos del mismo tipo. * Una matriz es de tamaño fijo (mxn). * Cada elemento se guarda en un espacio independiente. * Cada espacio se referencia con dos índices. * El primer índice referencia las filas. * El segundo índice referencia las columnas. * Los índices se empiezan a contar a partir de 0. * En una matriz de mxn sus índices irán de 0 a m-1 para las filas y de 0 a n-1 para las columnas. Slide 7

MATRICES Oscar Juan Jhon Sarah Diana Andrea Arreglo bidimensional 3 filas y 2 columnas Slide 8

MATRICES 0 1 2 0 1 Oscar Sarah Juan Diana Jhon Andrea Arreglo bidimensional 3 filas y 2 columnas Slide 9

MATRICES Es posible definir la siguiente matriz? Sarah 24.8 Oscar 50.6 Kate 13.3 Slide 10

MATRICES Es posible definir la siguiente matriz? Slide 11

MATRICES Cómo definir un arreglo bidimensional (Matriz) Slide 12

MATRICES Cómo definir un arreglo bidimensional (Matriz) tipodedato nombre[ ][ ]=new tipodedato[m][n]; donde m es la cantidad de filas y n es la cantidad de columnas Slide 13

MATRICES String nombres[ ][ ]=new String[3][2]; double notas[ ][ ]=new double[50][4]; Slide 14

MATRICES String nombres[ ][ ]=new String[3][2]; Arreglo bidimensional de Strings, llamado Nombres, con 3 filas y 2 columnas double notas[ ][ ]=new double[50][4]; Arreglo bidimensional de números reales, llamado Notas, con 50 filas y 4 columnas Slide 15

nombres 0 1 0 null null 1 null null 2 null null 0 1 2 3 notas 0 0.0 0.0 0.0 0.0 1 0.0 0.0 0.0 0.0 2. 0.0 0.0 0.0 0.0.... 49 0.0 0.0 0.0 0.0 Slide 16

Declarando e Inicializando Se puede declarar e inicializar una matriz al igual que los vectores: Ejemplos: String nombres[ ][ ] = {{ Oscar, Fonseca, { John, Santos, { Julio, Ruiz ; double notas[ ][ ] = {{ 5.0, 4.0, 5.0, { 4.3, 4.7, 3.8, { 2.7, 3.2, 4.0, { 4.3, 4.7, 5.0; Slide 17

Declarando e Inicializando Se puede declarar e inicializar una matriz al igual que los vectores: Ejemplos: String nombres[ ][ ] = {{ Oscar, Fonseca, { John, Santos, { Julio, Ruiz ; Matriz de cadenas de texto de 3 filas y 2 columnas. double notas[ ][ ] = {{ 5.0, 4.0, 5.0, { 4.3, 4.7, 3.8, { 2.7, 3.2, 4.0, { 4.3, 4.7, 5.0; Matriz de reales de 4 filas y 3 columnas. Slide 18

MATRICES Cómo definir una matriz de enteros, con 4 filas y 3 columnas, llamada numeros Slide 19

MATRICES Cómo definir una matriz de enteros, con 4 filas y 3 columnas, llamada numeros int numeros[ ][ ] = new int[4][3]; Slide 20

MATRICES 3104567 24 109-1 2134231 50 201-30 1231141 13 130-45 3123232 40 110-63 5645343 23 150-70 2233424 27 170-5 Cómo definir este arreglo? Slide 21

MATRICES 3104567 24 109-1 2134231 50 201-30 1231141 13 130-45 3423232 40 110-63 5645343 23 150-70 2233424 27 170-5 int datos[ ][ ]=new int[6][4] Slide 22

MATRICES 3.104567 24.8 2.134231 50.6 1.231141 13.3 3.423232 40.5 5.645343 23.3 2.233424 27.5 Cómo definir esta matriz? Slide 23

MATRICES 3.104567 24.8 2.134231 50.6 1.231141 13.3 3.423232 40.5 5.645343 23.3 2.233424 27.5 double nombre[ ][ ]=new double[6][2]; Slide 24

DÓNDE ESTÁ EL ERROR? String nombres [] = new String[4][3]; int ancholargo = new int [15][2]; double valortiempo [][] = int [7,7]; String nombres [2][2] = {{ Oscar, 100, { Sofia, A ; String nombres [][] = {{ Oscar, 100 { Sofia, A ; String refs[][] = {{ a34 b34 d33, { cf2 b12 aa3 ; Slide 25

MATRICES Cómo insertar datos en los arreglos bidimensionales (matrices)? Slide 26

MATRICES Cómo insertar datos en los arreglos bidimensionales? Debe indicar la posición de la fila y de la columna donde va a almacenar el dato nombredelarreglo[posicionfila][posicioncolumna]=valor; Slide 27

MATRICES Cómo insertar datos en los arreglos bidimensionales? Debe indicar la posición de la fila y de la columna donde va a almacenar el dato nombres nombres[0][0]= Oscar ; nombres[0][1]= Sarah ; Oscar null null Sarah null null Slide 28

MATRICES Cómo insertar datos en los arreglos bidimensionales? Debe indicar la posición de la fila y de la columna donde va a almacenar el dato nombres nombres[0][0]= Oscar ; nombres[0][1]= Sarah ; nombres[?][?]= Jhon ; nombres[?][?]= Andrea ; Oscar null Jhon Sarah null Andrea Slide 29

MATRICES Cómo insertar datos en los arreglos bidimensionales? Debe indicar la posición de la fila y de la columna donde va a almacenar el dato nombres nombres[0][0]= Oscar ; nombres[0][1]= Sarah ; nombres[2][0]= Jhon ; nombres[2][1]= Andrea ; Oscar null Jhon Sarah null Andrea Slide 30

MATRICES Dónde puede haber errores? int matriz[][] = new int [5][3]; double i; int m=6,n=3;... matriz[0][3] = 21.2; matriz[i][n] = 90; matriz[m-1][n-1] = matriz [m][n] + 10; matriz[5][3]=matriz[n][m];... Slide 31

MATRICES Cómo recuperar los datos de los arreglos bidimensionales? Slide 32

MATRICES Cómo recuperar los datos de los arreglos bidimensionales? Debe indicar la posición de la fila y de la columna nombredelarreglo[posicionfila][posicioncolumna] Slide 33

MATRICES Cómo recuperar datos de los arreglos bidimensionales? Debe indicar la posición de la fila y de la columna nombres[0][0] nombres[0][1] nombres Oscar Sarah null null Cómo obtener Andrea? Jhon Andrea Slide 34

MATRICES Presente el conjunto de instrucciones Java para crear una matriz de 50x4 números reales. Adicione las instrucciones necesarias para solicitar al usuario cada uno de los números Ahora, muestre en un mensaje, todos los números Slide 35

MATRICES Presente el conjunto de instrucciones Java para crear una matriz de 50x4 números reales. double numeros[][]= new double[50][4]; Slide 36

0 1 2 3 0 1 2............ 49 Slide 37

MATRICES Presente el conjunto de instrucciones Java para crear una matriz de 50x4 números reales. Adicione las instrucciones necesarias para solicitar al usuario cada uno de los números double numeros[][]= new double[50][4]; Slide 38

0 1 2 3 0 1 2............ 49 Slide 39

0 1 2 3 0 1 2............ 49 Slide 40

MATRICES double numeros[][]= new double[50][4]; numeros[0][0]=double.parsedouble(joptionpane.showinputdialog( Digite un numero )); numeros[0][1]=double.parsedouble(joptionpane.showinputdialog( Digite un numero )); numeros[0][2]=double.parsedouble(joptionpane.showinputdialog( Digite un numero )); numeros[0][3]=double.parsedouble(joptionpane.showinputdialog( Digite un numero )); Slide 41

0 1 2 3 0 1 2............ 49 Slide 42

MATRICES double numeros[][]= new double[50][4]; numeros[0][0]=double.parsedouble(joptionpane.showinputdialog( Digite un numero )); numeros[0][1]=double.parsedouble(joptionpane.showinputdialog( Digite un numero )); numeros[0][2]=double.parsedouble(joptionpane.showinputdialog( Digite un numero )); numeros[0][3]=double.parsedouble(joptionpane.showinputdialog( Digite un numero )); numeros[1][0]=double.parsedouble(joptionpane.showinputdialog( Digite un numero )); numeros[1][1]=double.parsedouble(joptionpane.showinputdialog( Digite un numero )); numeros[1][2]=double.parsedouble(joptionpane.showinputdialog( Digite un numero )); numeros[1][3]=double.parsedouble(joptionpane.showinputdialog( Digite un numero )); Slide 43

0 1 2 3 0 1 2............ 49 Slide 44

numeros[0][0]=double.parsedouble(joptionpane.showinputdialog( Digite un numero )); numeros[0][1]=double.parsedouble(joptionpane.showinputdialog( Digite un numero )); numeros[0][2]=double.parsedouble(joptionpane.showinputdialog( Digite un numero )); numeros[0][3]=double.parsedouble(joptionpane.showinputdialog( Digite un numero )); numeros[1][0]=double.parsedouble(joptionpane.showinputdialog( Digite un numero )); numeros[1][1]=double.parsedouble(joptionpane.showinputdialog( Digite un numero )); numeros[1][2]=double.parsedouble(joptionpane.showinputdialog( Digite un numero )); numeros[1][3]=double.parsedouble(joptionpane.showinputdialog( Digite un numero ));... numeros[49][0]=double.parsedouble(joptionpane.showinputdialog( Digite un numero )); numeros[49][1]=double.parsedouble(joptionpane.showinputdialog( Digite un numero )); numeros[49][2]=double.parsedouble(joptionpane.showinputdialog( Digite un numero )); numeros[49][3]=double.parsedouble(joptionpane.showinputdialog( Digite un numero )); Slide 45

for (int i=0; i<=49; i=i+1){ for (int j=0; j<=3; j=j+1){ numeros[i][j]=double.parsedouble(joptionpane.showinputdialog( Digite un numero en la posición +i+ +j)); Slide 46

for (int i=0; i<=49; i=i+1){ for (int j=0; j<=3; j=j+1){ La variable i maneja las filas. Comienzan en 0, hasta 49 numeros[i][j]=double.parsedouble(joptionpane.showinputdialog( Digite un numero en la posición +i+ +j)); Slide 47

for (int i=0; i<=49; i=i+1){ for (int j=0; j<=3; j=j+1){ La variable j maneja las columnas. Comienzan en 0, hasta 3 numeros[i][j]=double.parsedouble(joptionpane.showinputdialog( Digite un numero en la posición +i+ +j)); Slide 48

for (int i=0; i<=49; i=i+1){ for (int j=0; j<=3; j=j+1){ La variable j maneja las columnas. Comienzan en 0, hasta 3 numeros[i][j]=double.parsedouble(joptionpane.showinputdialog( Digite un numero de la posición +i+ +j)); Se almacena cada número decimal solicitado en la posicion i,j de la matriz Slide 49

Matriz de 30x6 0 1 2 0 1 5............ 29 For(int i=?; i<=?; i=i+1){ for(intj=?; j<=?; j=j+1){ numeros[i][j]=double.parsedouble(joptionpane.showinputdialog( Digite numero )); Slide 50

Matriz de 30x6 0 1 2 0 1 5............ 29 For(int i=0; i<=29; i=i+1){ for(intj=0; j<=5; j=j+1){ numeros[i][j]=double.parsedouble(joptionpane.showinputdialog( Digite numero )); Slide 51

Matriz de 4x4 0 1 2 3 0 1 2 3 For(int i=?; i<=?; i=i+1){ for(intj=?; j<=?; j=j+1){ numeros[i][j]=double.parsedouble(joptionpane.showinputdialog( Digite numero )); Slide 52

Matriz de 4x4 0 1 2 3 0 1 2 3 For(int i=0; i<=3; i=i+1){ for(intj=0; j<=3; j=j+1){ numeros[i][j]=double.parsedouble(joptionpane.showinputdialog( Digite numero )); Slide 53

MATRICES Presente el conjunto de instrucciones Java para crear una matriz de 50x4 números reales. Adicione las instrucciones necesarias para solicitar al usuario cada uno de los números Ahora, muestre en un mensaje de texto, todos los números Slide 54

double numeros = new double[50][4]; for (int i=0; i<=49; i=i+1){ for (int j=0; j<=3; j=j+1){ numeros[i][j]=double.parsedouble(joptionpane.showinputdialog( Digite un numero )); String mensaje= ; for (int i=0; i<=49; i=i+1){ for (int j=0; j<=3; j=j+1){ mensaje=mensaje + numeros[i][j]+ ); mensaje+= \n ; Slide 55

Las matrices y el ciclo for Una matriz se procesa generalmente usando dos ciclos for anidados: Slide 56

Las matrices y el ciclo for Una matriz se procesa generalmente usando dos ciclos for anidados: Slide 57

Las matrices y el ciclo for b.length indica la cantidad de filas de la matriz. b[i].length indica la cantidad de columnas de la matriz. Slide 58

Ejemplo 1: Escriba un programa en Java que solicite el código y el nombre de los estudiantes de cualquier curso y los muestre todos al final. Use una matriz para guardar los datos solicitados. Slide 59

Ejemplo 1: Análisis * Debemos capturar los nombres de m estudiantes. por lo tanto requerimos saber el valor de m para saber cuántas filas tendrá la matriz. * La matriz tendrá dos columnas: una para el código del estudiante (String) y otra para el nombre (String). * La matriz será del tipo String y de tamaño mx2. * La salida del programa será un String que contendrá la lista numerada de los nombres de los estudiantes. Slide 60

Ejemplo 1: Programa en Java import javax.swing.*; public class NombresCurso { static String estudiantescurso[][]; public static void main(string[] args) { int cantestudiantes; String salida; cantestudiantes = Integer.parseInt( JoptionPane.showInputDialog( "Cantidad de Estudiantes:")); estudiantescurso = new String [cantestudiantes][2]; Slide 61

Ejemplo 1: Programa en Java for (int m=0; m < estudiantescurso.length; m++){ estudiantescurso[m][0]=joptionpane.showinputdialog ("Codigo del estudiante número" + (m+1) + ":"); estudiantescurso[m][1]=joptionpane.showinputdialog ("Nombre del estudiante número" + (m+1) + ":"); salida = "Estudiantes delcurso:\n\n" + "Número\tCódigo\tNombre\n"; for (int m=0; m < estudiantescurso.length; m++){ salida += (m+1) + "\t"; for (int n=0; n < estudiantescurso[m].length; n++){ salida += estudiantescurso[m][n] + "\t"; salida += "\n"; Slide 62

Ejemplo 1: Programa en Java //mostrar los resultados en un Area de Texto JTextArea areasalida = new JTextArea(); JScrollPane scroll = new JScrollPane(areaSalida); areasalida.settext( salida ); JOptionPane.showMessageDialog( null, scroll, "Resultados", JOptionPane.INFORMATION_MESSAGE ); //Fin método main //Fin clase Slide 63

Ejemplo 2: Escriba un programa que lea dos matrices de mxn, calcule la suma de ellas y muestre el resultado. Slide 64

Ejemplo 2: Programa en Java import javax.swing.*; public class SumaMatrices { static String salida=""; public static void main(string[] args) { int m, n, int a [][]; int b [][]; int c [][]; m=integer.parseint(joptionpane.showinputdialog( "Número de filas de las matrices:")); n=integer.parseint(joptionpane.showinputdialog( "Número de Columnas de las matrices:")); a = new int [m][n]; b = new int [m][n]; c = new int [m][n]; //Continúa Slide 65

Ejemplo 2: Programa en Java //Continuación método main leermatriz(a, "Matriz A"); leermatriz(b, "Matriz B"); calcularsuma(a,b,c); generarsalida(a, "Matriz A"); generarsalida(b, "Matriz B"); generarsalida(c, "Matriz A+B"); JTextArea areasalida = new JTextArea(); areasalida.settext( salida ); JOptionPane.showMessageDialog( null, areasalida, "Suma de Matrices", JOptionPane.INFORMATION_MESSAGE ); //fin método main Slide 66

Ejemplo 2: Programa en Java static void leermatriz(int matriz[][], String s){ for(int m=0; m < matriz.length; m++){ for(int n=0; n < matriz[m].length; n++){ matriz[m][n]=integer.parseint( JoptionPane.showInputDialog( s + ": Valor posición [" + m + "][" + n + "]:")); //fin método leermatriz Slide 67

Ejemplo 2: Programa en Java static void calcularsuma(int a[][],int b[][],int c[][]){ for(int m=0; m < c.length; m++){ for(int n=0; n < c[m].length; n++){ c[m][n]= a[m][n] + b[m][n]; //fin método calcularsuma static void generarsalida (int a[][], String titulo){ salida += titulo + ":\n"; for(int m=0; m < a.length; m++){ for(int n=0; n < a[m].length; n++){ salida += a[m][n] + "\t"; salida +="\n"; salida +="\n"; //fin método generarsalida //fin clase Slide 68

ARREGLOS BIDIMENSIONALES 0 1 2 3 0 1 2 3 2 5 2 4 3 5 12 5 6 12 43 4 21 32 31 5 Cómo mostrar en el área de texto solo los elementos de la primera fila Slide 69

String salida= ; for (int i=0; i<=3; i++){ salida=salida+ numeros[0][i] + \n ; miarea.append(salida); Slide 70

ARREGLOS BIDIMENSIONALES 0 1 2 3 0 1 2 3 2 5 2 4 3 5 12 5 6 12 43 4 21 32 31 5 Cómo mostrar en el área de texto solo los elementos de la primera columna Slide 71

ARREGLOS BIDIMENSIONALES 0 1 2 3 0 1 2 3 2 5 2 4 3 5 12 5 6 12 43 4 21 32 31 5 Cómo mostrar en el área de texto los elementos de la diagonal \ Slide 72

for (int i=0; i<=3; i++){ for (int j=0; j<=3; j++){ if (i==j){ miarea.append( \n + numeros[i][j]); De todas las posiciones, solo muestra los número, cuando la fila es igual a la columna (diagonal \) Slide 73

ARREGLOS BIDIMENSIONALES Muestre la suma de todos los números en la matriz Slide 74

int suma=0; for (int i=0; i<=3; i++){ for (int j=0; j<=3; j++){ suma = suma + numeros[i][j]; miarea.append( \n La suma es : + suma ) Slide 75

ARREGLOS BIDIMENSIONALES Muestre la suma de los elementos de la diagonal \ Slide 76

int suma=0; for (int i=0; i<=3; i++){ for (int j=0; j<=3; j++){ if (i==j){ suma = suma + numeros[i][j]; miarea.append( \nla suma es : + suma ) Slide 77

ARREGLOS BIDIMENSIONALES Muestre la suma de los elementos de cada columna Slide 78

ARREGLOS BIDIMENSIONALES 2 5 2 3 5 12 6 12 43 21 32 31 La suma de la columna 1 es: 32 La suma de la columna 2 es: 54 La suma de la columna 3 es: 88 Slide 79

int sumacol; for (int col=0; col<3; col++){ sumacol=0; for (int fil=0; fil<4; fil++){ sumacol = sumacol + numeros[fil][col]; miarea.append( \nla suma de la columna +(col+1)+ es: + sumacol); Slide 80

ARREGLOS BIDIMENSIONALES Ejercicio: Se requiere una aplicación en java para almacenar los resultados de las ultimas elecciones de rector de la universidad del Valle. Los datos deben almacenarse en una matriz donde cada fila corresponde a una sede y cada columna corresponde a un candidato. El programa debe mostrar la tabla con los nombres de las sedes y los nombres de los candidatos y cada uno de los resultados. La aplicación también debe mostrar el candidato ganador. Se debe mostrar en un JTextArea todos los valores del arreglo. Slide 81

MATRICES Arreglos a utilizar Candidatos Ivan Ramos Jorge Sanchez José Rios Sedes Cali Palmira Buga Tuluá 500 400 300 250 150 250 200 250 100 120 200 210 Votos Slide 82

MATRICES Arreglos a utilizar Candidatos Ivan Ramos Jorge Sanchez José Rios Sedes Cali Palmira Buga Tuluá Ramos Sanchez Rios 500 400 300 250 150 250 200 250 100 120 200 210 Votos Slide 83

MATRICES Arreglos a utilizar Candidatos Ivan Ramos Jorge Sanchez José Rios Sedes Cali Palmira Buga Tuluá Ramos Sanchez Rios Cali Palmira Buga Tuluá 500 400 300 250 150 250 200 250 100 120 200 210 Votos Slide 84

ARREGLOS BIDIMENSIONALES public class votaciones{ public static void main (String a[]){ String candidatos[], sedes[]; int votos[][], fil, col; JTextArea area= new JTextArea(15, 30);; JScrollPane scroll = new JScrollPane(area); fil = Integer.parseInt(JOptionPane.showInputDialog ("Ingrese el número de sedes:")); sedes = new String[fil]; for (int x = 0; x < fil; x++){ sedes[x] = JOptionPane.showInputDialog("Sede No :"+(x+1)); Slide 85

ARREGLOS BIDIMENSIONALES col = Integer.parseIntJOptionPane.showInputDialog( candidatos = new String[col]; for (int x = 0; x < col; x++){ "Ingrese el número de candidatos:")); candidatos[x] = JOptionPane.showInputDialog("Nombre del Candidato No :"+(x+1)); votos = new int[fil][col]; for (int x = 0; x < fil; x++){ for (int y = 0; y < col; y++){ votos[x][y] = Integer.parseInt(JOptionPane. showinputdialog("ingrese los votos de la sede " +sedes[x]+ "para el candidato" +candidatos[y])); Slide 86

ARREGLOS BIDIMENSIONALES int[] totalvotos = new int[candidatos.length]; for (int y = 0; y < col; y++){ for (int x = 0; x < fil; x++){ totalvotos[y] += votos[x][y]; int max = 0; int pos = 0; for (int i = 0; i < totalvotos.length; i++){ if ( max < totalvotos[i] ){ max = totalvotos[i]; pos = i; area.append("candidato con mayoría de votos: "+candidatos[pos]+. Total de Votos: "+totalvotos[pos]); Slide 87

ARREGLOS BIDIMENSIONALES for (int i = 0; i < fil; i++){ area.append("\n"+sedes[i]); for (int x = 0; x < col; x++){ area.append("\n"+candidatos[x]); area.append("\t"+votos[i][x]); JOptionPane.showMessageDialog(null, scroll); //fin main //fin clase Slide 88