Datos. H. Tejeda. Noviembre 2016

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Datos. H. Tejeda. Noviembre 2016"

Transcripción

1 Datos H. Tejeda Noviembre 2016 Índice 1. Declaración y uso de constantes y variables 1 2. Tipos de datos enteros 7 3. Tipo de dato boolean 8 4. Tipos de datos de punto flotante 9 5. Tipo de dato char Clase Scanner para entrada desde el teclado Uso de la clase JOptionPane para entrada desde la GUI Aritmética Conversión de tipos Declaración y uso de constantes y variables Un elemento de datos es constante cuando su valor no puede ser cambiado durante la ejecución de un progroma. Por ejemplo, cuando se incluye la siguiente sentencia en una clase Java, el número 1234 es una constante: 1

2 System.out.println(1234); Cada vez que la aplicación sea ejecutada el valor 1234 es mostrado. Los programadores se refieren al 1234 como constante literal porque su valor es tomado literalmente en cada uso. El número 1234 es también llamado una constante numérica como opuesto a una constante carácter o cadena. Además, es una constante sin nombre como opuesta a una con nombre, porque no hay un identificador asociado con esta. Se puede configurar un elemento de datos para ser variable. Una variable es una localidad de memoria que puede guardar un valor. Una variable puede tener sólo un valor a la vez, pero el valor que tiene puede cambiar. Ya sea que el elemento de datos sea variable o constante, en Java este siempre tiene un tipo de dato. El tipo de dato de un elemento indica el tipo de dato que puede ser guardado, cuanta memoria ocupa, y que tipos de operaciones pueden hacerse con el dato. Java proporciona ocho tipos primitivos de datos. Un tipo primitivo es el tipo de dato más simple. Enseguida se describen los ocho tipos: Palabra reservada byte short int long float double char boolean Descripción entero tamaño byte entero corto entero (defecto) entero largo punto flotante, precisión simple punto flotante, precisión doble (defecto) un sólo carácter un valor boolean (true o false) Los tipos primitivos también sirven como ladrillos para tipos de datos más complejos, llamados tipos referencia, los cuales guardan direcciones de memoria. Las clases que serán creadas son ejemplos de tipos de referencias, como la clase Scanner que es revisada más adelante Declaración de variables Una declaración de variable es una sentencia que reserva una localidad nombrada de memoria e tiene lo siguiente: Un tipo de dato que identifica el tipo de dato que la variable guardará. Una identificador que es el nombre de la variable. 2

3 Un operador de asignación opcional y un valor asignado, si se quiere que la variable contenga un valor inicial. Un punto y coma como terminador. Los nombres de variables observan las mismas reglas para nombrar identificadores legales de clase, esto es, inician con una letra y no pueden ser una palabra reservada. Se debe declarar una variable antes de poder usarla. Se puede declarar una variable en cualquier punto antes de usarla, pero es una práctica declarar primero las variables en un método y luego poner las sentencias ejecutables. Java es un lenguaje fuertemente tipado, o uno en el cual cada variable tiene un tipo de dato bien definido que limita las operaciones que se pueden realizar con este: esto también ímplica que todas las variables deben ser declaradas antes de que puedan usarse. Por convención los nombres de la variables inician con letras minúsculas para distinguirlas de los nombres de las clases. Se emplea también el estilo caja camello superior donde se pone se capitalizan las siguientes palabras del identificador. El siguiente ejemplo declara una tipo de variable int llamado miedad y le asigna un valor inicial de 18: int miedad = 18; Esta declaración es una sentencia completa y ejecutable, por lo que termina con punto y coma. El símbolo de igual (=) es el operador de asignación. Cualquier valor a la derecha del signo de igual es asignado a la variable a la izquierda del signo igual. Una asignación hecha cuando se declara una variable es una inicialización; darle el valor después es sólo una asignación. Para el siguiente código, la primera sentencia es una inicialización, y la segunda es una asignación: int miedad = 18; miedad = 21; Se declara una variable una sola vez, pero se le podrían asignar valores nuevos las veces que se requiera. Observar que una expresión con una literal a la izquierda del operador de asignación, como en 21 = miedad, es ilegal. El operador de asignación tiene una asociatividad derecha-izquierda. La asociatividad indica el orden en el cual los operadores son usados con operadores. La asociatividad puede ser derecha-izquierda o izquierda-derecha. Un identificador que puede aparecer en el lado izquierdo de un operador de asignación en ocasiones es referido como un lvalue. Una constante númerica como 18 no es un lvalue; sólo es un rvalue, o un dato que puede aparecer sólo en el lado derecho de un operador de asignación. Una variable puede ser usada como un lvalue o un rvalue. 3

4 Cuando se declara una variable dentro de un método pero no se le asigna valor, es una variable no inicializada, Por ejemplo, la siguiente declaración de variable indica un tipo int con el nombre miedad, pero no hay valor asignado al momento de su creación: int miedad; Una variable no inicializada contiene un valor desconocido llamado un valor basura. Java protege de usar inadvertidamente el valor basura que está guardado en una variable no inicializada, ya que se recibe, al compilar, un error indicando que la variable podría no estar inicializada. Nota. Las variables declaradas en una clase, fuera de cualquier método, son inicializadas automáticamente. Se pueden declarar variables múltiples del mismo tipo en sentencias separadas. También se puede declarar dos, o más, variables del mismo tipo en una sola sentencia separando la declaraciones de variable con una coma, como se muestra enseguida: int miedad = 18, tuedad = 15; Por convención, los programadores declaran la mayoría de las variables en variables separadas. Se deberían declarar variables múltiples en la misma sentencia sólo si están relacionadas estrechamente. En el caso de que se quieran declarar variables de tipos diferentes, se debe usar una sentencia separada para cada tipo Constantes con nombre Una variable es una localidad nombrada de memoria para la cual el contenido puede cambiar. Si un valor de una localidad no debería cambiar en la ejecución de un programa, esta puede ser creada para ser una constante con nombre. También es conocida com una constante simbólica. Una constante con nombre es parecida a una variable en cuanto a que tiene un tipo de dato, un nombre y un valor. Una constante con nombre difiere de una variable en: En la sentencia de declaración, el tipo de dato de una constante con nombre es precedida por la palabra reservada final. A una constante con nombre sólo se le puede asignar un valor una sola vez, y luego este nunca puede ser cambiado. Se inicializa la constante con nombre usualmente cuando se declara, si no se hace, se le conoce como final blanco, y se puede asignar un valor después, pero antes de ser usada. 4

5 Por convención los identificadores de las constantes con nombres usan sólo mayúsculas, y los guiones bajos se usan para separar palabras, como en el siguiente ejemplo. final int CANT_DE_SALONES = 20; final double PI = ; final double IMPUESTO = 0.15; final string UNIVERSIDAD = "UMSNH"; Las razones para usar una constante con nombre en vez de una literal son: Usar constantes con nombre hace la lectura y la comprensión de los programas más fácil. Es más fácil cambiar sólo el valor de una constante con nombre que un conjunto de literales que aparezcan en un programa. El uso de constantes con nombre reduce la cantidad de errores tipográficos. Cuando se usa una constante con nombre en una expresión, esta destaca de una variable Alcance de variables y constantes El alcance de un elemento de datos es el área en el cual es visible a un programa y en el cual se puede referir a este usando un identificador simple. Una variable o constante está en el alcance desde el lugar donde está declarado hasta el final del bloque de código en la cual la declaración se encuentra. Un bloque de código es el código contenido entre un conjunto de llaves. Así, si se declara una variable o constante dentro de un método, este puede ser usado desde su declaración hasta el final del método, no importando que el método contengo conjuntos múltiples de llaves. Entonces, un elemento de datos es usable sólo hasta el final del bloque que tiene la declaración Concatenar cadenas a variables y constantes Se puede mostrar una variable o una cadena en una sentencia print() o println() sola o en combinación con una cadena. Por ejemplo, la clase MostrarNumeros, código 1, declara un entero diadecorte, inicializado a 5 en la línea 3, luego este es enviado sólo al método print() en la línea 5; en las líneas 7-8 es combinado, o concatenado, a un String. En Java, cuando una variable numérica es concantenada a un String con el símbolo más, la expresión completa es convertida a una String 5

6 1 public c l a s s MostrarNumeros { 2 public static void main ( S t r i n g [ ] args ) { 3 int diadecorte = 5 ; 4 System. out. p r i n t ( Las f a c t u r a s son mandadas e l día ) ; 5 System. out. p r i n t ( diadecorte ) ; 6 System. out. p r i n t l n ( d e l mes ) ; 7 System. out. p r i n t l n ( S i g u i e n t e f a c t u r a : diciembre + 8 diadecorte ) ; 9 } 10 } Código 1: clase MostrarNumeros La salida del código anterior debe mostrar algo como lo siguiente: Las facturas son mandadas el día 5 del mes Siguiente factura: diciembre 5 Cuando se concatena un String con números, la expresión entera es un String. Por lo tanto la expresión "A" da el String "A34". Si la intención es crear el String A7, entonces se deben agregar paréntesis para escribir "A" + (3 + 4). La clase DialogoNumeros, código 2, usa el método showmessagedialog() dos veces para mostrar un entero declarado como diascredito e inicializada a 30. En cada sentencia de las líneas 5 y 6, la variable numérica es concatenada a un String, haciendo que el segundo argumento un String. En la línea 5, el String concatenado es un String vacío, o String null, creado con un conjunto de comillas dobles sin nada dentro de estas. El primer cuadro de diálogo sólo muestra el valor 30, y el segundo muestra la concatenación con cadenas no nulas. 1 import javax. swing. JOptionPane ; 2 public c l a s s DialogoNumeros { 3 public static void main ( S t r i n g [ ] args ) { 4 int d i a s C r e d i t o = 3 0 ; 5 JOptionPane. showmessagedialog ( null, + d i a s C r e d i t o ) ; 6 JOptionPane. showmessagedialog 7 ( null, Cada f a c t u r a es por + d i a s C r e d i t o + d i a s ) ; 8 } 9 } Código 2: clase DialogoNumeros 1.5. Error al intercambiar valores Cada constante sólo puede tener un valor en la duración del programa; cada variable puede tener sólo un valor a la vez. En el siguiente extracto de código, se tiene en cuenta lo anterior, 6

