martes, 17 de mayo de 2011

Menu


ARREGLO BIDIMENCIONAL

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. Para determinar el número total de elementos en un arreglo bidimensional usaremos las siguientes fórmulas:
RANGO DE RENGLONES (R1) = Ls1 - (Li1+1)
  RANGO DE COLUMNAS (R2) = Ls2 - (Li2+1)
  No. TOTAL DE COMPONENTES = R1 * R2
REPRESENTACION EN MEMORIA POR COLUMNAS
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]
REPRESENTACION EN MEMORIA 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) + [((i - li1) R2 + (j + li2))*w] Donde: i = Índice del renglón a calcular
j = Índice de la columna a calcular
li1 = Límite inferior de renglones
li2 = Límite inferior de columnas
w = Número de bytes tipo componente
estos programas son uno de los mas sencillos chequenlos
//Este programa crea un arreglo bidimencional llamado are y solo se le asignan valores a este
 //Que de claro que para moverse en las posiciones de un arreglo bidimencional necesitamos dos for o while  
   import javax.swing.J Option Pane;
    class areglos0{
       public static void main(String args[]){
       //Creacion del Arreglo are
         int are[][]=new int[2][2];
         String a;
         //Llenado del Arreglo are
         for(int x=0;x<=1;x++){
            for(int y=0;y<=1;y++){
               a=J Option Pane.showInputDialog(“Introduce el Numero:”);
               are[x][y]=Integer.parseInt(a);
            }
         }
         System.out.println(“Se Termino De Ejecutar El Programa”);
      }
   }

//Este programa crea un arreglo bidimencional llamado are y solo se le asignan valores a este
//Que de claro que para moverse en las posiciones de un arreglo bidimencional necesitamos dos for o while  
   import javax.swing.J Option Pane;
    class areglos01{
       public static void main(String args[]){
       //Creacion del Arreglo are
         int are[][]=new int[2][2];
         String a;
         //Llenado del Arreglo are
         for(int x=0;x<=1;x++){
            for(int y=0;y<=1;y++){
               a=J Option Pane.showInputDialog(“Introduce el Numero:”);
               are[x][y]=Integer.parseInt(a);
            }
         }

         for(int x=0;x<=1;x++){
            for(int y=0;y<=1;y++){
               System.out.println(“Valor [“+x+”][“+y+”]:”+are[x][y]);
            }
         }
         System.out.println(“Se Termino De Ejecutar El Programa”);
      }
   }

ARREGLO UNIDIMENCIONAL

Un arreglo está formado por un número fijo de elementos contíguos de un mismo tipo. Al tipo se le llama tipo base del arreglo. Y los datos individuales se llaman elementos del arreglo.
Un arreglo se caracteríza por :
1. Almacenar los elementos del arreglo en posiciones de memoria contínua.
2. Tener un único nombre de variable que representa a todos los elementos, y éstos a su vez se diferencian por un índice o subíndice.
3. Acceso directo o aleatorio a los elementos individuales del arreglo.

ARREGLO: Un arreglo (array) es un medio de guardar un conjunto de datos de la mismo tipo. Se accede a cada elemento individual del arreglo mediante un número entero denominado índice. En C# 0 (cero) es el índice del primer elemento y n-1 es el índice del último elemento, siendo n, la dimensión del arreglo.
Para definir un tipo estructurado arreglo, se debe especificar el tipo base y el número de elementos.
SINTAXIS
 El formato para definir un tipo array es :
Tipo de dato [tipo subindice] nombre array;
Tipo de dato: Existe un elemento por cada valor del tipo subíndice describe el tipo de cada elemento del vector; todos los elementos de un vector son del mismo tipo. Tipo subíndice:puede ser de tipo ordinal: boolean o char, un tipo enumerado o un tipo subrango.
DECLARAR Y CREAR UN ARREGLO (VECTOR) UNIDIMENSIONAL
Para declarar un VECTOR se escribe
Tipo de dato [ ] nombre del array;
Para crear una VECTOR de 4 números enteros escribimos
Números = new int [4];
La declaración y la creación del vector se pueden hacer en una misma línea.
int[] numeros =new int[4];


  INICIALIZAR EL ARREGLO
