Está en la página 1de 7

METODOS DE ENTRADA/SALIDA A.

Introduccin Normalmente, cuando se codifica un programa, se hace con la intencin de que ese programa pueda interactuar con los usuarios del mismo, es decir, que el usuario pueda pedirle que realice cosas y pueda suministrarle datos con los que se quiere que haga algo. Una vez introducidos los datos y las rdenes, se espera que el programa manipule de alguna forma esos datos para proporcionarnos una respuesta a lo solicitado. Adems, en muchas ocasiones interesa que el programa guarde los datos que se le han introducido, de forma que si el programa termina los datos no se pierdan y puedan ser recuperados en una sesin posterior. La forma ms normal de hacer esto es mediante la utilizacin de ficheros que se guardarn en un dispositivo de memoria no voltil (normalmente un disco). A todas estas operaciones, que constituyen un flujo de informacin del programa con el exterior, se les conoce como Entrada/Salida (E/S). Existen dos tipos de E/S; la E/S estndar que se realiza con el terminal del usuario y la E/S a travs de fichero, en la que se trabaja con ficheros de disco. Todas las operaciones de E/S en Java vienen proporcionadas por el paquete estndar de la API de Java denominado java.io que incorpora interfaces, clases y excepciones para acceder a todo tipo de ficheros. En este tutorial slo se van a dar algunas pinceladas de la potencia de este paquete. B. Entrada/Salida estndar Aqu slo trataremos la entrada/salida que se comunica con el usuario a travs de la pantalla o de la ventana del terminal. Si creamos una applet no se utilizarn normalmente estas funciones, ya que su resultado se mostrar en la ventana del terminal y no en la ventana de la applet. La ventana de la applet es una ventana grfica y para poder realizar una entrada o salida a travs de ella ser necesario utilizar el AWT. El acceso a la entrada y salida estndar es controlado por tres objetos que se crean automticamente al iniciar la aplicacin: System.in, System.out y System.err a.) System.in Este objeto implementa la entrada estndar (normalmente el teclado). Los mtodos que nos proporciona para controlar la entrada son: read(): Devuelve el carcter que se ha introducido por el teclado leyndolo del buffer de entrada y lo elimina del buffer para que en la siguiente lectura sea ledo el siguiente carcter. Si no se ha introducido ningn carcter por el teclado devuelve el valor 1. skip(n): Ignora los n caracteres siguientes de la entrada. b.) System.out Este objeto implementa la salida estndar. Los mtodos que nos proporciona para controlar la salida son: print(a): Imprime a en la salida, donde a puede ser cualquier tipo bsico Java ya que Java hace su conversin automtica a cadena. println(a): Es idntico a print(a) salvo que con println() se imprime un salto de lnea al final de la impresin de a. flush(a): vacia el buffer de salida escribiendo su contenido c.) System.err Este objeto implementa la salida en caso de error. Normalmente esta salida es la pantalla o la ventana del terminal como con System.out, pero puede ser interesante redirigirlo, por ejemplo hacia un fichero, para diferenciar claramente ambos tipos de salidas.

ESTRUCTURAS SECUENCIALES Y SELECTIVAS