7 para intercambiar los valores que tienen las variables x e y, usando como variable auxiliar a z. int x = 2, y = 10, z; z = x; x = y; y = z; 2. Tipos de datos enteros Se pueden usar variables de tipo byte, short, int, y long para guardar enteros en Java; un entero puede representar un subconjunto finito de los números enteros. El tipo de dato int es el tipo de entero más usado. Una variable de tipo int puede contener cualquier valor entero desde -2,147,483,648 hasta +2,147,483,647. Cuando se asigna un valor a una variable int, no se ponen comas ni puntos, se ponen sólo dígitos y un signo más o ménos opcional para indicar o entero positivo y negativo. Nota. Los valores enteros legales están de 2 31 hasta Estos son los valores más grandes y mas bajos que se pueden guardar en cuatro bytes de memoria,el cual es el tamaño de una variable int. Los tipos byte, short, y long son variaciones del tipo entero. Los tipos byte y short ocupan menos memoria y puede contener sólo valores pequeños; el tipo long ocupa más memoria y puede manejar valores más grandes. La siguiente tabla muestra el límite superior e inferior de estos tipos. Tipo Valor Valor Tamaño Mínimo Máximo en bytes byte short -32,768 32,767 2 int 2,147,483,648 2,147,483,647 4 long 9,223,372,036,854,775,808 9,223,372,036,854,775,807 8 Se debe escoger apropiadamente los tipos para las variables que serán usadas en una aplicación. Si se intenta asignar un valor que más grande para el tipo de dato de la variable, el compilador emite un mensaje de error, por lo que la aplicación no se ejecuta. Si se escoge un tipo de dato que es mayor que el que se ocupa, se desperdicia memoria. Por ejemplo, una aplicación personal podría usar una variable byte para la cantidad de dependientes, un short para las horas trabajadas en un mes, 127 no es suficiente, y un int para un salario anual. 7

8 Si una aplicación usa un entero constante literal, como 987, el número es un int por defecto. Si se necesita usar una constante mayor que 2,147,483,647, o menor que -2,147,483,648, se debe seguir el número con la letra L, o l, para indicar tipo long. Se prefiere L para evitar confusión con el dígito 1. Por ejemplo, la siguiente sentencia guarda un número que es mayor que el límite máximo para el tipo int. long mosquitosenbosquesdelnorte = L; No se requiere algún caracter para guardar una constante numérica en un int, byte, o short. 3. Tipo de dato boolean La lógica de Boole o booleana está basada en comparaciones falso-verdadero. Una variable booleana puede contener sólo uno de dos valores, true o false. Las siguientes sentencias declaran y asignan valores apropiados a variables booleanas: boolean esdíadepago = false; boolean estásquebrado = true; También se pueden asignar valores obtenidos de comparaciones a variables booleanas. Se soportan seis operadores relacionales en Java para realizar comparaciones. Un operador relacional compara dos elementos; es también llamado a veces operador de comparación. Una expresión que contenga un operador relacional da un valor booleano. En la siguiente tabla se describen los operadores relacionales. Operador Descripción Ejemplo Ejemplo verdadero falso < menor que 1 < 2 2 < 1 > mayor que 10 > 3 3 > 10 == igual a 5 == 5 5 == 6 <= menor que o igual a 7 <= 7 9 <= 8 >= mayor que o igual a 7 >= 4 1 >= 3! = diferente a 5!=6 5 == 5 Cuando se usa alguno de los operadores relacionales con dos símbolos, como ==, <=, >=, o!=, no se puede poner ningún espacio blanco entre los dos símbolos. Tampoco se puede invertir el orden de los símbolos, así =<, => y =! no son operadores válidos. Sentencias válidas de declaración podrían incluir expresiones con operadores relacionales: 8

9 boolean escincomenoroigual = (5 <= 3); // valor guardado será false Las expresiones booleanas tienen más sentido cuando variables, a las cuales se le han asignado valores, son usadas en las comparaciones, como en los siguientes ejemplos. boolean eshorasextras = (horas > 40); boolean eslimitesuperiorimpuesto = (ingreso > ); boolean esprimerpuntuaciónmayor = (puntuación1 > puntuación2); 4. Tipos de datos de punto flotante Un número punto flotante contiene posiciones decimales. Java soporta dos tipos de dato punto flotante: float y double. Un tipo de dato float puede guardar valores punto flotante hasta con una precisión de 6 o 7 dígitos significativos. Un tipo de dato double requiere más memoria que un float y puede contener de 14 a 15 dígitos significativos de precisión. El término dígitos significativos se refiere a la precisión matemática de un valor. Por ejemplo, un float dado con el valor de es mostrado como porque el valor es preciso solo hasta la sexta posición decimal. El valor máximo para un double es 3.4x Nota. Un float dado con el valor es mostrado como e+008, lo cual es La e en el valor mostrado es para el exponente; el +008 indica que el punto decimal está ocho posiciones a la derecha de donde fue muestrado. En caso de ser negativo indica que el punto decimal está a la izquierda, indicando un número muy pequeño. Este formato es llamado notación científica. Nota. Un programador podría escoger guardar un valor como float en vez de double para ahorrar memoria. Sin embargo, si niveles altos de precisión son necesarios, se debería escoger double. Una constante punto flotante, como 15.67, es un double por defecto. Para indicar que una constante numérica punto flotante es un float, se puede poner la letra F, o f, después del numero, como en: float monedero = 23.50F; Se puede también poner D o d después de una constante de punto flotante para indicar que es un double, pero como es el tipo por defecto en puntos flotantes, si no se pone así será guardada. 9

10 5. Tipo de dato char Se usa el tipo de dato char para guardar un solo carácter cualquiera. Se encierran los valores de caracteres constantes entre comillas simples. Las siguientes son declaraciones de caracteres: char inicialpaterno = L ; char calificacióncomputacióni = A ; char unaestrella = * ; Un carácter puede ser cualquier letra, signo de puntuación, o dígito. Un carácter que es un dígito es guardado en la memoria de forma diferente a un valor numérico que represente el mismo dígito. Por ejemplo, las siguientes dos sentencias son legales: char unvalorchar = 7 ; int unvalorint = 7; Si se muestran cada uno de estos valores usando el método println(), se verá un 7. Pero, sólo el valor numérico, unvalorint, puede ser usado para representar el valor 9 en sentencias aritméticas. Una constante numérica puede ser guardada en una variable carácter y un carácter que represente un número puede ser guardado en una variable numérica. Las siguientes dos sentencias son legales, pero al menos que se entienda su significado, podrían dar resultados no deseados: char unvalorchar = 7; int unvalorint = 7 ; Si estas variables son mostradas con println(), entonces el resultado de la salida será un blanco para unvalorchar y el número 55 para unvalorint. El sistema operativo Linux guarda cada carácter como un número o código; a cada carácter se le asigna un código numérico único usando Unicode. Por ejemplo, el carácter A es guardado usando el valor 65, y B con el valor 66. Una variable de tipo char puede guardar sólo un carácter. Para guardar un cadena de caracteres, tales como el nombre de una persona, se debe usar una estructura de datos llamada String. En Java, String es una clase incorporada que da los medios para guardar y manipular cadenas de caracteres. Las constantes String son escritas entre comillas dobles. Por ejemplo, la expresión que guarda el nombre Miguel como una cada en una variable llamada primernombre es: String primernombre = "Miguel"; 10

11 También se puede guardar caracteres no imprimibles, como retroceso o tabulador, en una variable char. Para estos carácteres se tiene que usar una secuencia de escape, la cual inicia con una diagonal invertida seguida por un carácter, así la pareja representa un sólo carácter. El siguiente código guarda un carácter de nueva línea y de tabulador: char uncarnuevalínea = \n ; char uncartabulador = \t ; En la siguiente tabla se describe algunas secuencias de escape comunes que se pueden usar en la salida de la ventana de comandos en Java. Secuencia de escape Descripción \b Retroceso; mueve el cursor un espacio a la izquierda \t Tabulador; mueve el cursor a la siguiente parada de tabulación \n Nueva línea; mueve el cursor al inicio de la siguiente línea \r Retorno de carro; mueve el cursor al inicio de la línea actual \" Comillas dobles; muestra el símbolo de comillas dobles \ Comilla simple, muestra el símbolo de comilla simple \\ Diagonal invertida; muestra el carácter diagonal invertida Nota. Cuando se muestran valores con cuadros de diálogo JOptionPane en vez de la ventana de comandos, la secuencias de escape nueva ĺınea, comillas dobles y diagonal invertida funcionan como se espera, pero retroceso, tabulador, y retorno de carro no lo hacen. Cuando se quieren generar salida en líneas múltiples en la ventana de comandos, se puede hacer de dos formas. Se puede usar la secuencia de escape nueva línea, o se puede usar el método println() varias veces. Las siguientes dos clases producen el mismo resultado. public class HolaMundoNuevaLinea { public static void main(string[] args) { System.out.println("Hola\nmundo"); } } public class HolaMundoDosPrintln { public static void main(string[] args) { System.out.println("Hola"); System.out.println("mundo"); } } 11

