Cap - PowerPoint PPT Presentation

1 / 24
About This Presentation
Title:

Cap

Description:

Title: Programaci n de Computadores IWI-131 Author: fborquez Last modified by: vtr globalcom sa Created Date: 3/2/2005 4:01:52 AM Document presentation format – PowerPoint PPT presentation

Number of Views:40
Avg rating:3.0/5.0
Slides: 25
Provided by: fborquez
Category:
Tags: cap | programacion

less

Transcript and Presenter's Notes

Title: Cap


1
Capítulo 2Subprogramas/Funciones - Arreglos
  • Arreglos-Arrays.

2
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

3
Arreglos - Arrays
  • Ahora sumar las variables, es mucho más fácil

4
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

5
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

6
Ejemplos
UNIDIMENSIONAL
BIDIMENSIONAL
TRIDIMENSIONAL
7
Ejemplos
  • // Enteros tamaño
  • int unidimensional2,0,0,7
  • //Arreglo bidimensional de enteros
  • int bidimensional 0,0,0,1,1,1

8
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.

9
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

10
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.

11
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 int10

12
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
    TipoElementostamano

13
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 lt arrayDeEnteros.length j)
  • arrayDeEnterosj j
  • StdOut.println("j " arrayDeEnterosj)

14
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.

15
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!

16
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.

17
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

18
Arreglos Bidimensionales
  • Un arreglo bidimensional es una lista de arreglos
    unidimensional
  • Para declarar un arreglo bidimensional de enteros
    int matriz new int34

19
Ejemplo
  • int fila3,col4
  • for(fila0filalt3fila)
  • for(col0collt4col)
  • matrizfilacolfilacol
  • //más fácil
  • for(fila0filaltmatriz.lengthfila)
  • for(col0colltmatriz0.lengthcol)
  • StdOut.print(matrizfilacol)

20
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

21
Notas del curso
  • int alumnos52
  • int notas3
  • int curso new intalumnosnotas
  • int fila,col
  • for(fila0filaltalumnosfila)
  • for(col0colltnotascol)
  • cursofilacolStdIn.readInt()
  • Con lo cual curso102 representa la nota del
    tercer certamen del alumno identificado como 10
    (que realmente será el 11 ingresado dado que el
    arreglo comienza en 0)

22
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

23
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 tipotamaño1tamaño2tamañoN
  • int a3,b4,c5,i ,j ,k
  • int arr new intabc
  • for(i0 ilta i)
  • for(j0 jltb j)
  • for(k0 kltc k)
  • arrijkijk

24
Fin
  • Preparando la revancha
Write a Comment
User Comments (0)
About PowerShow.com