Las estructuras secuenciales se caracterizan porque sus instrucciones o acciones se representan en forma secuencial es decir uno tras de otro, es decir sus acciones siguen una secuencia ordenada, por ejemplo: 1. inicio 2. leer n 3. proceso sumar n=n+1 4. mostrar n 5. fin Para escribir un algoritmo con estructura secuencial, es necesario determinar el mtodo que se va a utilizar. Los ms comunes son: Pseudocdigo, Flujograma (conocida como diagrama de flujo) ENTRADA Y SALIDA DE DATOS Aqu slo trataremos la entrada/salida que se comunica con el usuario a travs de la pantalla o de la ventana del terminal. Si creamos una applet no se utilizarn normalmente estas funciones, ya que su resultado se mostrar en la ventana del terminal y no en la ventana de la applet. La ventana de la applet es una ventana grfica y para poder realizar una entrada o salida a travs de ella ser necesario utilizar el AWT. El acceso a la entrada y salida estndar es controlado por tres objetos que se crean automticamente al iniciar la aplicacin: System.in, System.out y System.err a.) System.in Este objeto implementa la entrada estndar (normalmente el teclado). Los mtodos que nos proporciona para controlar la entrada son: read(): Devuelve el carcter que se ha introducido por el teclado leyndolo del buffer de entrada y lo elimina del buffer para que en la siguiente lectura sea ledo el siguiente carcter. Si no se ha introducido ningn carcter por el teclado devuelve el valor 1. skip(n): Ignora los n caracteres siguientes de la entrada. b.) System.out Este objeto implementa la salida estndar. Los mtodos que nos proporciona para controlar la salida son: print(a): Imprime a en la salida, donde a puede ser cualquier tipo bsico Java ya que Java hace su conversin automtica a cadena. println(a): Es idntico a print(a) salvo que con println() se imprime un salto de lnea al final de la impresin de a. c.) System.err Este objeto implementa la salida en caso de error. Normalmente esta salida es la pantalla o la ventana del terminal como con System.out, pero puede ser interesante redirigirlo, por ejemplo hacia un fichero, para diferenciar claramente ambos tipos de salidas. Las funciones que ofrece este objeto son idnticas a las proporcionadas por System.out.

d.) Ejemplo A continuacin vemos un ejemplo del uso de estas funciones que acepta texto hasta que se pulsa el retorno de carro e informa del nmero de caracteres introducidos. import java.io.*; class Cuenta Caracteres { public static void main(String args[]) throws IO Exception {

int contador=0;

while(System.in.read()!=\n)

contador++;

System.out.println(); // Retorno de carro gratuito

System.out.println(Tecleados +contador+ caracteres.);

} } Eduardo :P ITH

INTERACCION DE APLICACIONES Y LA CLASE

La programacin orientada a objetos proporciona un mejor ordenamiento y claridad del cdigo. La forma de programar consiste en dividir el cdigo en clases de objetos que posteriormente pueden ser reutilizados. Para ms informacin se recomienda leer el artculo de Programacin orientada a objetos, introduccin incluido en esta seccin. Al arrancar la aplicacin, el punto de inicio del cdigo se sita por defecto en el evento Load de la clase Form1, si bien se puede cambiar dentro de las propiedades del proyecto desde el explorador de soluciones. El evento Load es una subrutina que no devuelve ningn valor. En ella se pueden instanciar objetos de otras clases para ser utilizados posteriormente. El siguiente ejemplo muestra como crear una clase propia y la instanciacin de un objeto de dicha clase: VB.NET Public Class Mi Clase Sumar Public resultado As Integer Public Function sumar(By Val? Num Suma 1? As Integer, By Val Num Suma 2 As Integer) As Integer Return Num Suma 1 + Num Suma 2 End Function End Class C# public class Mi Clase Sumar { public int resultado; public int sumar(int Num Suma 1, int Num Suma 2) { return Num Suma 1 + Num Suma 2; } } En el evento load de Form1 se crea un objeto de la clase y se llama al mtodo sumar. VB.NET load de la clase Form1 Me.Text = Mi primera Aplicacin con Windows Forms Dim objetoSuma As New Mi Clase Sumar() objetoSuma.resultado = objetoSuma.sumar (10, 5) resultado = 15 lblResultado.Text = objetoSuma.resultado C# //load de la clase Form1 this.Text = Mi primera Aplicacin con Windows Forms; Mi Clase Sumar objetoSuma = new Windows Application2.Mi Clase Sumar?(); objetoSuma.resultado = objetoSuma.sumar(10,5); //resultado = 15 lblResultado.Text = objetoSuma.resultado.To String?(); Se puede observar como en C# es necesario convertir previamente el resultado. Esto se debe a que el resultado de la suma es de tipo numrico y no se puede asignar directamente al texto de la etiqueta, por lo que se debe convertir previamente a tipo texto. Esto no es necesario en Visual Basic .Net, donde la conversin de tipos no es obligatoria, aunque es recomendable para obtener un cdigo ms ptimo.