12 De las dos clases anteriores, la clase HolaMundoNuevaLinea es más eficiente, desde el punto de vista de tecleado de código, ya que el método System.out.println() aparece una sola vez, y desde el punto de vista del compilador también porque el método es llamado una sola vez. pero quizás la clase HolaMundoDosPrintln es más fácil de leer y entender. Nota. El método println() usar el carácter terminador de ĺınea de la plataforma local, el cual podría ser o no el caracter nueva ĺınea. 6. Clase Scanner para entrada desde el teclado Se pueden asignar valores a las variables al ser declaradas, pero los programas son más útiles cuando el usuario puede dar valores diferentes a las variables cada vez que el programa se ejecuta. Para crear programas interactivos que acepten la entrada de un usuario, se puede usar System.in, la cual se refiere al dispositivo de entrada estándar (el teclado). El objeto System.in no es tan flexible como los métodos println() o print(), los cuales pueden mostrar diferentes tipos de datos (double, int, o String). System.in está diseñado sólo para leer bytes, pero usando conjuntamente la clase Scanner se hace más flexible. Para crear un objeto Scanner y conectarlo con el objeto System.in, se escribe una sentencia como la siguiente: Scanner dispositivoentrada = new Scanner(System.in); En esta sentencia se declara un objeto de tipo Scanner con el nombre dispositivoentrada y se le asigna el objeto creado Scanner. El objeto Scanner está conectado al dispositivo de entrada por defecto.la palabra clave new se requiere siempre que se crean objetos a diferencia de cuando se usan tipos primitivos. La clase Scanner contiene métodos que recuperan valores de un dispositivo de entrada. Cada valor recuperado es un token, el cual es un conjunto de caracteres que está separado del siguiente conjunto por un blanco. Frecuentemente esto significa que el dato es aceptado cuando el usuario presiona la tecla Intro, pero podría significar también que el token sea aceptado después del espacio o el tabulador. La tabla siguiente resume algunos de los métodos más útiles que leen diferentes tipos de datos desde el dispositivo de entrada por default. 12

13 Metodo next() nextboolean() nextbyte() nextdouble() nextfloat() nextint() nextline() nextlong() nextshort() Descripción Recupera el siguiente token completo como un String. Recupera la entrada como un boolean. Recupera la entrada como un byte. Recupera la entrada como un double. Recupera la entrada como un float. Recupera la entrada como un int. Recupera la siguiente línea de datos y la regresa como un String. Recupera la entrada como un long. Recupera la entrada como un short. La clase Scanner no tiene un método nextchar(). Para recuperar el primer caracter desde el teclado, usar nextline().charat(0). El código 3 de la clase ObtenerInfoUsuario usa dos métodos de la clase Scanner. El programa lee una cadena y un entero desde el teclado y los muestra. La clase Scanner está involucrada en: Línea 1 La sentencia importa la clase Scanner del paquete java.util y es requerida para poder usar la clase. Línea 6 Declara y crea un objeto Scanner. Línea 8 Usa el método nextline() para recuperar una línea de texto desde el teclado y lo guarda en la variable nom. Línea 10 Usa el método nextint() para recuperar un entero desde el teclado y lo guarda en la variable edad. 1 import java. u t i l. Scanner ; 2 public class ObtenerInfoUsuario { 3 public static void main ( S t r i n g [ ] args ) { 4 S t r i n g nom ; 5 int edad ; 6 Scanner dispentr = new Scanner ( System. in ) ; 7 System. out. p r i n t ( I n g r e s a tu nombre : ) ; 8 nom = dispentr. nextline ( ) ; 9 System. out. p r i n t ( I n g r e s a tu edad : ) ; 10 edad = dispentr. nextint ( ) ; 11 System. out. p r i n t l n ( Tu nombre es + nom + 12 y t i e n e s + edad + años. ) ; 13 } 14 } Código 3: clase ObtenerInfoUsuario 13

14 Si se usa algún método de la clase Scanner y el siguiente token no puede ser convertido, se recibe un mensaje de error. Las cadenas literales contenidas en las sentencias print() que aparecen antes de cada sentencia de entrada son ejemplos de prompts (mensajes). Un prompt es un mensaje mostrado para el usuario que pide y describe la entrada. No son necesarios pero hacen la aplicación amigable. Se puede escribir un solo prompt que pida múltiples valores de entrada por ejemplo, Por favor ingresa tu edad, peso, código postal. El usuario debera entonces ingresar tres valores separados con espacios, tabuladores o presionando la tecla Intro. Nota. Pidiendo al usuario que ingrese valores múltiples hace que se cometan errores. Es una mejor práctica separar cada prompt por cada valor de entrada pedido nextline() después de otros métodos de Scanner Se puede presentar un problema cuando se usa alguno de los métodos de recuperación de tipo numérico de Scanner antes del método nextline(). Cuando se ingresan caracteres usando el teclado, estos son guardados temporalmente en una localidad de memoria llamada el búfer del teclado, también se le conoce como búfer adelantado. Todas las teclas presionadas son guardadas en el búfer, incluyendo la tecla Intro. La forma como los métodos de recuperación de la clase Scanner difieren entre ellos son: Los métodos, como next(), nextint(), y nextdouble() recuperan el siguiente token en el búfer hasta antes del siguiente blanco, el cual puede ser un espacio, tabulador, o Intro. El método nextline() lee todos los datos incluyendo el carácter de la tecla Intro. Por lo anterior, cuando se pide al usuario un entero, y este ingresa 28 e Intro. La llamada del método nextint() recupera el 28 y deja el Intro en el búfer del teclado. Si enseguida se pide una cadena y se llama al método nextline() se recupera el Intro que estaba en el búfer, y entonces el usuario ya no puede ingresar nada. Para arreglar la situación descrita, después de cada llamada a next(), nextint(), o next- Double() se puede agregar una llamada al método nextline() que recupere el Intro que se quedó en el búfer del teclado. 14

15 7. Uso de la clase JOptionPane para entrada desde la GUI Se puede aceptar entrada en un cuadro de diálogo GUI (Graphical User Interface) interfaz gráfica de usuario) usando la clase JOptionPane. Los dos cuadros de diálogo que pueden ser usados para aceptar la entrada del usuario son: InputDialog pide al usuario un texto de entrada. ConfirmDialog pide al usuario responder una pregunta usando botones (Si, No, Cancelar) para responder Cuadros de diálogo de entrada Un cuadro de diálogo de entrada hace una pregunta y proporciona un campo de texto para que el usuario pueda dar su respuesta. Se crean los cuadros de diálogo de entrada usando el método showinputdialog(). Hay seis versiones disponibles de este método, pero la versión más simple usa un sólo argumento que es el mensaje que se quiere mostrar dentro del cuadro de diálogo. Por ejemplo, el código 4 de la clase DialogoHolaNombre es una aplicación que crea un cuadro de diálogo de entrada con un mensaje para pedir el nombre. Después de que el usuario ingresa el nombre y pulsa el botón Aceptar o la tecla Intro, se concatena un saludo con el nombre y se muestra en cuadro de diálogo. 1 import javax. swing. JOptionPane ; 2 public c l a s s DialogoHolaNombre { 3 public static void main ( S t r i n g [ ] args ) { 4 S t r i n g r e s u l t a d o ; 5 r e s u l t a d o = JOptionPane. showinputdialog ( null, Cómo te llamas? ) ; 6 JOptionPane. showmessagedialog ( null, Hola, + r e s u l t a d o +! ) ; 7 } 8 } Código 4: clase DialogoHolaNombre Una versión del método showinputdialog() permite controlar la apariencia del cuadro de diálogo de entrada. Esta versión es la que requiere cuatro argumentos, y son para lo siguiente: El componente padre, el cual es el componente pantalla, como una ventana, en frente del cual aparecerá el cuadro de diálogo. Si este argumento es null, el cuadro de diálogo estará centrado en la pantalla. 15

16 El mensaje que se muestra al usuario usando un String pero puede ser cualquier tipo de objeto. El título que será mostrado en la barra de título del cuadro de diálogo de entrada. Un campo de clase describiendo el tipo de cuadro de diálogo; pudiendo ser alguno de los siguientes: ERROR MESSAGE, INFORMATION MESSAGE, PLAIN MESSAGE, QUESTION MESSAGE, y WARNING MESSAGE, El código 5 muestra el uso del cuadro de diálogo con cuatro argumentos. 1 JOptionPane. showinputdialog ( null, 2 Qué edad t i e n e s?, 3 Información p e r s o n a l, 4 JOptionPane.QUESTION MESSAGE) ; Código 5: cuadro de diálogo con 4 argumentos Los cuadros de diálogo de entrada regresan un objeto String. Si se quiere usar el valor que el usuario ingreso como un número, entonces el String deberá ser convertido. Para convertir un String a un tipo int o double, se deben usar métodos de las clases Integer y Double. Estas dos últimas clases son llamadas type-wrapper (tipo envoltura). Para obtener un valor double se usa el método Double.parseDouble(String), y para obtener un int el método Integer.parseInt(String) Cuadros de diálogo de confirmación Si se quiere que la entrada del usuario no sea con el teclado, se pueden presentar botones para que el usuario pulse sobre alguno de estos para confirmar una opción. Un cuadro de diálogo de confirmación presenta los botones Si, No, y Cancelar, el cual puede ser creado usando algunas de las cuatro versiones del método showconfirmdialog() de la clase JoptionPane. Este método devuelve un entero siendo alguno de los siguientes tres valores posibles: JOptionPane.YES OPTION, JOptionPane.NO OPTION, o JOptionPane.CANCEL OPTION. El código 6 de la clase DialogoAerolinea muestra una aplicación que pide al usuario contestar una pregunta. La sentencia que inicia en la línea 6 y termina en la línea 7 muestra el cuadro de diálogo. La respuesta del usuario se guarda en la variable entera llamada seleccion. 16

