Está en la página 1de 14

Introducción

• En cualquier lenguaje de programación, es posible construir estructuras que


almacenen conjuntos de datos.
• Estras estructuras pueden tener una o más dimensiones.
• Las estructuras con una dimensión se denominan arreglos y las de dos dimensiones se
denominan matrices.
• Hay casos particulares en los que se requiere el uso de más de dos dimensiones, en esos
casos, se denominan arreglos multidimensionales.
Arreglos: Características
• Un arreglo es una estructura que posee un conjunto de datos del mismo tipo.
• Los arreglos en Java son objetos, y sus elementos pueden ser de tipos primitivos de datos o clases.
• Características de los arreglos:
• Tienen nombre: El nombre identifica al arreglo, y a través de éste nombre, se accede al arreglo para su lectura
y escritura de información. Ejemplo:
int miArreglo[];
• Instancia con el operador new que permite la asignación del tamaño del arreglo. Ejemplo:
miArreglo = new int[6]; //que define un arreglo de tamaño 6 de tipo entero.
• Es posible realizar los procedimientos anteriores en una sola línea. Ejemplo:
int miArreglo[] = new int[6];
Arreglos: Características
• Se accede a los elementos del arreglo a través de corchetes [ ], indicando la
posición del elemento al cuál se desea acceder. La posición del elemento es
denominado el índice.
• En PSeInt el índice inicia en valor 1 y el final en n, donde n es la cantidad de elementos
del arreglo.
• En Java el índice inicia con el valor 0 y el final es n-1, donde n es la cantidad de
elementos del arreglo. Para n =6, el arreglo miArreglo es:
miArreglo

0 1 2 3 4 5
Arreglos: Características
• Para asignar valores a las celdas del vector, se usa el nombre del vector y el
valor del índice o la posición de la celda. Ejemplo: Queremos guardar un 10
en la posición 0 del vector (usando la representación de Java de vectores).
miArreglo[0] = 10;
miArreglo
10
0 1 2 3 4 5
miArreglo[5] = 8;
miArreglo
10 8
0 1 2 3 4 5
Arreglos: Características
• Para leer el valor almacenado en alguna de las celdas del arreglo se requiere el nombre del
arreglo y el valor del índice o la posición de la que se desea obtener el dato. Ejemplo: Leer el
valor que se encuentra almacenado en la posición 5 del vector miArreglo y asignarlo en la
variable entera llamada dato.
int dato = miArreglo[5];
• En caso de que no se hayan asignado valores a todas las celdas del arreglo o vector, los
elementos del arreglo se inicializan al valor por defecto del tipo de dato del vector. Ver la
siguiente tabla para mejor referencia:
Arreglos: Características
Tipo de dato Ejemplo de vector Detalle
inicializado con valor por
defecto según el tipo de
dato
int arreglo[] =new int int[4]; 0 0 0 0 Ceros
double arreglo[] = new int[4]; 0.0 0.0 0.0 0.0 Ceros
String arreglo[] = new String[4]; “” “” “” “” Cadena vacía
(comillas)
char arreglo[] = new char[4]; ‘’ ‘’ ‘’ ‘’ Carácter nulo
(comilla simple,
no ascento)
Arreglos: Características
• Los arreglos se pueden inicializar con valores desde que son declarados, y si se conocen los
valores, no es necesario indicar el tamaño del arreglo, ya que la definición del tamaño se obtiene
según la cantidad de valores que se indican entre llaves. Ejemplo: Declaración de un vector de
tipo cadena de texto o String inicializado con los valores equivalentes a los nombre de los días de
la semana.
String dias[] = {“lunes”,”martes”,”miércoles”,”jueves”,”viernes”,”sabado”,”domingo”};
dias “lunes” “martes” “miércoles” “jueves” “viernes” “sabado” “domingo”
0 1 2 3 4 5 6