Estructura selectiva Secuenciales: cuando una instruccin del programa sigue a otra.

Seleccin o decisin: acciones en las que la ejecucin de alguna depender de que se cumplan una o varias condiciones. Repeticin, Iteracin: cuando un proceso se repite en tanto cierta condicin sea establecida para finalizar ese proceso. Estructura Secuencial. Se caracteriza porque una accin se ejecuta detrs de otra. El flujo del programa coincide con el orden fsico en el que se han ido poniendo las instrucciones. Dentro de este tipo podemos encontrar operaciones de inicio/fin, inicializacin de variables, operaciones de asignacin, clculo, sumarizacin, etc. Este tipo de estructura se basa en las 5 fases de que consta todo algoritmo o programa: Definicin de variables (Declaracin) Inicializacin de variables. Lectura de datos Clculo Salida por: B-Chan SELECTIVA SIMPLE (SI) La especificacin formal de algoritmos tiene realmente utilidad cuando el algoritmo requiere una descripcin ms complicada que una lista sencilla de instrucciones. Este es el caso cuando existen un nmero de posibles alternativas resultantes de la evaluacin de una determinada condicin. Estas estructuras se identifican porque en la fase de solucin del problema existe algn punto en el cual es necesario establecer una pregunta, para decidir si ciertas acciones d eben realizarse o no. Las condiciones se especifican usando expresiones lgicas. La representacin de una estructura selectiva se hace con palabras en pseudocdigo (if - then - else o en espaol si - entonces - sino) y en flujograma con una figura geomtrica en forma de rombo. Las estructuras selectivas o alternativas se clasifican en: a) Simples b) Dobles c) Compuestas d) Mltiples ESTRUCTURAS SELECTIVAS SIMPLES. Se identifican porque estn compuestos nicamente de una condicin. La estructura si - entonces evala la condicin y en tal caso: Si la condicin es verdadera, entonces ejecuta la accin Si (o acciones si son varias). Si la condicin es falsa, entonces no se hace nada. Espaol Ingls Si <condicin> If <condicin>

Entonces then <accin Si> <accin Si> fin_si endif SELECTIVA DOBLE (SI/ DE OTRO MODO) CICLO FOR JAVA Instrucciones para ciclos resuelven el problema de repetir todo el programa, o cierta parte del programa mas de una vez. Este ciclo es uno de los mas usados para repetir una secuencia de instrucciones, sobre todo cuando se conoce la cantidad exacta de veces que se quiere que se ejecute una instruccin simple o compuesta. Antes de continuar recordar que for, asi como las instrucciones if y switch(). Son independientes del modelo de programacin usado, es decir se pueden usar dentro de consola, frame, applet, servlet, jsp. Su formato general es: for (inicializacin; condicin; incremento) { instruccin(es); }; ejemplo: for(x=1;x<=10;x=x+1) {t1.setText(pato) }; En su forma simple la inicializacin es una instruccin de asignacin que carga la variable de control de ciclo con un valor inicial. La condicin es una expresin relacional que evala la variable de control de ciclo contra un valor final o de parada que determina cuando debe acabar el ciclo. El incremento define la manera en que la variable de control de ciclo debe cambiar cada vez que el computador repite un ciclo. Se deben separar esos 3 argumentos con punto y coma (;) Casos Particulares: 1.- El ciclo comienza en uno y se incrementa de uno en uno, este es el caso mas general. 2.- Pero el valor inicial puede se diferente de uno, ejemplo: for (x=5;x<=15;x=x+1){ etc.}; 3.- Incluso el valor inicial puede ser negativo, ejemplo: for (x = 3 ; x<= 8; x=x+1) { etc.}; 4.- Los incrementos tambin pueden ser diferentes al de uno en uno, ejemplo:

for (x=1; x<= 20; x=x+3){ etc. }; 5.- Incluso pueden ser decrementos, solo que en este caso, recordar: 1.-el valor inicial de la variable debe ser mayor que el valor final. 2.-cambiar el sentido de la condicin.

También podría gustarte