17 1 import javax. swing. JOptionPane ; 2 public class D i a l o g o A e r o l i n e a { 3 public static void main ( S t r i n g [ ] args ) { 4 int s e l e c c i o n ; 5 boolean e s S i ; 6 s e l e c c i o n = JOptionPane. showconfirmdialog ( null, 7 Desea ascender a primera c l a s e? ) ; 8 e s S i = ( s e l e c c i o n == JOptionPane.YES\ OPTION ) ; 9 JOptionPane. showmessagedialog ( null, 10 Usted r e spondió + e s S i ) ; 11 } 12 } Código 6: cuadro de diálogo con 4 argumentos 8. Aritmética La tabla siguiente describe los cinco operadores aritméticos estándar que se usan para realizar cálculos con valores. Un valor usado en cada lado de un operador es un operando. Los operadores mostrados son operadores binarios. Operador Descripción Ejemplo + Suma , el resultado es 20 - Resta 17 3, el resultado es 14 * Producto 17 3, el resultado es 51 / División 17.0/3, el resultado es /3, el resultado es 5 % Residuo 17 %3, el resultado es 2 Las operaciones son hechas siempre por Java con operandos del mismo tipo y el resultado es del mismo tipo de los operandos. Por ejemplo, 17/3 es 5 porque se realiza una división entera (sin ninguna parte fraccional), y 17.0/3 antes de que sea realizada, Java ajusta la precisión a la del operando de mayor precisión, de esta forma se hace 17.0/3.0 y devuelve Asociatividad y precedencia La asociatividad de los operadores aritméticos con la misma precedencia es de izquierda a derecha. En la sentencia respuesta = x + y + z; la x e y son sumados primero, obteniendo un resultado temporal, que después es agregado a z, y esta suma es la que se asigna a respuesta. La precedencia del operador se refiere al orden en el cual partes de la expresión matemática son evaluadas. La multiplicación, la división, y el residuo tienen la misma precedencia, y su 17

18 precedencia es mayor que la suma y la resta. La suma y la resta tienen la misma precedencia. La precedencia se puede modificar usando paréntesis, es decir, tienen el mismo uso que en las matemáticas. 2+3*4 (2+3)*4 2*(3+(4*5)) 25/8* Imprecisión de los números flotantes Los valores enteros en Java son exactos, pero los números de punto flotante frecuentemente son sólo aproximaciones ya que no pueden ser representados de forma precisa en formato binario en los sistemas de cómputo. Estas imprecisiones llevan a varios problemas: Cuando se genera salida de punto flotante, no podría ser lo que se esperaría ver. Cuando se hacen comparaciones con números de punto flotante, no podrían ser lo que se esperaría obtener. Por ejemplo, el código 7 de la clase DemoImprecision muestra un respuesta cuando es calculado El resultado matemático debe ser 0.20, pero la salida es Si se quieren eliminar las imprecisiones se pueden usar algunas de las varias técnicas para redondear valores. 1 public c l a s s DemoImprecision { 2 3 public static void main ( S t r i n g [ ] args ) { 4 double r e s p u e s t a = ; 5 boolean e s I g u a l = r e s p u e s t a == ; 6 System. out. p r i n t l n ( r e s p u e s t a es + r e s p u e s t a ) ; 7 System. out. p r i n t l n ( e s I g u a l es + e s I g u a l ) ; 8 } 9 } Código 7: Programa DemoImprecision 9. Conversión de tipos Cuando se realiza aritmética con variables y constantes del mismo tipo, el resultado de la operación retiene el mismo tipo. Frecuentemente se quiere realizar operaciones matemáticas con operandos de tipos diferentes. El proceso de convertir de un tipo de datos a otro es la 18

19 conversión de tipo. Java realiza algunas conversiones automáticamente o implícitamente, pero otras conversiones deben ser pedidas explícitamente por el programador Conversión automática de tipo Al realizar operaciones aritméticas con operando de tipos diferentes, Java escoge un tipo unificado para el resultado. El tipo unificado es el tipo para el cual todos los operandos en una expresión son convertidos para que estos sean compatibles con el resto. Java realiza una conversión implícita, es decir, Java convierte automáticamentee operandos diferentes al tipo unificado. Las conversiones implícitas son también llamadas promociones. En la siguiente tabla se muestra el orden o rango para establecer tipos unificados entre valores. Los tipos short y byte son convertidos automáticamente a int cuando son usados en expresiones. double Más alto float ^ long int Más bajo Cuando dos tipos diferentes son usados en una expresión, el tipo unificado es aquel que esté más alto en la tabla, es decir, cuando un operando que es un tipo menor en la lista es combinado con un tipo que es mayor, el operando tipo menor es convertido al mayor. Por ejemplo, la suma de un double y un int da un double, y la resta de un long de un float da un float. Nota. Los valores booleanos no pueden ser convertidos a otro tipo. El resultado de la multiplicación, en el siguiente código, es un double porque un double y un int son multiplicados, el int es promovido al tipo unificador de rango más alto (double). Por lo que la asignación del resultado a pagobruto es legal. int horastrabajadas = 36; double pagohora = ; double pagobruto = horastrabajadas * pagohora; El siguiente extracto de código no compilará porque horastrabajadas por pagohora es un double, y Java no permite la pérdida de precisión que ocurre si se intenta guardar el resultado double calculado en un int. int horastrabajadas = 36; double pagohora = ; int pagobruto = horastrabajadas * pagohora; 19

20 Los tipos de dato char, short, y byte son promovidos a int cuando se usan en sentencias con tipos diferentes, por lo que un cálculo que incluya cualquier combinación de los tipos anteriores dará un resultado int por defecto Conversiones explícitas Se puede anular a propósito el tipo unificado impuesto por Java haciendo una conversión de tipo. La conversión de tipo forza un valor de un tipo de dato para ser usado como un valor de otro tipo. Para realizar lo anterior se usa el operador de conversión, el cual es creado poniendo el tipo del resultado deseado entre paréntesis. Usando un operador de conversión es una operación explícitia. El operador de conversión es seguido por la constante, variable o expresión a ser convertida. En el siguiente código un conversión de tipo es hecha: double saldobancario = ; float presupuestosemanal = (float) (saldobancario / 4); Sin la conversión, la sentencia que asigna el resultado a presupuestosemanal no compilaría. Nota. El operador de conversión es también llamado completamente operador de conversión unario. Este operador sólo usa un operando, que es el que sigue al operador de conversión. En el siguiente código ocurre una conversión de float a int: float midinero = f; int pesos = (int) midinero; Es fácil perder datos cuando se realiza una conversión. Por ejemplo, el valor byte más grande es 127 y el valor int mas grande es 2,147,483,647 así que las siguientes sentencias da resultados distorsionados; int unenterocorrecto = 200; byte unmalbyte = (byte)unenterocorrecto; Un tipo byte está formado por ocho valores uno ó cero, o dígitos binarios. El primer dígito binario, o bit, guarda un 0 o un 1 para indicar positivo o negativo respectivamente. Los siete bits restantes guardan el valor actual. Cuando el valor entero 200 es guardado en la variable byte, su valor más gran consume el octavo bit, poniendo un 1, y forzando a la variable unmalbyte para que guarde el valor -72, el cual es inexacto y engañoso. No es necesario realizar una operación de conversión cuando se asigna un valor a un tipo unificador mayor. En la siguiente sentencia Java automáticamente promueve la constante entera 123 a un double para que pueda ser guardada en la variable pagohora: 20

21 double pagohora = 123; Sin embargo, por claridad, para una asignación como la anterior, se podría preferir escribir lo siguiente: double pagohora = 123.0; 21

Principios de Computadoras II

Principios de Computadoras II Departamento de Ingeniería Electrónica y Computadoras Operadores y Expresiones rcoppo@uns.edu.ar Primer programa en Java 2 Comentarios en Java Comentario tradicional (multi-línea) Comentario de línea Comentario

Más detalles

Datos Elementales y formato de un programa en Java

Datos Elementales y formato de un programa en Java Datos Elementales y formato de un programa en Java PROGRAMACION I Grado en Matematicas Informática Programación I - 2015/2016 Datos, variables y mi primer programa 1 Introducción a la programación o Programa:

Más detalles

Fundamentos de JAVA. Angel Kuri Enero, /2/2006

Fundamentos de JAVA. Angel Kuri Enero, /2/2006 Fundamentos de JAVA Angel Kuri Enero, 2006 Enunciados y Expresiones Los siguientes son enunciados sencillos: int i = 1 import java.awt.font System.out.println( Esta moto es una + color + + marca); m.enginestate