Automáticamente, Java detecta que el vector dias es de tamaño 7, y recerva el espacio requerido
para asignar los valores declarados en la inicialización en cada una de las celdas del vector.
Arreglos y ciclos
• Debido a que los índices de un arreglo en Java inician en 0 y terminan hasta
el tamaño del arreglo menos 1 (n-1, donde n es el tamaño del arreglo), se
usan ciclos para llenarlos o leerlos en orden ascendente (0,1,2,…,n-1) o
descendente (n-1, n-2, …, 3,2,1,0), generando dichos valores según
corresponda.
• Ejemplo: Para recorrer las celdas del vector dia en forma ascendente e
imprimir su contenido, es posible usar uno de los siguientes códigos:
Pseudocódigo Código Java equivalente usando cilo para (for)
Inicio public class Programa{
Dimension dia[7]; public static void main(String args[]){
dia[1]=“lunes”; String dia[]={“lunes”,”martes”,”miércoles”,”jueves”,”viernes”,
dia[2]=“martes”; ”sabado”,”domingo”};
dia[3]=“miércoles”; int i;
dia[4]=“jueves”; int n=7;
dia[5]=“viernes”; for(i=0; i<n; i++)
dia[6]=“sabado”; {
dia[7]=“domingo”; System.out.print(dia[i]+”,”);
Para i←1 Hasta 7 Con Paso 1 }
Escribir dia[i],”,”; }
Fin Para }
Fin Programa
Pseudocódigo Código Java equivalente usando cilo mientras (while)
Inicio public class Programa{
Dimension dia[7]; public static void main(String args[]){
dia[1]=“lunes”; String dia[]={“lunes”,”martes”,”miércoles”,”jueves”,”viernes”,
dia[2]=“martes”; ”sabado”,”domingo”};
dia[3]=“miércoles”; int contador=0;
dia[4]=“jueves”; int n=7;
dia[5]=“viernes”; while(contador<n)
dia[6]=“sabado”; {
dia[7]=“domingo”; System.out.print(dia[i]+”,”);
contador←1; contador++;
Mientras contador<=7 Hacer }
Escribir dia[contador],”,”; }
contador←contador+1; }
Fin Mientras
Fin Programa
Pseudocódigo Código Java equivalente usando cilo hacer-mientras (do-while)
Inicio public class Programa{
Dimension dia[7]; public static void main(String args[]){
dia[1]=“lunes”; String dia[]={“lunes”,”martes”,”miércoles”,”jueves”,”viernes”,
dia[2]=“martes”; ”sabado”,”domingo”};
dia[3]=“miércoles”; int contador=0;
dia[4]=“jueves”; int n=7;
dia[5]=“viernes”; do {
dia[6]=“sabado”; System.out.print(dia[i]+”,”);
dia[7]=“domingo”; contador++;
contador←1; }while(contador!=7) ;
repetir }
Escribir dia[contador],”,”; }
contador←contador+1;
mientras contador != 8
Fin Programa
Ejemplo: cálculo de promedio en un arreglo

• Para calcular el promedio en un arreglo, es necesario sumar los elementos de las


celdas del arreglo y dividir el total de la suma entre la cantidad de elementos del
arreglo.
• Su implementación para el siguiente arreglo es:

x 9 0 7 2 10 10 5
0 1 2 3 4 5 6
promedio = (9+0+7+2+10+10+5)/7=6.14, si la variable promedio se declara de tipo
entero, entoces se truncará el valor a 6.
Pseudocódigo Código Java equivalente para obtener el promedio de los
elementos del arreglo cuando el arreglo es inicializado desde la
declaración
Inicio public class Programa{
Dimension x[7]; public static void main(String args[]){
x[1]=9; String x[]={9,0,7,2,10,10,5};
x[2]=0; int i;
x[3]=7; int n=7;
x[4]=2; int suma=0;
x[5]=10; for(i=0; i<n; i++)
x[6]=10; {
x[7]=5; suma=suma+x[i];
suma←0; }
Para i←1 Hasta 7 Con Paso 1 int promedio=suma/7;
suma←suma+x[i]; System.out.println(”Promedio=“+promedio);
Fin Para }
promedio←suma/7; }
Escribir “Promedio=“,promedio;
Fin Programa
Pseudocódigo Código Java equivalente para llenar un arreglo con datos
proporcionados por el usuario usando ciclo para (for en decremento

Ejemplo: Llenar el arreglo con datos


de 6 a 0), una vez leídos los 7 valores y almacenados en el arreglo x, el
programa imprime el contenido del arreglo (usando otro ciclo para
ascendentemente generando valores para i desde 0 hasta 6).
Inicio
provenientes del teclado
import java.util.Scanner;
Dimension x[7]; public class Programa{
Para i←7 Hasta 1 Con Paso -1 public static void main(String args[]){
Escribir “Ingrese un valor:”; int x[]=new int[7];
Leer x[i]; Scanner sc = new Scanner(System.in);
Fin Para for(i=6; i>=0; i--)
//Mandamos a imprimir el arreglo {
Para i←0 Hasta 7 Con Paso 1 System.out.println(“Ingrese un valor”);
Escribir x[i],“,”; x[i] = sc.nextInt( );
Fin Para }
Fin Programa //Mandamos a imprimir el arreglo
for(i=0; i<7; i++){
System.out.print(x[i]+”,”);
}

}
}

También podría gustarte