Se pueden inicializar en un bucle for como resultado de alguna operación
for(int i=0; i<4; i++)
 {
  numeros[i]=i*i+4;
 }
Los arreglos se pueden declarar, CREAR E INICIALIZAR EN UNA MISMA LÍNEA, del siguiente modo
int[] numeros={2, −4, 15, −25};
 String[] nombres={”Juan”, “José”, “Miguel”, “Antonio”};


  IMPRIMIR EL ARREGLO
Para imprimir a los elementos del arreglo nombres se escribe
for(int i=0; i<4; i++)
 {
  Console.Write Line?(nombres[i]);
 }
LENGTH No necesitamos recordar el número de elementos del array, su miembro dato Length nos proporciona la dimensión del arreglo. Escribimos de forma equivalente
for(int i=0; i<numeros.Length; i++)
 {
  numeros[i]=i*i+4;
 }
Algunos lenguajes como Java verifican que el índice no sea mayor o igual que la dimensión del array, lo que facilita mucho el trabajo al programador. En este tipo de lenguajes nos mandara alguna clase de excepción o error, cuando se accede a un indice negativo o fuera de la longitud del vector.

martes, 3 de mayo de 2011

FUNCIONES EN JAVA

JAVA TEMA 4: FUNCIONES EN JAVA
En Java una funcion es un modulo de un programa separado del cuerpo principal, que realiza una tarea especifica y que puede regresar un valor a la parte principal del programa u otra funcion o procedimiento que la invoque.
La forma general de una funcion es:
tipodatoregresa Nom_fun(parametros)
{ cuerpo de instrucciones;
intruccion return;
}
El tipo especifica el tipo de valor que la funcion regresara utlizando la instrucción return.
Si no se especifica un tipo se asume de default que el tipo regresado es int.
La lista de parametros formales es una lista de variables separadas por comas (,) que almacenaran los valores que reciba la funcion, estas variables actuan como locales dentro del cuerpo de la funcion.
Aunque no se ocupen parametros los paréntesis son requeridos.
La declaracion de parametros es la especificacion de cada tipo de parametro recibido.
INSTRUCCION RETURN
Dentro del cuerpo de la función deber haber una instrucción return cuando menos, para regresar el valor, esta instrucción permite regresar datos. 


martes, 26 de abril de 2011

ESTRUCTURA SWITCH

La estructura de control switch nos permite ejecutar diferentes bloques de instrucciones en función del resultado de una expresión.
La sintaxis básica es la siguiente:
switch(expresion)
{
    case valor1:
            instrucciones
            break;
    case valor2:
            instrucciones
            break;
    default:
            instrucciones
            break;

}
Si la expresión coincide con el valor1 se ejecutan todas las instrucciones definidas en ese bloque, sino se compara con el valor2 y así sucesivamente. Si el resultado de la expresión no coincide con ningún caso se ejecuta el bloque de instrucciones del caso default.
Cabe destacar que el único valor que puede evaluar la estructura de control switch son números enteros de tipo int y cualquier tipo que pueda convertirse implicitamente a tipo int, es decir, byte, char, short. Además a partir de la versión 5, Java permite evaluar también enumeraciones (las veremos más adelante) y las clases envolventes (wrappers) de los tipos antes mencionados, es decir, Character, Short, Int y Byte (también las veremos más adelante).
Pueden haber tantos cases como sean necesarios siempre y cuando no hayan dos con el mismo valor.
La sentencia break es opcional y se utiliza para finalizar el switch tras la ejecución de un case. Si la sentencia break no estuviera, al salir de un bloque case entraría en el siguiente aunque el valor de ese case no coincidiera con el evaluado en la expresión.
El case default se ejecuta si el resultado de la expresión no coincide con ningún case. Su uso también es opcional.
Vamos a ver un ejemplo muy sencillo:
package mes;
import java.io.*;
public class Main {
    public static void main(String args[]) throws IOException,Exception
    {
        InputStreamReader isr = new InputStreamReader (System.in);
        BufferedReader br = new BufferedReader (isr);
        int mes;
        System.out.println("Ingrese el numero del mes: ");
        mes=Integer.parseInt(br.readLine());
        switch (mes) {
            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 erróneo");break;
        }
    }

}

Taller 3 Ejercicio 26

Taller 3 Ejercicio 16