Más detalles

Curso de Java Introducción a la Programación II

Curso de Java Introducción a la Programación II Curso de Java Introducción a la Programación II Jaime Fernández Martín Curso INEM 02830. Programación en Java Marzo 2010 Índice 1 Tipos Java 2 Decalaración de variables 3 Operadores aritméticos Índice

Más detalles

Curso Informática Lección 3. Tipos de datos, constantes y variables

Curso Informática Lección 3. Tipos de datos, constantes y variables Fundamentos de Informática Lección 3. Tipos de datos, constantes y variables Curso 2010-2011 José Ángel Bañares y Pedro Álvarez 24/09/2010. Dpto. Informática e Ingeniería de Sistemas. Índice de contenidos

Más detalles

Los tipos de datos primitivos

Los tipos de datos primitivos Los tipos de datos primitivos El lenguaje de programación Java es de tipo estático, lo que significa que todas las variables debe ser declarado antes de que puedan ser utilizados visto. Se trata de la

Más detalles

abril de 2017 Desarrollo de aplicaciones en Java Tipos de datos primitivos Tipos de datos Elementos de aplicaciones simples

abril de 2017 Desarrollo de aplicaciones en Java Tipos de datos primitivos Tipos de datos Elementos de aplicaciones simples Desarrollo de aplicaciones en Java Generación de código fuente Compilación Ejecución Elementos de aplicaciones simples EII147-01-02 Introducción a las tecnologías de información Escuela de Ingeniería Industrial

Más detalles

Estructura de datos y Programación

Estructura de datos y Programación Estructura de datos y Programación Tema: Conceptos Básicos- Estructuras de control - Arreglos Ing. Analia Méndez Ing. Raquel Zarco Año: 2012 ELEMENTOS DE UN PROGRAMA EN JAVA El programa Java consta de

Más detalles

Sintaxis básica, variables y 7pos

Sintaxis básica, variables y 7pos Contenidos Sintaxis básica, variables y 7pos Curso de Programación en Java! Sintaxis básica! Variables y 7pos! Entrada/Salida básica! Operadores y expresiones Jesús Montes Sánchez jmontes@fi.upm.es Marzo

Más detalles

Docente: Juan Carlos Pérez P. Alumno : Fecha : Nota:

Docente: Juan Carlos Pérez P. Alumno : Fecha : Nota: Docente: Juan Carlos Pérez P. Alumno : Fecha : Nota: Justificación: Se pretende con éste contribuir a que el alumno se inicie y conozca el entorno del IDE en la creación de pequeños programas en java Objetivos:

Más detalles

CAPITULO 2: VARIABLES Y CONSTANTES

CAPITULO 2: VARIABLES Y CONSTANTES CAPITULO 2: VARIABLES Y CONSTANTES 1. TIPOS DE DATOS. Existen cinco tipos de datos atómicos en C; char: carácter, int: entero, float: real coma flotante, double: real de doble precisión y void: sin valor.

Más detalles

Capítulo 3. Introducción a la programación. Continuar

Capítulo 3. Introducción a la programación. Continuar Capítulo 3 Introducción a la programación Continuar Introducción Java es un lenguaje que tiene muchas ventajas frente a otros lenguajes de programación: es open source (código abierto), esto permite ver

Más detalles

Comprender las diferencias entre tipos de datos primitivos similares, y aprender a elegir el tipo más conveniente en cada caso.

Comprender las diferencias entre tipos de datos primitivos similares, y aprender a elegir el tipo más conveniente en cada caso. Elementos básicos de programación en Java Objetivos del tema Conocer la estructura básica de un programa Java. Comprender los conceptos de tipo, valor y variable. Comprender las diferencias entre tipos

Más detalles

PROGRAMACIÓN ORIENTADA A OBJETOS (L40629) Sabino Miranda-Jiménez

PROGRAMACIÓN ORIENTADA A OBJETOS (L40629) Sabino Miranda-Jiménez PROGRAMACIÓN ORIENTADA A OBJETOS (L40629) Sabino Miranda-Jiménez Elementos de lenguaje: Identificadores Tipos de datos 2 Tipos de datos primitivos 3 Tipos de datos referenciados Clases Interfaces Arrays

Más detalles

Sintaxis básica, variables y 7pos

Sintaxis básica, variables y 7pos Contenidos Sintaxis básica, variables y 7pos Curso de Programación en Java! Sintaxis básica! Variables y 7pos! Entrada/Salida básica! Operadores y expresiones Jesús Montes Sánchez jmontes@fi.upm.es Estructura

Más detalles

PRINCIPIOS DE PROGRAMACIÓN. Mtro. en Ingeniería de Software. Especialidad en e-commerce Ismael Jiménez Hernández

PRINCIPIOS DE PROGRAMACIÓN. Mtro. en Ingeniería de Software. Especialidad en e-commerce Ismael Jiménez Hernández PRINCIPIOS DE PROGRAMACIÓN Mtro. en Ingeniería de Software. Especialidad en e-commerce Ismael Jiménez Hernández Consideraciones Generales Instructor: Ismael Jiménez Hernández Duración: 3.2 horas/semana

Más detalles

Desde los programas más simples escritos en un lenguaje de programación suelen realizar tres tareas en forma secuencial.

Desde los programas más simples escritos en un lenguaje de programación suelen realizar tres tareas en forma secuencial. Tipos de Datos Desde los programas más simples escritos en un lenguaje de programación suelen realizar tres tareas en forma secuencial. Entrada de datos Procesamientos de datos Salida de resultados Los

Más detalles

Tema 2: EL TIPO DE DATOS ENTERO. INSTRUCCIÓN DE ASIGNACIÓN Y DE COMPOSICIÓN SECUENCIAL

Tema 2: EL TIPO DE DATOS ENTERO. INSTRUCCIÓN DE ASIGNACIÓN Y DE COMPOSICIÓN SECUENCIAL Tema 2: EL TIPO DE DATOS ENTERO. INSTRUCCIÓN DE ASIGNACIÓN Y DE COMPOSICIÓN SECUENCIAL Cualquier duda sobre el contenido de este tema se puede enviar al foro TEORIA2. 2.1.- El tipo de datos entero (byte,

Más detalles

TEMA 2. LENGUAJE C. CONCEPTOS BÁSICOS Y PROGRAMACIÓN ELEMENTAL.

TEMA 2. LENGUAJE C. CONCEPTOS BÁSICOS Y PROGRAMACIÓN ELEMENTAL. Tema 2. TEMA 2. LENGUAJE C. CONCEPTOS BÁSICOS Y PROGRAMACIÓN ELEMENTAL. PARTE : VARIABLES, OPERADORES Y CONSTANTES.. INTRODUCCIÓN AL LENGUAJE C 2. PROGRAMAS BÁSICOS EN LENGUAJE C 3. DATOS EN LENGUAJE C

Más detalles

Lección 2 Introducción al lenguaje C

Lección 2 Introducción al lenguaje C Lección Introducción al lenguaje C Decimal Binario Hexadecimal A B C D E F Octal Equivalencia entre decimal, binario, hexadecimal y octal. Código ASCII (American Standard Code for Information Interchange)

Más detalles

4. Operadores Operador asignación

4. Operadores Operador asignación Programación orientada a objetos con Java 43 4. Operadores Objetivos: a) Describir los operadores (aritméticos, incrementales, de relación, lógicos y de asignación) y los tipos de dato primitivos sobre

Más detalles

Carlos Montenegro. Programación Orientada a Objetos Proyecto Curricular de Ingeniería de Sistemas

Carlos Montenegro. Programación Orientada a Objetos Proyecto Curricular de Ingeniería de Sistemas 2 - Introducción al lenguaje Java, identificadores y comentarios. Carlos Montenegro Programación Orientada a Objetos Proyecto Curricular de Ingeniería de Sistemas 1. Introducción: Java tiene como todos

Más detalles

Una clasificación de los tipos de datos existentes en los diferentes lenguajes de programación se presenta a continuación:

Una clasificación de los tipos de datos existentes en los diferentes lenguajes de programación se presenta a continuación: Clase teórica 2 Algoritmos en C Página 1 de 6 TIPOS DE DATOS Una clasificación de los tipos de datos existentes en los diferentes lenguajes de programación se presenta a continuación: Por el momento nuestro

Más detalles

