miércoles, 25 de agosto de 2010

Arreglos:

Arreglos unidimensionales:
Un arreglo unidimensional es un tipo de datos estructurado que está formado de una colección finita y ordenada de datos del mismo tipo. Es la estructura natural para modelar listas de elementos iguales.
El tipo de acceso a los arreglos unidimensionales es el acceso directo, es decir, podemos acceder a cualquier elemento del arreglo sin tener que consultar a elementos anteriores o posteriores, esto mediante el uso de un índice para cada elemento del arreglo que nos da su posición relativa.
Para implementar arreglos unidimensionales se debe reservar espacio en memoria, y se debe proporcionar la dirección base del arreglo, la cota superior y la inferior.

Ejemplo :

REPRESENTACION EN MEMORIA

Los arreglos se representan en memoria de la forma siguiente:
                x : array[1..5] of integer


Para establecer el rango del arreglo (número total de elementos) que componen el arreglo se utiliza la siguiente formula:
                RANGO = Ls - (Li+1)
donde:
ls = Límite superior del arreglo
li = Límite inferior del arreglo
Para calcular la dirección de memoria de un elemento dentro de un arreglo se usa la siguiente formula:
                A[i] = base(A) + [(i-li) * w]
donde :
A = Identificador único del arreglo
i = Indice del elemento
li = Límite inferior
w = Número de bytes tipo componente
Si el arreglo en el cual estamos trabajando tiene un índice numerativo utilizaremos las siguientes fórmulas:
                RANGO = ord (ls) - (ord (li)+1)
                A[i] = base (A) + [ord (i) - ord (li) * w]

Arreglos Bidimensionales:



Este tipo de arreglos al igual que los anteriores es un tipo de dato estructurado, finito ordenado y homogéneo. El acceso a ellos también es en forma directa por medio de un par de índices.
Los arreglos bidimensionales se usan para representar datos que pueden verse como una tabla con filas y columnas. La primera dimensión del arreglo representa las columnas, cada elemento contiene un valor y cada dimensión representa una relación
La representación en memoria se realiza de dos formas : almacenamiento por columnas o por renglones.



               x : array [1..5,1..7] of integer
Para calcular la dirección de memoria de un elemento se usan la siguiente formula:
               A[i,j] = base (A) + [((j - li2) R1 + (i + li1))*w]
               x : array [1..5,1..7] of integer
Para calcular la dirección de memoria de un elemento se usan la siguiente formula:
A[i,j] = base (A) + [((i - li1) R2 + (j + li2))*w]
donde:
i = Indice del renglón a calcular
j = Indice de la columna a calcular
li1 = Límite inferior de renglones
li2 = Límite inferior de columnas
w = Número de bytes tipo componen

Arreglos multidimensionales:

Este también es un tipo de dato estructurado, que está compuesto por n dimensiones. Para hacer referencia a cada componente del arreglo es necesario utilizar n índices, uno para cada dimensión
Para determinar el número de elementos en este tipo de arreglos se usan las siguientes fórmulas:
               RANGO (Ri) = lsi - (lii + 1)
               No. TOTAL DE ELEMENTOS = R1 * R2* R3 * ...* Rn
donde:
i = 1 ... n
n = No. total de dimensiones
Para determinar la dirección de memoria se usa la siguiente formula:

        LOC A[i1,i2,i3,...,in] = base(A) + [(i1-li1)*R3*R4*Rn + (i2-li2)*R3*R2*... (in - lin)*Rn]*w



VECTOR EN JAVA
 
 


 SUMA DE VECTORES
 

 Generar Matriz
 

martes, 17 de agosto de 2010

Ejemplos

If-Then :

{
if (seMueve) {


velocidadActual--;

} else {

System.err.println("La bicicleta ya está detenida");

}

}




For:

for (inicialización; condición; incremento)

{ instrucción(es); };

While:
while (Condicion) {


instrucciones

}

Do While :
do {


instrucciones

} while (condiciones);

Switch :
{

int month = 8;

switch (month) {

case 1: System.out.println("Enero"); break;

case 2: System.out.println("Febrero"); break;

case 3: System.out.println("Marzo"); break;

case 4: System.out.println("Abril"); break;

case 5: System.out.println("Mayo"); break;

case 6: System.out.println("Junio"); break;

case 7: System.out.println("Julio"); break;

case 8: System.out.println("Agosto"); break;

case 9: System.out.println("Septiembre"); break;

case 10: System.out.println("Octubre"); break;

case 11: System.out.println("Noviembre"); break;

case 12: System.out.println("Diciembre"); break;

default: System.out.println("Mes no válido.");break;
}
}
}

lunes, 9 de agosto de 2010

Estructuras Basicas

condicional :

if - then : nos permite examinar una condición y tomar una acción en caso de ser cierta u otra en caso de ser falsa.. Es decir, en ocasiones es posible que deseemos que el programa ejecute una instrucción o instrucciones, pero solo si se cumple determinada circunstancia, y, en caso contrario, o bien no hacer nada, o bien ejecutar otras instrucciones diferentes.
En definitiva, IF comparará valores, y ejecutará o no diferentes instrucciones, en función del resultado de la comparativa.

Interactivos :

For : Las tres partes del ciclo se encuentran separadas por ; (punto y coma)
•La primer parte del ciclo especifica valores previo a su inicio.
•La segunda parte indica la condición de terminación para el ciclo, la cual esta directamente relacionada con los valores iniciales.
•Finalmente, la última parte especifica como serán manipulados los valores iniciales en cada iteración del ciclo.
Cada parte del ciclo debe incluir al menos un elemento, a la cual es posible agregar otros elementos a partir de una , (coma).

While: es un ciclo mientras se cumpla la condicion. Es decir que todas las sentencias que encierra, se ejecutarán mientras la condición sea verdadera. Este ciclo puede o no ejecutarse, depende de los valores que sean evaluados en la condición. Por tanto la condición se evaluará antes de entrar en una nueva iteración.

Do While : El ciclo Do While evalúa la expresión simplemente una vez. Luego evalúa la condición y si ésta es verdadera, vuelve a evaluar la expresión. Este proceso continúa hasta que la condición sea falsa.

Bifuracion:

Switch: es una instrucción de decisión múltiple, donde el compilador prueba o busca el valor contenido en una variable contra una lista de constantes ints o chars, cuando el computador encuentra el valor de igualdad entre variable y constante, entonces ejecuta el grupo de instrucciones asociados a dicha constante, si no encuentra el valor de igualdad entre variable y constante, entonces ejecuta un grupo de instrucciones asociados a un default, aunque este ultimo es opcional.