Loading presentation...

Present Remotely

Send the link below via email or IM

Copy

Present to your audience

Start remote presentation

  • Invited audience members will follow you as you navigate and present
  • People invited to a presentation do not need a Prezi account
  • This link expires 10 minutes after you close the presentation
  • A maximum of 30 users can follow your presentation
  • Learn more about this feature in our knowledge base article

Do you really want to delete this prezi?

Neither you, nor the coeditors you shared it with will be able to recover it again.

DeleteCancel

Make your likes visible on Facebook?

Connect your Facebook account to Prezi and let your likes appear on your timeline.
You can change this under Settings & Account at any time.

No, thanks

Programación: Arreglos

No description
by

Andres Ruiz

on 31 March 2014

Comments (0)

Please log in to add your comment.

Report abuse

Transcript of Programación: Arreglos

¿Cómo procesar un arreglo?
Hasta ahora hemos visto como declarar un arreglo y como llenar los datos de un arreglo....
Ejercicios prácticos
Arreglos!
Necesitamos una forma organizada y eficiente de acceder a esta cantidad de datos.
Declaración de arreglos
Estructuras de datos unidimensionales: Arreglos
Programación: Arreglos
Arreglos!
Inicialización de arreglos
En esta instrucción estamos declarando el arreglo:
Por: Andrés Ruiz
Supongamos que tenemos que escribir un programa donde tenemos que modelar un juego de cartas.
En nuestro programa tendríamos 52 variables... una por cada carta de la baraja
Estructuras de datos unidimensionales: Arreglos
Una posible forma de modelarlo es declarando 52 variables así:
public

class
JuegoCartas
{
public static void
main( String args[] )
{
int
carta1 = 1;
int
carta2 = 2;
int
carta3 = 3;
...
int
carta52 = 52;
}
}
La solución: usar una estructura de datos...
Un
arreglo
!!!
Un arreglo nos permite acceder fácilmente a un conjunto de datos:
int
carta1 = 1;
int
carta2 = 2;
int
carta3 = 3;

....

int
carta52 = 52;
baraja[0] = 1;
baraja[1] = 2;
baraja[2] = 3;

....

baraja[51] = 52;
int
baraja[] =
new int
[52];
Arreglos!
baraja[0]
baraja[1]
baraja[2]

....

baraja[51]
int
baraja[] =
new int
[52];
Los arreglos inician en 0 y terminan en
tamaño-1
referencia a la variable de tipo arreglo
declaración inicial del tamaño del arreglo
= 1
= 2
= 3

....

= 52
elemento 51 del arreglo
valor del elemento 51 del arreglo
int
baraja[] =
new int
[52];
tipo de datos que contendrá el arreglo
nombre del arreglo
paréntesis cuadrados
new
para crear el arreglo
tamaño: número de datos que contendrá el arreglo
int
baraja[] =
new int
[52];
Pero aún está vacío.... no tiene datos adentro!
Inicialización de arreglos
Una posible forma de llenar los datos del arreglo es:
int
baraja[] =
new int
[52];

baraja[0] = 1;
baraja[1] = 2;
baraja[2] = 3;

....

baraja[51] = 52;
Inicialización de arreglos
Otra posible forma de llenar los datos del arreglo es:
int
baraja[] = { 1, 2, 3, ..., 52 };
Pero, ¿cómo procesamos los datos que tenemos dentro de él?
¿Cómo procesar un arreglo?
Con un
ciclo
!!... una posible forma es la siguiente:
public

class
JuegoCartas
{
public static void
main( String args[] )
{
int
baraja[] =
new int
[52];

for
(
int
i=0; i<baraja.length; i++ )
{
//Instrucciones que ejecutamos con la
//posición i del arreglo
baraja[i] = i+1;
}
}
}
¿Qué hicimos en el anterior ciclo?
1
2
3
4
Vamos a crear un nuevo proyecto en
Eclipse
, y dentro de él vamos a crear una clase que se llame
JuegoCartas
.

En el
main
vamos a declarar un arreglo de tipo
int
que se llame
baraja,
y cuyo tamaño sea de 52.

Vamos a declarar un método que inicialice las cartas con valores de 0 a 51:
public static int
[] inicializarBaraja()
Usaremos estos arreglos para clasificar nuestras cartas de la siguiente forma:

0
... 13 cartas de picas
12
13
... 13 cartas de corazones
25
26
... 13 cartas de diamantes
38
39
... 13 cartas de tréboles
51
Vamos a declarar en el
main
dos arreglos más, así:

String palos[] = { "Picas", "Corazones", "Diamantes", "Tréboles" };

String rangos[] = { "As", "2", "3", "4", "5", "6",
"7", "8", "9", "10", "J", "Q", "K" };

A
B
C
Vamos a escribir un método en nuestra clase que se llame:
public static void
imprimirCarta(
int
carta, String palos[],
String rangos[] )
Que recibe una carta y la imprime por consola según la clasificación que hicimos.

Ejemplos:
0 = As de Picas
15 = 3 de Corazones
50 = Q de Tréboles
27 = 2 de Diamantes
D
Usando el método anterior, vamos a escribir un nuevo método en nuestra clase que se llame:
public static void
imprimirBaraja(
int
baraja[], String palos[],
String rangos[] )
Que imprime toda la baraja de cartas, así:
Carta1: 0 = As de Picas
Carta2: 1 = 2 de Picas
Carta3: 2 = 3 de Picas

....

Carta52: 51 = K de Diamantes
Agregar un nuevo método a la clase:
public static int
[] barajarCartas()
Que retorna las cartas de 0 a 51, en orden aleatorio.
Agregar un nuevo método a la clase:
public static int
posicionCartaMayor(
int
baraja[])
Que encuentra la posición de la carta mayor en la baraja.

Vamos a llamar desde el
main
los métodos para barajar las cartas, imprimir la baraja, y encontrar la posición de la carta mayor.
Full transcript