Estructura de un programa en Java. Tipos de datos básicos. class miprimerprograma{ // comentario, no es parte del programa

Estructura de un programa en Java. Tipos de datos básicos. class miprimerprograma{ // comentario, no es parte del programa Contenido Estructura de un programa en Java... 2 Tipos de datos básicos... 2 Operadores... 3 Literales... 4 Entrada / Salida... 4 Sentencias condicionales... 5 Funciones... 5 Ejercicios... 6 Variables,

Más detalles

Informática General 2018 Cátedra: Valeria Drelichman, Pedro Paleo, Leonardo Nadel, Norma Morales

Informática General 2018 Cátedra: Valeria Drelichman, Pedro Paleo, Leonardo Nadel, Norma Morales UNA / AREA TRANSDEPARTAMENTAL DE ARTES MULTIMEDIALES Licenciatura en Artes Multimediales Informática General 2018 Cátedra: Valeria Drelichman, Pedro Paleo, Leonardo Nadel, Norma Morales JavaScript - Programación

Más detalles

Datos y tipos de datos

Datos y tipos de datos Datos y tipos de datos Dato Representación formal de hechos, conceptos o instrucciones adecuada para su comunicación, interpretación y procesamiento por seres humanos o medios automáticos. Tipo de dato

Más detalles

INTRODUCCIóN A LA PROGRAMACIóN APUNTES DE JAVA APUNTES DE JAVA

INTRODUCCIóN A LA PROGRAMACIóN APUNTES DE JAVA APUNTES DE JAVA APUNTES DE JAVA FUNCIONAMIENTO DE UN PROGRAMA Assembler Ensamblador Ejecuta Programador Programa fuente BASIC Interprete Ejecuta C, C++, Pascal Compilador Compila Ejecuta Programa fuente Programa Objeto

Más detalles

Tipos de datos y Operadores Básicos

Tipos de datos y Operadores Básicos Módulo I: Conceptos Básicos Tema 1. Qué es un ordenador? Tema 2. Cómo se representan los datos en un ordenador? Tema 3. Qué es un lenguaje de programación? Tema 4. Cómo se hace un programa informático?

Más detalles

Arreglos. H. Tejeda. Marzo Declaración de arreglos Inicialización de arreglos Uso de subíndices variables en un arreglo 5

Arreglos. H. Tejeda. Marzo Declaración de arreglos Inicialización de arreglos Uso de subíndices variables en un arreglo 5 Arreglos H. Tejeda Marzo 2016 Índice 1. Declaración de arreglos 2 2. Inicialización de arreglos 4 3. Uso de subíndices variables en un arreglo 5 4. Declaración y uso de arreglos de objetos 8 5. Búsqueda

Más detalles

Unidad Didáctica 2. Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones

Unidad Didáctica 2. Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones Unidad Didáctica 2 Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Versión 1.0.3 Índice

Más detalles

Lección 2: Creando una Aplicación en Java. 1. Estructura del archivo de una clase. 3. Definiendo clases fundamentos

Lección 2: Creando una Aplicación en Java. 1. Estructura del archivo de una clase. 3. Definiendo clases fundamentos Lección 2: Creando una Aplicación en Java 1. Estructura del archivo de una clase 2. Usando una clase 3. Definiendo clases fundamentos Objetivos Conocer: La forma en la cual está se está estructurado el

Más detalles

Informática General Cátedra: Valeria Drelichman Pedro Paleo Leonardo Nadel Norma Morales

Informática General Cátedra: Valeria Drelichman Pedro Paleo Leonardo Nadel Norma Morales Informática General 2018 Cátedra: Valeria Drelichman Pedro Paleo Leonardo Nadel Norma Morales Qué es JavaScript? Se trata de un lenguaje de tipo script compacto, basado en objetos y guiado por eventos

Más detalles

Estructura de Datos Unidad 1: Repaso del Lenguaje Java

Estructura de Datos Unidad 1: Repaso del Lenguaje Java Estructura de Datos Unidad 1: Repaso del Lenguaje Java Introducción Java es un lenguaje de programación orientado a objetos, desarrollado por Sun Microsystems a principios de 1991, con el que se van a

Más detalles

Expresiones y sentencias

Expresiones y sentencias Expresiones y sentencias Expresión Construcción (combinación de tokens) que se evalúa para devolver un valor. Sentencia Representación de una acción o una secuencia de acciones. En Java, todas las sentencias

Más detalles

Los parámetros: son los campos que se comunican a los métodos de los objetos.

Los parámetros: son los campos que se comunican a los métodos de los objetos. Modulo 6. Variables y Operadores Variables Un objeto almacena los estados en campos, estos campos se conocen en java como variables. Por eso a menudo podemos ver estas dos palabras usadas para referirse

Más detalles

Componentes Básicos. InCo. InCo Componentes Básicos 1 / 28

Componentes Básicos. InCo. InCo Componentes Básicos 1 / 28 Componentes Básicos InCo InCo Componentes Básicos 1 / 28 Modelo de Computación Vemos al computador como un procesador de datos. +------------+ Entrada ===> Computador ===> Salida +------------+ InCo Componentes

Más detalles

Curso de Java Introducción a la Programación I

Curso de Java Introducción a la Programación I Curso de Java Introducción a la Programación I Jaime Fernández Martín Curso INEM 02830. Programación en Java Marzo 2010 Índice 1 Sintaxis Java 2 Salida de datos 3 Entrada de datos Índice 1 Sintaxis Java

Más detalles

Tema 4. Control de flujo. Programación Programación - Tema 4: Control de Flujo

Tema 4. Control de flujo. Programación Programación - Tema 4: Control de Flujo Tema 4 Control de flujo Programación 2015-2016 Programación - Tema 4: Control de Flujo 1 Tema 4. Control de flujo Introducción. Estructuras condicionales. Estructuras de repetición. Programación - Tema

Más detalles

Objetivos de la sesión. Aplicación de consola 7/30/11. Código con que se inicia un programa en Visual C# (aplicación de consola)

Objetivos de la sesión. Aplicación de consola 7/30/11. Código con que se inicia un programa en Visual C# (aplicación de consola) Objetivos de la sesión Entender el tipo de programas que se pueden realizar con aplicaciones de consola. Conocer el concepto de variable, la forma en que se declaran y su utilización. Conocer la forma

Más detalles

NETBEANS JAVA PROGRAMACIÓN ORIENTADA A OBJETOS

NETBEANS JAVA PROGRAMACIÓN ORIENTADA A OBJETOS NETBEANS JAVA PROGRAMACIÓN ORIENTADA A OBJETOS NetBeans IDE (Integrated Development Environment): Es un entorno de desarrollo integrado o entorno de desarrollo interactivo, escrito en el lenguaje de programación

Más detalles

Instituto Tecnológico de Celaya

Instituto Tecnológico de Celaya ELEMENTOS BÁSICOS DE C++: DECLARACIÓN DE VARIABLES A través de operaciones aritméticas (suma, resta, etc.) y lógicas (por ejemplo, comparaciones) los programas manipulan datos tales como números y caracteres.

Más detalles

Tema 2: Desarrollo de Algoritmos. E.E. de Algorítmica

Tema 2: Desarrollo de Algoritmos. E.E. de Algorítmica Tema 2: Desarrollo de Algoritmos E.E. de Algorítmica Temas a tratar Identificadores Variables Constantes Tipos de Datos Separadores Operadores Aritméticos Unarios Relacionales y Condicionales Nivel de

Más detalles

Centro Asociado Palma de Mallorca. Antonio Rivero Cuesta

Centro Asociado Palma de Mallorca. Antonio Rivero Cuesta Centro Asociado Palma de Mallorca Antonio Rivero Cuesta La Sintaxis de Java I... 5 Tipos de datos... 6 Tipos de datos simples... 7 Operadores... 11 Operadores Aritméticos... 12 Operadores relacionales...

Más detalles

Programación Orientada a Objetos. Orientación a Objetos en Java

Programación Orientada a Objetos. Orientación a Objetos en Java Programación Orientada a Objetos Orientación a Objetos en Java Agenda Creación de Clases Tipo de datos Variables Operaciones aritméticas Objetos Objeto: entidad física o abstracta. Valores (datos): definen

Más detalles

Informática General 2016 Cátedra: Valeria Drelichman, Pedro Paleo, Leonardo Nadel, Norma Morales

Informática General 2016 Cátedra: Valeria Drelichman, Pedro Paleo, Leonardo Nadel, Norma Morales UNA / AREA TRANSDEPARTAMENTAL DE ARTES MULTIMEDIALES Licenciatura en Artes Multimediales Informática General 2016 Cátedra: Valeria Drelichman, Pedro Paleo, Leonardo Nadel, Norma Morales JavaScript Algoritmo

Más detalles

Informática PRÀCTICA 3 Curs Práctica Nº 3: Tipos de datos simples. Constantes y variables. Operadores aritméticos. Formato de salida.

Informática PRÀCTICA 3 Curs Práctica Nº 3: Tipos de datos simples. Constantes y variables. Operadores aritméticos. Formato de salida. Práctica Nº 3: Tipos de datos simples. Constantes y variables. Operadores aritméticos. Formato de salida. Objetivos de la práctica: - Mostrar la sintaxis de los diferentes tipos de datos presentes en C/C++.

Más detalles

Elementos de un programa en C

Elementos de un programa en C Elementos de un programa en C Un programa en C consta de uno o más archivos. Un archivo es traducido en diferentes fases. La primera fase es el preprocesado, que realiza la inclusión de archivos y la sustitución

Más detalles

Java posee dos grandes categorías de tipos para las variables:

Java posee dos grandes categorías de tipos para las variables: Declaración identificador tipo int i; i entero String s; s referencia a string int a[]; a referencia a arreglo de enteros int[] b; b referencia a arreglo de enteros Java posee dos grandes categorías de

Más detalles

VARIABLES, CONSTANTES Y EXPRESIONES ASIGNACIÓN. TIPOS ELEMENTALES. PRECEDENCIA DE LOS ESTRUCTURAS DE CONTROL. CONDICIONAL E

VARIABLES, CONSTANTES Y EXPRESIONES ASIGNACIÓN. TIPOS ELEMENTALES. PRECEDENCIA DE LOS ESTRUCTURAS DE CONTROL. CONDICIONAL E Java Java es un lenguaje de programación presentado en 1995 enfocado a: soportar los fundamentos de la programación orientada a objetos. generar código independiente de la arquitectura de la computadora

Más detalles

GUÍA DE TRABAJO N 1 C# Ing. Néstor Raúl Suarez Perpiñan Página 1 de 13

GUÍA DE TRABAJO N 1 C# Ing. Néstor Raúl Suarez Perpiñan Página 1 de 13 Página 1 de 13 Tema: FUNDAMENTOS DE PROGRAMACIÓN EN LENGUAJE C# Objetivo: Conocer y manejar correctamente los tipos de datos y las diferentes estructuras de programación que hacen parte del lenguaje de

Más detalles

Java. Introducción a la Programación Orientada a Objetos

Java. Introducción a la Programación Orientada a Objetos Java Java es un lenguaje de programación presentado en 1995 enfocado a: soportar los fundamentos de la programación orientada a objetos. generar código independiente de la arquitectura de la computadora

Más detalles

Definición Es una directiva using que ayuda al compilador a localizar una clase que se usa en la aplicación.

Definición Es una directiva using que ayuda al compilador a localizar una clase que se usa en la aplicación. Capitulo 3 Introducción a las aplicaciones de C# Resumen: Item using System; espacios de nombres: Las palabras clave estilo de mayúsculas/minúsculas Pascal public class Bienvenido1 Definición Es una directiva

Más detalles

Introducción a Java. Introducción a Java. Programación I

Introducción a Java. Introducción a Java. Programación I Introducción a Java Introducción a Java Programación I Como Funciona Tipos de Datos TIPO TAMAÑO RANGO byte 8 bits Valores numéricos de 128 a 127 short 16 bits Valores numéricos de 32.768 a 32.767 int 32

Más detalles

ESCUELA POLITÉCNICA SUPERIOR PRÁCTICA 2: EXPRESIONES, PRINTF Y SCANF

ESCUELA POLITÉCNICA SUPERIOR PRÁCTICA 2: EXPRESIONES, PRINTF Y SCANF ESCUELA POLITÉCNICA SUPERIOR GRADO EN DISEÑO IND. INFORMÁTICA CURSO 2012-13 PRÁCTICA 2: EXPRESIONES, PRINTF Y SCANF HASTA AHORA... En prácticas anteriores se ha aprendido: La estructura principal de un

Más detalles

3.3 Conceptos Básicos del Lenguaje Java

3.3 Conceptos Básicos del Lenguaje Java 3.3 Conceptos Básicos del Lenguaje Java Conjunto de Caracteres Java utiliza Unicode, un conjunto de caracteres de 16 bits Java permite leer ASCII de 7-bit o Latin-1, conviertiéndolo a Unicode Son pocos

Más detalles

El lenguaje C. 1. Identificadores, constantes y variables

El lenguaje C. 1. Identificadores, constantes y variables Principios de Programación El lenguaje C 1. Identificadores, constantes y variables 1.1. Conceptos de memoria Los nombres de variable como x, y, suma corresponden a localizaciones o posiciones en la memoria

Más detalles

Autoestudio 2: Variables y Operadores

Autoestudio 2: Variables y Operadores Autoestudio 2: Variables y es Componentes de un programa Cuando escribimos en un lenguaje de programación tenemos que entender la sintaxis del lenguaje. A continuación empezaremos con la sintaxis básica

Más detalles

Informática Ingeniería en Electrónica y Automática Industrial

Informática Ingeniería en Electrónica y Automática Industrial V1.1 Informática Ingeniería en Electrónica y Automática Industrial Datos en lenguaje C Datos en lenguaje C Introducción Tipos de datos básicos y modificadores Tipos de datos enteros Tipos de datos reales

Más detalles

Informática Ingeniería en Electrónica y Automática Industrial

Informática Ingeniería en Electrónica y Automática Industrial Informática Ingeniería en Electrónica y Automática Industrial Datos en lenguaje C V1.1 Datos en lenguaje C Introducción Tipos de datos básicos y modificadores Tipos de datos enteros Tipos de datos reales

Más detalles

Informática PRÀCTICA 9 Curs Práctica Nº 9: Rango y precisión de representación de números en el ordenador.

Informática PRÀCTICA 9 Curs Práctica Nº 9: Rango y precisión de representación de números en el ordenador. Departamento de Práctica Nº 9: Rango y precisión de representación de números en el ordenador. Uso de punteros Objetivos de la práctica: - Entender la representación de números (enteros y reales) en el

Más detalles

Java para programadores

Java para programadores Java para programadores Java y Servicios Web I Master en Ingeniería Matemática Manuel Montenegro Dpto. Sistemas Informáticos y Computación Desp. 467 (Mat) montenegro@fdi.ucm.es Contenidos Variables. Tipos

Más detalles

Java Avanzado. Guía 1. Java Avanzado Facultad de Ingeniería. Escuela de computación.

Java Avanzado. Guía 1. Java Avanzado Facultad de Ingeniería. Escuela de computación. Java Avanzado. Guía 1 Java Avanzado Facultad de Ingeniería. Escuela de computación. Java Avanzado. Guía 2 Introducción Este manual ha sido elaborado para orientar al estudiante de Java Avanzado en el desarrollo

Más detalles

Laboratorio de Arquitectura de Redes. Datos en lenguaje C

Laboratorio de Arquitectura de Redes. Datos en lenguaje C Laboratorio de Arquitectura de Redes Datos en lenguaje C Datos en lenguaje C Introducción Tipos de datos básicos y modificadores Tipos de datos enteros Tipos de datos reales Tamaño y rango de los datos

Más detalles

Variables. a 9 4. Ahora ya es posible realizar operaciones con los números introducidos por teclado y guardados en las variables a y b.

Variables. a 9 4. Ahora ya es posible realizar operaciones con los números introducidos por teclado y guardados en las variables a y b. Variables Ahora ya es posible realizar operaciones con los números introducidos por teclado y guardados en las variables a y b. Qué son las variables? Podemos imaginar la memoria como un conjunto de celdas

Más detalles

Programación Orientada a Objetos

Programación Orientada a Objetos Unidad III Programación Orientada a Objetos en Java Programación Orientada a Objetos Programación I - 0416202 Contenido Esta lección abarca los siguientes temas con respecto a Java: Qué es Java? Breve

Más detalles

Tema 2. El lenguaje JAVA

Tema 2. El lenguaje JAVA Tema 2. El lenguaje JAVA Nomenclatura habitual Variables Tipos de variables Tipos primitivos Referencias Arrays Operadores Operadores de Java Precedencia de operadores Sentencias de control Sentencias

Más detalles

Programación en C. Algoritmo y Estructura de Datos. Ing. M. Laura López. Programación en C

Programación en C. Algoritmo y Estructura de Datos. Ing. M. Laura López. Programación en C Algoritmo y Estructura de Datos Ing. M. Laura López 1 Estructura de un programa en C 2 Estructura de un programa en C #include Archivos de cabecera # define Definición de constantes Declaraciones Globales

Más detalles

Java Avanzado. Guía 1. Java Avanzado Facultad de Ingeniería. Escuela de computación.

Java Avanzado. Guía 1. Java Avanzado Facultad de Ingeniería. Escuela de computación. Java Avanzado. Guía 1 Java Avanzado Facultad de Ingeniería. Escuela de computación. Java Avanzado. Guía 2 Introducción Este manual ha sido elaborado para orientar al estudiante de Java Avanzado en el desarrollo

Más detalles

Expresiones y sentencias

Expresiones y sentencias Expresiones y sentencias Expresión Construcción (combinación de tokens) que se evalúa para devolver un valor. Sentencia Representación de una acción o una secuencia de acciones. En C, todas las sentencias

Más detalles

Práctica No. 2. Tipos de Datos y Entrada/Salida Estándar

Práctica No. 2. Tipos de Datos y Entrada/Salida Estándar Práctica No. 2. Tipos de Datos y Entrada/Salida Estándar Comenzar creando un nuevo proyecto tipo Java llamada Practica02, crear también la clase principal. En el método main, se declararán varios de los

Más detalles

1.2 Uso del software como una calculadora. Iniciación a los operadores y almacenamiento de datos.

1.2 Uso del software como una calculadora. Iniciación a los operadores y almacenamiento de datos. 1.2 Uso del software como una calculadora. Iniciación a los operadores y almacenamiento de datos. Iniciación al manejo de datos Empezaremos a usar el software en modo calculadora, utilizando la ventana

Más detalles

Todo programa en 'C' consta de una o más funciones, una de las cuales se llama main.

Todo programa en 'C' consta de una o más funciones, una de las cuales se llama main. LENGUAJE C CARACTERISTICAS DEL LENGUAJE 'C' El lenguaje 'C' se conoce como un lenguaje compilado. Existen dos tipos de lenguaje: interpretados y compilados. Los interpretados son aquellos que necesitan

Más detalles

Curso de Programación Avanzada en C

Curso de Programación Avanzada en C Curso de Programación Avanzada en C Copyright, 1996 Universidad Sim on Bol ivar 1 Prof. Mariela J. Curiel Contenido del Curso Conceptos BásicosB Estructuras de Control Arreglos Otros tipos de datos derivados

Más detalles

Unidad V. Ya veremos qué poner en "algunas_palabras" y "algo_más", por ahora sigamos un poco más.

Unidad V. Ya veremos qué poner en algunas_palabras y algo_más, por ahora sigamos un poco más. Implementación Orientada a Objetos. Unidad V 5.1 Estructura de una clase. Una clase consiste en: algunas_palabras class nombre_de_la_clase [algo_más] { [lista_de_atributos] [lista_de_métodos] Lo que está

Más detalles

Constantes. Las constantes no cambian durante la ejecucion de un programa en C++, en C++ existen 4 tipos de constantes:

Constantes. Las constantes no cambian durante la ejecucion de un programa en C++, en C++ existen 4 tipos de constantes: Constantes Las constantes se pueden declarar con la palabra reservada const y se le asigna un valor en el momento de la declaracion, este valor no se puede modificar durante el programa y cualquier intento

Más detalles

Introducción a Java (II) Dr. (c) Noé Alejandro Castro Sánchez

Introducción a Java (II) Dr. (c) Noé Alejandro Castro Sánchez Introducción a Java (II) Dr. (c) Noé Alejandro Castro Sánchez Sintaxis de Java Sintaxis Define las reglas que determinar el uso de palabras clave, operadores y variables para construir y evaluar expresiones.

Más detalles

Programación Orientada a Objetos

Programación Orientada a Objetos Unidad III Programación Orientada a Objetos en Java Programación Orientada a Objetos Programación I - 0416202 Contenido Esta lección abarca los siguientes temas con respecto a Java: Salida estándar Entrada

Más detalles

Pre-Laboratorio 1 MA-33A : Introducción a Matlab

Pre-Laboratorio 1 MA-33A : Introducción a Matlab Pre-Laboratorio 1 MA-33A 2007-1: Introducción a Matlab Gonzalo Hernández - Gonzalo Rios UChile - Departamento de Ingeniería Matemática 1 Interfaz de Matlab Al ejecutar el programa Matlab, se abrirá una

Más detalles

Programación 1 Tema 3. Información, datos, operaciones y expresiones

Programación 1 Tema 3. Información, datos, operaciones y expresiones Programación 1 Tema 3 Información, datos, operaciones y expresiones Índice Datos y tipos de datos Datos primitivos en C++ Expresiones e instrucción de asignación Datos y tipos de datos Problema información

Más detalles

Expresiones Aritméticas. Programación digital I Escuela de Sistemas Facultad de Ingeniería Gilberto Diaz

Expresiones Aritméticas. Programación digital I Escuela de Sistemas Facultad de Ingeniería Gilberto Diaz Expresiones Aritméticas Programación digital I Escuela de Sistemas Facultad de Ingeniería Gilberto Diaz Expresiones Aritméticas El computador puede realizar cálculos además de mostrar datos por pantalla.

Más detalles

Programación en java. Estructuras algorítmicas

Programación en java. Estructuras algorítmicas Programación en java Estructuras algorítmicas Estructuras algoritmicas 1. Conceptos basicos 1. Dato 2. Tipos de datos 3. Operadores 2. dsd Conceptos Basicos DATO: se considera una representación simbólica

Más detalles

Tema 2: Los tipos de datos

Tema 2: Los tipos de datos Tema 2: Los tipos de datos Antonio J. Sierra Índice 1. Introducción. 2. Tipos simples. 3. Literales. 4. Variables. 5. Conversión de Tipos. 6. Promoción automática en expresiones. 1 Introducción Java es

Más detalles

Introducción al Lenguaje Java

Introducción al Lenguaje Java INSTITUTO MATEMÁTICO Y ACTUARIAL MEXICANO LICENCIATURA EN ACTUARÍA PROGRAMACIÓN Introducción al Lenguaje Java Gerardo Avilés Rosas gaviles@imam.com.mx Integrated Development Environment Una herramienta

Más detalles

Características de JavaScript

Características de JavaScript Características de JavaScript Qué es JavaScript? o Lenguaje de programación interpretado utilizado fundamentalmente para dotar de comportamiento dinámico a las páginas web. o Cualquier navegador web actual

Más detalles

FUNDAMENTOS DE INFORMÁTICA

FUNDAMENTOS DE INFORMÁTICA FUNDAMENTOS DE INFORMÁTICA Tema 1 Introducción a la Programación en Visual Basic Departamento de Ingeniería de Sistemas y Automática Universidad de Vigo undamentos de Informática. Departamento de Ingeniería

Más detalles

TEMA 2. EL LENGUAJE C. ELEMENTOS BÁSICOS

TEMA 2. EL LENGUAJE C. ELEMENTOS BÁSICOS TEMA 2. EL LENGUAJE C. ELEMENTOS BÁSICOS Una vez que ya sabes crear tus propios programas, vamos a analizar los fundamentos del lenguaje de programación C. Este capítulo incluye además los siguientes temas:

Más detalles

Una expresión es una combinación de uno o más operandos y operadores para obtener un resultado.

Una expresión es una combinación de uno o más operandos y operadores para obtener un resultado. 1.6. EXPRESIONES CONCEPTO: Una expresión es una combinación de uno o más operandos y operadores para obtener un resultado. Los operandos pueden ser constantes, variables, otras expresiones e incluso funciones.

Más detalles

UNIDAD 2 Descripción de un programa

UNIDAD 2 Descripción de un programa Descripción de un programa Estructura general de un programa. Elementos básicos. Tipos de datos simples: enteros, reales y carácter. Representación de datos en memoria. Operaciones sobre tipos de datos

Más detalles

Un identificador le da nombre único a un elemento en un programa (Variables, procedimientos, etc.). No puede contener operadores como + - * /

Un identificador le da nombre único a un elemento en un programa (Variables, procedimientos, etc.). No puede contener operadores como + - * / undamentos de sintaxis en algunas instrucciones de C#.Net Dr. Ramón Roque Hernández Identificadores Un identificador le da nombre único a un elemento en un programa (ariables, procedimientos, etc.). No

Más detalles

Laboratorio de Informática GRADO EN FÍSICA

Laboratorio de Informática GRADO EN FÍSICA Objetivos de la práctica: - Conocer los límites de representación de los tipos de datos simples. - Realizar programas de cálculo sencillo utilizando operadores aritméticos - Utilizar funciones básicas

Más detalles

Lenguaje de Programación MSc. Daniel Alejandro Yucra Sotomayor

Lenguaje de Programación MSc. Daniel Alejandro Yucra Sotomayor FACULTAD DE INGENIERÍA INDUSTRIAL Y DE SISTEMAS Lenguaje de Programación MSc. Daniel Alejandro Yucra Sotomayor E-mail: daniel@agenciati.com Estructuras Selectivas Contenidos 1. La Clase Scanner 2. Estructuras

Más detalles

Un calculadora avanzada... y algo más!

Un calculadora avanzada... y algo más! INFORMÁTICA, GRUPO D Un calculadora avanzada... y algo más! Vamos a familiarizarnos con el entorno interactivo de Python. Vamos a construir expresiones aritméticas y a guardar los resultados en variables

Más detalles

Este método de diseño de algoritmos en etapas, yendo de los conceptos generales a los de detalle, se conoce como método descendente (top-down).

Este método de diseño de algoritmos en etapas, yendo de los conceptos generales a los de detalle, se conoce como método descendente (top-down). PLANTEMAIENTO DEL PROBLEMA Identificación de entradas y salidas Un algoritmo puede ser definido como la secuencia ordenada de pasos, sin ambigüedades, que conducen a la resolución de un problema dado y

Más detalles

UNIDAD ACADÉMICA PROFESIONAL TIANGUISTENCO

UNIDAD ACADÉMICA PROFESIONAL TIANGUISTENCO UNIDAD ACADÉMICA PROFESIONAL TIANGUISTENCO LICENCIATURA EN INGENIERÍA DE SOFTWARE UNIDAD DE APRENDIZAJE: PROGRAMACIÓN Créditos institucionales de la UA: 8 Material visual: Diapositivas Unidad de competencia

Más detalles

REPASO ARRAYS O ARREGLOS UNIDIMENSIONALES EN JAVA. EJEMPLOS DE CÓDIGO. (CU00903C)

REPASO ARRAYS O ARREGLOS UNIDIMENSIONALES EN JAVA. EJEMPLOS DE CÓDIGO. (CU00903C) APRENDERAPROGRAMAR.COM REPASO ARRAYS O ARREGLOS UNIDIMENSIONALES EN JAVA. EJEMPLOS DE CÓDIGO. (CU00903C) Sección: Cursos Categoría: Lenguaje de programación Java nivel avanzado I Fecha revisión: 2039 Resumen:

Más detalles

Tipos de Datos en C. Palabras reservadas en C

Tipos de Datos en C. Palabras reservadas en C Tipos de Datos en C Tipo Tamaño de bits Rango char 8-128 a 127 unsigned char 8 0 a 255 signed char 8-128 a 127 int 16 32768 a 32767 unsigned int 16 0 a 65535 signed int 16 Igual que int short int 16 Igual

Más detalles

Fundamentos de Programación

Fundamentos de Programación Fundamentos de Programación COMENTARIOS Microsoft Visual Basic interpreta que todo lo que está a la derecha del carácter ( ) en una línea cualquiera de programa es un comentario y no ejecuta acción alguna.

Más detalles

GENERACIÓN DE CÓDIGO ORIENTADO A OBJETOS

GENERACIÓN DE CÓDIGO ORIENTADO A OBJETOS GENERACIÓN DE CÓDIGO ORIENTADO A OBJETOS A.- ASPECTOS FUNDAMENTALES DEL CÓDIGO ORIENTADO A OBJETOS MÓDULOS DE CÓDIGO: El código en Visual Basic se almacena en módulos. Hay tres tipos de módulos: de formulario,

Más detalles