Curso: BSI-03 Programación I Universidad Latina

CONTENIDO
1. VARIABLES Y TIPOS DE DATOS ............................................................................................................. 2 1.1 1.2 1.3 2. Variables ...................................................................................................................................... 2 Tipos de datos .............................................................................................................................. 2 Conversión explícita de tipos (Casting).......................................................................................... 3

OPERADORES ...................................................................................................................................... 4 2.1 2.2 2.3 2.4 2.5 2.6 Introducción ................................................................................................................................. 4 Operadores Aritméticos ............................................................................................................... 4 Operadores Relacionales y Condicionales ..................................................................................... 4 Operadores Relacionales And y Or ................................................................................................ 4 Operadores de Asignación ............................................................................................................ 5 Precedencia de Operadores en Java ............................................................................................. 5

3.

SENTENCIAS DE CONTROL DE FLUJO.................................................................................................... 5 3.1. Toma de decisiones ...................................................................................................................... 5 If ........................................................................................................................................... 5 If/else ................................................................................................................................... 6 Switch ................................................................................................................................... 7

3.1.1. 3.1.2. 3.1.3. 3.2.

Bucles o ciclos .............................................................................................................................. 8 For ........................................................................................................................................ 8 While / Do While .................................................................................................................. 9

3.2.1. 3.2.2. 4. 5. 6. 7. 8.

EL ENTORNO DE DESARROLLO DE NETBEANS .....................................................................................11 PRIMER PROYECTO EN JAVA ..............................................................................................................13 ABREVIATURA DE LOS NOMBRE DE LOS CONTROLES BÁSICOS DE JAVA ............................................17 EJERCICIOS EN NETBEANS 6.9.1 EN ESPAÑOL .....................................................................................18 UTILIZACIÓN DE LAS CAJAS DE TEXTO PARA CAPTURA DE DATOS......................................................36

10. PROGRAMAS CON CÁLCULOS .............................................................................................................39 11. CUADROS DE MENSAJE, CONFIRMACIÓN E INTRODUCCIÓN DE DATOS .............................................42 12. CADENAS ............................................................................................................................................43 13. LA CLASE JFRAME ...............................................................................................................................45 14. VARIABLES GLOBALES ........................................................................................................................45 15. CUADROS DE DIÁLOGO ......................................................................................................................47 16. EJERCICIOS PROPUESTOS....................................................................................................................50 16.1. 16.2. Sentencias de control repetitivas .................................................................................................50 Ejercicios propuestos funciones ...................................................................................................52

1

Curso: BSI-03 Programación I Universidad Latina

1. VARIABLES Y TIPOS DE DATOS 1.1 Variables Las variables se utilizan para almacenar datos asociados a nombres. Cada variable tiene un nombre que sirve de referencia para introducir datos o acceder a los mismos. Un ejemplo de utilización de variable es: Edad = 23; en este caso, introducimos el valor numérico 23 en la variable Edad. A partir de ahora podemos utilizar la variable a través de su nombre (Edad) para referirnos a su valor (23). Los nombre de las variables, en Java, pueden tener cualquier longitud y deben comenzar con una letra, el símbolo de subrayado “_” o el dólar “$”. El resto de los caracteres del nombre pueden ser cualquiera, salvo los que puden dar lugar a confusión. Los nombre de variables no deben tener espacios en blanco, puesto que el compilador identifacaría más de una variable; por ejemplo, NumeroDeAciertos es un nombre de variable correcto, sin embargo Numero De Aciertos no lo es, porque el compilador identificaría tres variables diferentes: Numero, De y Aciertos. Los nombre de variables no deben coincidir con palabras reservadas (tales como public, static, class, final, main, etc.). Existe una serie de palabras reservadas las cuales tienen un significado especial para Java y por lo tanto no se pueden utilizar como nombres de variables. Dichas palabras son:

(*) Son palabras reservadas, pero no se utilizan en la actual implementación del lenguaje Java. En Java, los identificadores de variables suelen definirse empezando por un carácter en minúscula, por ejemplo contador. Si en el identificador existe más de una palabra, los comienzos del resto de las palabras se ponen con mayúsculas, ejemplo: contadorDeAciertos. Los identificadores deben ser representativos de los datos que almacenan, de esta manera valorAcumulado, numeroAlumnos, cantidadEuros, edad, potencia son variables que determinan de forma adecuada el significado de sus contenidos, mientras que los nombres de variable: valor V1, V2, X, Y, Z no son representativos de sus contenidos. La longitud de los identificadores no debe ser excesivamente larga, para no dificultar la legibilidad de las instrucciones. Los identificadores en mayúscula se suelen reservar para nombres (normalmente cortos) de constantes, de esta manera las instrucciones son más legibles, al utilizarse minúsculas. Ejemplo: PI, STOCK, PRECIOHORA, IVA, etc. 1.2 Tipos de datos Las variables almacenan datos de diferentes tipos (numérico decimal, numérico entero, caracteres, etc.). Para indicar el tipo de dato que contendrá las variables debemos “declarar” las mismas, indicando sus tipos. Este mecanismo permite que el traductor (compilador) realice las comprobaciones estáticas de validez, como por ejemplo que no empleamos en el programa una variable que no ha sido declarada, que no asignemos un carácter a una variable de tipo numérico, que no sumemos un carácter a un valor numérico, etc. A continuación se establece una relación de los tipos de datos primitivos (los que proporciona el lenguaje):

2

Curso: BSI-03 Programación I Universidad Latina

TIPOS PRIMITIVOS NOMBRE DEL TIPO TAMAÑO EN BYTES TIPOS NUMÉRICOS ENTEROS Byte 1 Short 2 Int 4 Long 8 TIPOS NUMÉRICOS DECIMALES Float 4 double 8 tipo carácter Char 2 String TIPO LÓGICO (BOOLEANO) boolean 1 Para declara una variable se emplea la sintaxis:

RANGO -128 a 127 -32768 a 32767 -231 a 231 -263 a 263 -3.4x1038 a 3.4x1038 -1.7x10308 a 1.7x10308 Almacena un solo carácter Almacena un conjunto de caracteres true, false

tipo identificador; //declara una variable tipo identificador [= valor]; //declara e inicializa una variable tipo identificador1, identificador2, identificador3, etc.; //declara varias variables del mismo tipo tipo identificador1=valor1, identificador2=valor2, etc.; // declara e inicializa varias variables del mismo tipo

Por ejemplo:
byte edad = 60; short sueldoMensual; float PrecioEuros, cateto1, cateto2, hipotenusa; boolean adquirido=false, finalizado=true;

1.3 Conversión explícita de tipos (Casting) Resulta muy habitual que en los programas nos encontremos con la necesidad de mezclar tipos de datos, por ejemplo al trabajar con un biblioteca matemática que obliga a utiizar tipos de datos double, cuando nosotros las variables las tenemos de tipo float, o mas sencillo todavía, al intentar sumar un 1 (por defecto int) a una variable tipo short. Java en algunos casos, realiza una conversión implícita de datos, sin embargo, por regla general, nos veremos obligados a programar conversiones explícitas de tipos. Para modificar el tipo de un valor, basta con indicar el nuevo tipo entre paréntesis antes del valor, por ejemplo: (byte) 1  convierte el 1 (int) a byte (double) MiVariableDelTipoFloat  convierte a doublé una variable de tipo float (short) (VariableDeTipoByte + VariableDeTipoByte)  convierte a short el resultado de sumar dos variables de tipo byte.

3

Curso: BSI-03 Programación I Universidad Latina

2. OPERADORES 2.1 Introducción Los operadores nos permiten realizar operaciones sobre los operandos. Existen operandos unuarios y binarios; un ejemplo de operador unuario es la negación lógica (!). Los operadores tienen unas reglas de precedencia que resulta importante tener en cuenta. 2.2 Operadores Aritméticos Esta tabla resume todas las operaciones aritméticas binarias en Java: Operador Uso Descripción + op1 + op2 Suma op1 y op2 op1 - op2 Resta op2 de op1 * op1 * op2 Multiplica op1 y op2 / op1 / op2 Divide op1 por op2 % op1 % op2 Obtiene el resto de dividir op1 por op2 Nota: El lenguaje Java extiende la definición del operador + para incluir la concatenación de cadenas. Además, existen dos operadores de atajos aritméticos, ++ que incrementa en uno su operando, y -- que decrementa en uno el valor de su operando. Operador ++ ++ --Uso op ++ ++op op --- op Descripción Incrementa op en 1; evalúa el valor antes de incrementar Incrementa op en 1; evalúa el valor después de incrementar Decrementa op en 1; evalúa el valor antes de decrementar Decrementa op en 1; evalúa el valor después de decrementar

2.3 Operadores Relacionales y Condicionales Los valores relacionales comparan dos valores y determinan la relación entre ellos. Por ejemplo, != devuelve true si los dos operandos son distintos. Esta tabla resume los operadores relacionales de Java: Operador Uso Devuelve true si > op1 > op2 op1 es mayor que op2 >= op1 >= op2 op1 es mayor o igual que op2 < op1 < op2 op1 es menor que op2 <= op1 <= op2 op1 es menor o igual que op2 == op1 == op2 op1 y op2 son iguales != op1 != op2 op1 y op2 son distintos 2.4 Operadores Relacionales And y Or Operador Uso Devuelve true si && op1 && op2 op1 y op2 son verdaderos || op1 || op2 uno de los dos es verdadero ! ! op op es falso El operador & se puede utilizar como un sinónimo de && si ambos operadores son booleanos. Similarmente, | es un sinónimo de || si ambos operandos son booleanos.

4

Curso: BSI-03 Programación I Universidad Latina

2.5 Operadores de Asignación Puedes utilizar el operador de asignación =, para asignar un valor a otro. Además del operador de asignación básico, Java proporciona varios operadores de asignación que permiten realizar operaciones aritméticas, lógicas o de bits y una operación de asignación al mismo tiempo. Específicamente, suponga que quieres añadir un número a una variable y asignar el resultado dentro de la misma variable, como esto: i = i + 2; Puedes ordenar esta sentencia utilizando el operador +=. i += 2; Las dos líneas de código anteriores son equivalentes. Esta tabla lista los operadores de asignación y sus equivalentes: Operador Uso Equivale a += op1 += op2 op1 = op1 + op2 -= op1 -= op2 op1 = op1 - op2 *= op1 *= op2 op1 = op1 * op2 /= op1 /= op2 op1 = op1 / op2 %= op1 %= op2 op1 = op1 % op2 2.6 Precedencia de Operadores en Java operadores sufijo [] . (params) expr++ expr-operadores unarios ++expr --expr +expr -expr ~ ! creación o tipo new (type)expr multiplicadores */% suma/resta +relacionales < > <= >= instanceof igualdad == != AND lógico && OR lógico || condicional ?: asignación = += -= *= /= %= ^= &= |= <<= 3. SENTENCIAS DE CONTROL DE FLUJO Las sentencias de control de flujo determinan el orden en que se ejecutarán las otras sentencias dentro del programa. El lenguaje Java soporta varias sentencias de control de flujo, incluyendo: Sentencias Palabra clave Toma de decisiones if-else, switch-case Bucles ó ciclos for, while, do-while Excepciones try-catch-finally, throw Misceláneas break, continue, return 3.1. Toma de decisiones 3.1.1. If La sentencia if (o si condicional), le permite a un programa decidir, mediante la evaluación de una condición o varias condiciones, ejecutar una u otra acción o acciones. La sintaxis General es La siguiente: if(condicion1) Accion1;

5

 Si son varias acciones. muestre con un mensaje. se necesita una nota mayor o igual a 70. al evaluar la condición como verdadera. y si este es mayor se lo indica al usuario. podemos agregar la sentencia else.Curso: BSI-03 Programación I Universidad Latina En donde:  Condición 1: Representa una expresión que puede ser del tipo booleana. If/else En las sentencias if. se ejecutará. Ejemplo if Programa en java que solicita al usuario su edad. Explicación: En la línea 18 se declara y se inicializa la variable entera edad. entonces. } else { Condiciones. ésta es falsa. realizará las acciones. } Ejemplo if/else Al ingresar la nota de un alumno. que estén después del else. En la línea 20 se declara una variable con el nombre lectura de tipo Scanner que se utiliza para lectura de datos. una materia en el colegio. al ingresar la nota.  Acción 1: es la acción que. si el alumno. 6 . En la línea 24 se utiliza la sentencia if para evaluar el valor de edad y si esta es mayor o igual a 18 se informa al usuario.1. La sintaxis es la siguiente: if(condición1) { Acciones. En la línea 23 se le asigna a la variable edad el valor digitado por el usuario. que es introducido gracias a la variable lectura (esta debe ser convertida a integer). la cual indica que. Diseñe una aplicación en Java que. se desea saber si éste aprobó o no. aprobó o no. Se sabe que para aprobar. van entre llaves. 3.2.0. si al evaluar la condición.

que permite definir un número ilimitado de ramos basadas en la misma condición. ninguna resulta verdadera. si el alumno alcanza una nota mayor o igual a 70. ……………… default: instrucciones. 3. Si al evaluar todas las condiciones. y se continúa con la ejecución del programa. de evalúa la condición 2. nos vemos obligados a programar usando if anidados. es una consecuencia de las estructuras if anidadas. else Sentencia n. colocamos una condición. Sentencia else/if Anidadas Esta estructura. si resulta verdadera. su formato es el siguiente: if(condicion1) Sentencia 1. break. de lo contrario.. Cuando en una instrucción case coinciden los valores.3. Para facilitar la programación en estas situaciones. si resulta verdadera se ejecuta la sentencia 1. de lo contrario se evalúa la condición 3 y así sucesivamente. break. lo primero que se hace es evaluar la expresión. lo que complica la realización y depuración de código. break. } Cuando el flujo de control del programa llega a la instrucción switch. aprobó el examen caso contrario lo reprobó. Funciona de la siguiente manera: Se evalúa la primera condición.1. Sintaxis switch(expresión) {case valor1: Instrucciones.Curso: BSI-03 Programación I Universidad Latina Explicación: En la línea 24. elseif(condicion2) Sentencia 2. después se va comparando el valor de cada clausula case con el resultado de la evaluación de la expresión.. se ejecutan las instrucciones asociadas 7 . se ejecuta el bloque del else. Switch Cuando en una condición existen diversas posibilidades. se ejecuta la sentencia 2. case valor2: instrucciones. se proporciona la instrucción condicional switch. .

println("No eligió el número 1 ó 2"). sabemos a ciencia cierta el número de veces que se tiene que repetir una misma acción o bloque de acciones. se sale del ciclo. Y para ello es que nos sirve.2. finalmente se ejecuta la expresión de variación y se repite el ciclo hasta que la condición de continuidad se evalúa como false.  Condición: si la cumple. } System. esta estructura. For En algunas ocasiones. condición. La semántica (significado) de la instrucción es la siguiente: se inicializa una variable (inicialización).println("Las opciones son 1 ó 2. } 3.  Incremento: que puede ser positivo o negativo (decremento).nextInt(). short o int.2. default: System. break. operacion = 0. sí se cumple. Bucles o ciclos 3. Por favor intente de nuevo").numero2. Donde:  Valor inicial: es el valor con el cual inicializamos nuestra variable de control. Ejemplo switch public static void main(String[] args) { Scanner lectura = new Scanner(System. break. numero2. operacion = lectura. Restar) ?:"). byte.out. System. int numero1 = 0.out.out. switch (operacion) { case 1: System. Si no se incluyen break en un case. System.nextInt(). 8 . se evalúa la condición de continuidad y.nextInt().out.print("Digite la operación a realizar (1. incremento) accion. Es importante tener en cuenta que la expresión asociada a la instrucción switch solo debe generar valores de tipo: char. case 2: System.print("Digite el número 2: "). System.println("El resultado es: "+resultado). numero2 = lectura.out. Sumar/ 2. Su sintaxis es la siguiente: for( valor inicial.println("Elegió realizar una resta"). se ejecutan las instrucciones situadas entre las llaves.Curso: BSI-03 Programación I Universidad Latina hasta alcanzar la sentencia break.in). System.out. break. resultado = numero1 + numero2.out. resultado = 0. ejecuta la acción o acciones e incrementa o decrementa la variable de control. sino la cumple la condición.println("Elegió realizar una suma"). resultado = numero1 .out.print("Digite el número 1: ").1. se ejecutan todas las instrucciones siguientes (correspondientes a los siguientes grupos case) hasta que se encuentra un break o se termina la instrucción switch. numero1 = lectura.

9 . separadas por . int índice =1  Condición de continuidad: índice <=10  Expresión de incremento: índice++ que es igual a índice=índice+1 3. en el segundo caso las instrucciones interiores al bucle se ejecutan al menos una vez. abandonándose el bucle cuando la condición se evalúa como false. While / Do While El bucle while nos permite repetir la ejecución de una serie de instrucciones mientras que se cumpla una condición de continuidad. El bucle for contiene sus tres secciones obligatorias. En el primer caso puede ocurrir que las instrucciones interiores del bucle nunca se ejecuten (si la primera vez que se evalúa la condición resulta como false). El bucle while tiene dos posibles sintaxis: while (condición de continuidad){ Instrucciones a ejecutar en forma repetitiva } do{ instrucciones a ejecutar en forma repetitiva }while(condición de continuidad).2. Su uso resulta recomendable cuando no conocemos a priori el número de iteraciones que debemos realizar.Curso: BSI-03 Programación I Universidad Latina Ejemplo: Salida del programa En el ejemplo anterior se declara una variable de tipo int en la línea 4 (for).  Declaración e inicialización.2. En ambos casos se itera o repite mientras que la “condición de continuidad” se cumpla.

la semántica en este ejemplo es la misma que en el anterior (se imprimen los valores de 1 a 4). y 4. En nuestro ejemplo también crearíamos un bucle infinito si olvidáramos las llaves delimitadoras del ámbito del bucle. pero se ha escogido este ejemplo sencillo para mostrar una primera implementación del bucle while. 10 . Puesto que conocemos a priori el número de iteraciones sería más adecuado utilizar un bucle for. En la línea 7 se establece la condición de continuidad del bucle (se itera mientras que i<=4). La línea 9 se encarga de imprimir el valor de í y la línea 10 de incrementarlo. 3.Curso: BSI-03 Programación I Universidad Latina Ejemplos: En el siguiente ejemplo se muestra una implementación muy sencilla del bucle while en la que se pretende imprimir los números 1. En el ejemplo se declara una variable de tipo int en la línea 6 y se inicializa a 1. El detalle de la ejecución varía respecto a que la condición de continuidad se evalúa al final en lugar al comienzo del bucle. A continuación se muestra la forma alternativa de utilizar un bucle while : do{}while(condición). esta variable actuará como contador de iteraciones en el bucle. Un error muy frecuente cuando se codifica un bucle while es olvidar incrementar al contador (línea 10). generando un bucle infinito. 2.

Puede volver a organizar estas áreas para personalizar el entorno de Desarrollo de NetBeans con el fin de que se ajuste a sus necesidades particulares de desarrollo. iconos y menús de la ventana. Figura 1.  Archivos: Permite encontrar y editar cada uno de los diferentes recursos de su aplicación. vera una ventana similar a la que se muestra en la figura 1. el área que se ubica en el extremo izquierdo del Entorno. así como las aplicaciones que construirá con NetBeans. El panel de Workspace Cuando inicie por primera vez NetBeans. Cada una de las áreas tiene un propósito específico en el entorno. Panel Workspace Barra de herramientas Standard Barra Build Página de inicio Panel Output 11 . EL ENTORNO DE DESARROLLO DE NETBEANS Construcción de su primera aplicación con NetBeans. incluyendo los diseños. Aunque NetBeans cuenta con más herramientas de las que usted probablemente utilizaría en cualquier otro trabajo de desarrollo de aplicaciones (incluso más de las que aprendería a utilizar en todo este manual). Ventana de Apertura de NetBeans IDE. Después que inicie el entorno de desarrollo. con el fin de observar directamente como se organizan cada una de las áreas y como puede modificarlas y alterar la organización. El workspace muestra las partes de su aplicación en dos formas distintas:  Proyectos: Permite navegar y manipular su código fuente. Esta área se conoce como workspace y será su clave para navegar a través de los diversos componentes y partes de sus proyectos de desarrollo.7. Inicialmente nos enfocaremos en aprender acerca del entorno de desarrollo de NetBeans y de algunas de las herramientas que proporciona para la construcción de aplicaciones.1 en Español en su computadora. limitó el enfoque a las principales herramientas que utilizara a lo largo de este manual.Curso: BSI-03 Programación I Universidad Latina 4. El entorno de desarrollo de NetBeans: Deberá iniciar el programa de NetBeans IDE 6.

La primera es el hacer clic con el botón derecho en el área de las barras de herramientas.Curso: BSI-03 Programación I Universidad Latina El panel Output El panel Output tal vez no esté visible al iniciar NetBeans por primera vez. pegar y para una gran variedad de comandos que son sumamente útiles. Esta acción abre el menú contextual que se muestra en la figura 1. copiar. Una vez compilada su primera aplicación. El panel Output es el lugar donde presenta cualquier información que deba proporcionarle el programa. también es el lugar donde se desplegaran las ventanas necesarias para editar el código fuente. dicho panel aparecerá en la parte inferior del entorno y permanecerá abierto hasta que usted decida cerrarlo. el cual permite activar y desactivar las diversas barras de herramientas. El área de edición La parte del extremo derecho del entorno de desarrollo es el área de edición. Ahí es donde usted realizara toda su edición cuando utilice NetBeans. Hay muchas otras barras de herramientas disponibles.  La barra Build le ofrece los comandos de construcción y de ejecución que seguramente utilizara cuando desarrolle y pruebe sus aplicaciones. Las Barras de Menús Al ejecutar NetBeans por primera vez se desplegaran dos barras de herramientas debajo de la barra de menús. Además es donde usted podrá observar las instrucciones de progreso del compilador.2. cortar. a demás puede personalizar y crear las suyas propias para adecuarlas a su mejor forma de trabajar. así como el lugar donde se desplegará la ventana necesaria para diseñar su aplicación. las advertencias y los mensajes de error. En el menú Ventana podrá activar cualquiera de las ventanas o paneles que no estén visibles en la pantalla de NetBeans. Figura 2 Menú para activar y desactivar barras de herramientas Como volver a abrir alguna de las ventanas de NetBeans que ya no estén visibles. este se abrirá automáticamente cuando NetBeans necesite desplegar un mensaje. Las dos barras de herramientas que se abren inicialmente son las siguientes:  La barra de herramientas Standard contiene la mayoría de las herramientas estándar para abrir y guardar archivos. Como reorganizar el entorno de NetBeans El programa ofrece una forma sencilla de reorganizar su entorno de desarrollo. Después de que cierre el panel output. 12 .

8 en Español  Elija en el menú Archivo la opción Proyecto Nuevo…  Elija la lista de Categorías: Java y de la lista de tipos de Proyectos Aplicación Java. Haga clic en Siguiente >. 13 . PRIMER PROYECTO EN JAVA PASOS  Abra el programa NetBeans IDE 6.Curso: BSI-03 Programación I Universidad Latina 5.

ha construido la función principal o programa principal que se ejecuta inicialmente al correr su programa. Presione el botón Terminar. Terminado el paso anterior. para buscar la ruta o dirección. C 14 . La pantalla que se mostrada será la siguiente: A El icono de taza de café identifica el proyecto B Es aquí esta línea donde se llama al primer formulario inicial de su programa. Ponga el nombre HolaMundoJava. Recuerde que si lo desea lo puede guardar en su llave maya.Curso: BSI-03 Programación I Universidad Latina Elija el nombre y la ruta donde desea guardar el proyecto. dando clic en el botón Examinar….

El programa guarda el formulario en forma automática dentro del proyecto. con un archivo llamado holamundojava abierto. el cuál será frmHolaMundoJava. incluyendo los archivos fuente.Curso: BSI-03 Programación I Universidad Latina El proyecto se habrá creado y se abrirá el IDE. las librerías de las que depende tú código y así sucesivamente. la cual puedes utilizar para navegar rápidamente entre los elementos de la clase seleccionada. Presiona el botón Terminar. Aparecerá la siguiente ventana. 15 . La ventana del Navegador. la cual contiene una vista de árbol de los componentes del proyecto. Coloque de la paleta Swing un objeto Etiqueta. Deberías de ver los siguientes componentes: La ventana de Proyectos. Presiona el botón derecho sobre el paquete holamundojava posteriormente la opción Formulario Form… . Elije la opción Nuevo y Aparecerá la siguiente ventana donde le solicita el nombre del formulario. La ventana de Edición de Código. CREACIÓN DE FORMULARIO Posteriormente vamos a crear un formulario (pantalla) que sirva como interfaz gráfico del proyecto. un Objeto Campo de Texto y un Botón. el texto frm indica que es un formulario y HolaMundoJava que nos servirá para nombrar el formulario.

Objeto JLabel1 JTextField1 Text Nombre Dejar blanco Name etiNombre txtNombre JButton1 Procesar btnProcesar Para incluir el código fuente al programa debemos presionar doble clic sobre el botón Procesar. esta acción nos llevará al editor de código fuente. 16 .Curso: BSI-03 Programación I Universidad Latina txtNombre btnProcesar Cambia la propiedad text y el nombre de los objetos colocados según la siguiente tabla. donde digitaremos la siguientes instrucciones en java.

que tienen que hacer referencia al uso que se va a dar a ese control.JOptionPane. seguidas por otras letras (La primera mayúscula. de la lista desplegable elija la opción Run File.Curso: BSI-03 Programación I Universidad Latina Presione un clic sobre el bombillo. Control Abreviatura Formulario JFrame frm Etiqueta Botón Botón de 2 posiciones Casilla de activación Botón de opción Grupo de botones Lista desplegable Campo de texto Área de texto Tabla Lista de la AWT eti btn btn chk opc gropc cbo txt txt Tbl lst 17 . ABREVIATURA DE LOS NOMBRE DE LOS CONTROLES BÁSICOS DE JAVA Existe una convención para los nombres de los controles: Se utiliza siempre tres letras minúsculas que indican el tipo de control. de la lista desplegable elija Añadir “import” a javax. La salida será la siguiente 6.swing. EJECUTAR “CORRER” EL FORMULARIO Presione el botón derecho sobre cualquier parte del área de código. a modo de separación) libremente escogidas por el usuario.

Recuerde que si lo desea lo puede guardar en su llave maya.9.  Elija el nombre y la ruta donde desea guardar el proyecto. para buscar la ruta o dirección. 18 . EJERCICIOS EN NETBEANS 6. 7.8 en Español  Elija en el menú Archivo la opción Proyecto Nuevo…  Elija la lista de Categorías: Java y de la lista de tipos de Proyectos Aplicación Java. Presione el botón Terminar. Ponga el nombre ProyectoI.Curso: BSI-03 Programación I Universidad Latina 7. Haga clic en Siguiente >. dando clic en el botón Examinar…. Creación del proyecto  Abra el programa NetBeans IDE 6.1.1 EN ESPAÑOL OBJETIVO: Elaborar la interfaz gráfica de los ejercicios realizados en las prácticas de Diagramas de Flujos (D-F) realizados en las primeras semanas de programación I.

el texto frm indica que es un formulario y menú que nos servirá como el menú para acceder a los demás formularios ó pantallas de cada ejercicio.Curso: BSI-03 Programación I Universidad Latina Al presionar el botón Terminar. ha construido la función principal o programa principal que se ejecuta inicialmente al correr su programa. el cuál será frmMenu. Para ello haz clic en el botón derecho sobre el paquete proyectoi. Creación de formulario principal (menú para acceder a los diferentes formularios)  Vamos a crear un formulario que sirva como menú para acceder a todas las pantallas o formularios de los ejercicios realizados con Diagramas de Flujo pero realizados en Java. Nota: Este formulario es guardado en forma automática dentro del ProyectoI creado.2. 7. elije la opción New y posteriormente la opción JFrame Form…  Aparecerá la ventana donde le solicita el nombre del formulario. 19 . La pantalla que se mostrada será la siguiente: El icono de taza de café identifica el proyecto Es aquí esta línea donde se llama al primer formulario inicial de su programa.

elige de los bordes disponibles la opción TitleBorder  20 . se abrirá la siguiente ventana.Curso: BSI-03 Programación I Universidad Latina  Aparecerá la siguiente ventana   Coloque sobre el frmMenu un objeto jPanel que seleccionará de la Paleta Contenedores. (Como las formas de Word)   Seleccione el objeto JPanel En la venta de propiedades de este objeto haz clic sobre la propiedad border y cambia los siguiente: Al elegir la propiedad border donde están los tres puntitos *…+. Ajuste el tamaño del JPanel al tamaño del frmMenu.

Propiedad Text Calcular interés ganado Calculo Total del Salario Presupuesto Hospital Ganancia Articulo Inversión Dinero Leer dos números Tipo de Jubilación Llantera “Ponchadas” Venta de Naranjas Color bolita Propiedad Name btnInteresGanado btnCalcularSalario btnPresupuestoHospital btnGananciaArticulo btnInversionDinero btnLeer btnJubilación btnLlantera btnNaranjas btnBolitas  7. Elije la opción Nuevo y posteriormente la opción Formulario Form… Escribe el nombre al formulario (frmInteresGanado). Estos se encuentran en la paleta Swing  Cambia el nombre de los botones por un nombre significativo. Cree un programa en NetBeans que resuelva este enunciado. luego escribe nombre de significativo de cada botón sin dejar espacios y respetando la mayúscula a manera de separación. Luego presiona el botón Terminar. Creación del formulario para el ejercicio cálculo de interese ganado Suponga que un individuo desea invertir su capital en un banco y desea saber cuánto dinero ganara después de un mes si el banco paga a razón de 2% mensual la tasa de interés. Escribe en el espacio Title lo siguiente: Menú de Opciones Coloca 10 controles JButton sobre el JPanel. Recuerda las abreviaturas dadas para cada tipo de control la del JButton es: btn. 21 .Curso: BSI-03 Programación I Universidad Latina  . esta opción permite poner un titulo y un borde al JPanel.  Para crear un nuevo formulario del tipo formulario JFrame.3. Para cambiar el nombre del primer botón presiona el botón derecho del Mouse sobre el botón y se desplegará un menú elige la opción change variable name y sustituye JButton1 por btnInteresGanado. presiona el botón derecho sobre el paquete proyectoi  .

22 . en la venta de propiedades de este objeto haz clic sobre la propiedad border y cambia lo siguiente: Al elegir la propiedad border…. esta opción permite poner un titulo y un borde al JPanel. Escribe en el espacio Title lo siguiente Cálculo de interés ganado El JPanel tomará este aspecto Agrega los objetos sobre el JPanel: cuatro JLabel. tres JTextField y un JButton de la paleta Swing.Curso: BSI-03 Programación I Universidad Latina   En el paquete proyectoi se agrego el archivo del formulario: frmInteresGanado. se abrirá la siguiente ventana. elige de los bordes disponibles la opción TitleBorder .    Coloque sobre el frmInteresGanado un objeto JPanel que escogerá en la Paleta Contenedores Swing Ajuste el tamaño del JPanel. Seleccione el objeto JPanel. Ya hay dos formularios en el proyecto frmMenu y frmInteresGanado.

)  Cambia los text y el nombre según la siguiente tabla. Objeto JLabel1 JLabel2 JLabel3 JLabel4 JTextField1 JTextField2 JTextField3 JButton1 JFrame Text Capital invertido Interés ganado Total en el banco Name Editable etiCapital etiInteres etiTotal etiImagen txtCapital txtInteres False txtTotal False Calcular btnCalcular La propiedad Title: Interés ganado  Hasta el momento hemos creado la Interfaz Gráfica de Usuario (IGU) que es la pantalla con que el usuario interactúa. Para incluir el código fuente al programa debemos presionar clic derecho sobre el botón Calcular.Curso: BSI-03 Programación I Universidad Latina (Dentro del CD de programación I hay una carpeta con el nombre Imágenes. (Ó podemos darle doble clic encima del botón calcular )  23 . nos falta agregar el código o instrucciones en el lenguaje java que serán las encargadas de realizar las peticiones del usuario. el Jlabel4 en la propiedad icono… Importar puede asignarle la imagen que muestra la siguiente figura del formulario terminado. Debe elegir la opción Events\Action\actionPerformed lo que nos llevará al editor donde digitaremos la instrucciones en java. Para ello utilizaremos el botón etiquetado Calcular. esta acción desplegará un menú de opciones como se muestra en la figura.

//declara e inicializa en 0 la variable interes double total=0.getText()). Esta acción desplegará la siguiente pantalla en la cual introducimos una cantidad en el capital y luego presionamos el botón calcular para que muestre el resultado del cálculo del interés y el monto total en el banco.setText(String.parseDouble(txtCapital. //declara e inicializa en 0 la variable total //Lectura de datos de entrada //Captura la información del la caja de texto capital y se la asigna a //la variable capital convertida en dobule capital=Double.awt. //declara e inicializa en 0 la variable capital double interes=0. } Para utilizar la instrucción que muestra el mensaje.setText(String. //Procesos interes=capital*0. total=capital+interes. 24 .  Para “correr” el programa y utilizarlo como “usuario” presionamos clic derecho en cualquier parte del código para que se despliegue un menú emergente del cual escogeremos la opción “Run File”.0.valueOf(total)).0. se presenta la siguiente pantalla NetBeans se encargó de incluir el código inicial para nuestro objetivo (el texto que se encuentra en las líneas sombreadas de celeste).02.ActionEvent evt) { //Declaración e Inicialización de variables double capital=0.0. txtTotal.event. borramos la línea //TODO add your handling code here: añadir su código aquí. antes se debe utilizar la librería correspondiente. Y digitamos el siguiente código: private void btnCalcularActionPerformed(java. //Salida de resultados txtInteres.valueOf(interes)).Curso: BSI-03 Programación I Universidad Latina  Luego de realizado el paso anterior.

Ubicarse en el archivo frmMenu del panel izquierdo. 7. 2. En la ventana del código fuente. Sustituir la instrucción //TODO code application logic here por la instrucción que se encuentra en el portapapeles (new frmMenu(). Seleccionar y copiar (Ctrl + C) la instrucción que es la encargada de cargar el formulario Ubiarse en el archivo Main del panel izquierdo 5. Buscar el código fuente donde se ubica la función que “carga” el formulario 3. 4.4.setVisible(true). Utilizar Ctrl + V. Pasos para cargar una ventana desde la función principal Main: 1. Corra el programa. desde la barra Generar de NetBeans. 25 .Curso: BSI-03 Programación I Universidad Latina  Desde la barra Generar de NetBeans se puede correr el programa o función principal con los iconos Pero para ello se debe incluir el código necesario para que despliegue el formulario del menú que accede a los programas.). 6.

setVisible(true). Correr el programa. Coloque sobre el frmCalculoSalario un objeto JPanel que escogerá en la Paleta Contenedores Swing . Copiar en el portapapeles la instrucción que “carga el formulario” new frmInteresGanado(). Agregue los controles necesarios y cambie las propiedades Text y Name de cada control.6. se cierra también el formulario frmMenu. Un vendedor recibe un sueldo base más un 10% extra por comisión de sus ventas. Al presionar con el mouse este botón se cargue el formulario frmCalculoInteres 1. el vendedor desea saber cuánto dinero obtendrá por concepto de comisiones por las tres ventas que realiza en el mes y el total que recibirá en el mes tomando en cuenta su sueldo base y comisiones.Curso: BSI-03 Programación I Universidad Latina 7.7. 2. Debes 7. Acceder desde el Menú Principal al Formulario Interés Ganado Pasos para cargar desde el botón Calcular interés ganado del formulario Menú al formulario frmInteresGanado. Propiedad Text Monto salario base Monto venta 1 Monto venta 2 Monto venta 3 Comisión obtenida de ventas Salario total obtenido Propiedad Name 26 . 3. Creación del formulario para el ejercicio calculo de salario. cambiar la propiedad defaultCloseOperation (del frmInteresGando) por Dispose para que el menú se mantenga visible. 5. Ubicarse en la ventana del código fuente del frmInteresGanado. Ubicarse en la ventana diseño del formulario frmMenu Presionar doble clic sobre el botón Calcular interés ganado Pegar el código previamente copiado en el portapapeles de Windows 6. 4. 7. Si al cerrar el formulario frmInteresGanado.5. Ajuste el tamaño del JPanel al tamaño del frmCalculoSalario.     Objeto JLabel1 JLabel2 JLabel3 JLabel4 JLabel5 JLabel6 Cree un nuevo formulario JFrame con nombre: frmCalculoSalario.

0. //Salida de datos txtComision. venta3=0.getText()). venta2=Double. venta1=0. salarioTotal=0.getText()). venta3=0.awt.parseDouble(txtVenta2.setText(String.0. Las instrucciones anteriores declaran 6 variables de tipo double y las inicializa a 0.parseDouble(txtVenta3.parseDouble(txtVenta1.valueOf(comision)).getText()).0.0.0.0. 27 .setText(String.parseDouble(txtVenta1.event.0. //Proceso calculo del salario total salarioTotal=salarioBase+comision.getText()).0. el monto de cada una de las comisiones. //Proceso Cálculo de comisión comision=(venta1+venta2+venta3)*0. Calcula el monto de la comisión y el monto total del salario. salarioTotal=0.10.Curso: BSI-03 Programación I Universidad Latina JTextField1 JTextField2 JTextField3 JTextField4 JTextField5 JTextField6 JButton1 txtSalarioBase txtVenta1 txtVenta2 txtVenta3 txtComsion txtSalarioTotal btnCalcular Calcular salario total El objetivo de este sencillo programa es capturar el monto del salario base.venta2=0.10. private void btnCalcularActionPerformed(java.getText()). //Proceso cálculo de comisión comision=(venta1+venta2+venta3)*0.0. como las tres variables son del mismo tipo se pueden declarar en la misma línea separada por coma y al final lleva punto y coma . //Proceso calculo del salario total salarioTotal=salarioBase+comision. venta1=Double.parseDouble(txtSalarioBase.ActionEvent evt) { // Declaracion e Inicialización de Variables double salarioBase=0. venta1=Double. Para el salario final sumar el salario base más el monto del porcentaje obtenido de las comisiones. En resumen. calcular el 10% del resultado de la suma de las comisiones. //Lectura de datos de entrada salarioBase = Double.parseDouble(txtVenta3.0. Luego sumar las comisiones. captura el salario base digitado en la caja de texto txtSalarioBase. venta2=Double. double comision=0.0.parseDouble(txtSalarioBase.parseDouble(txtVenta2. txtSalarioTotal. venta1=0. double comision=0.0. Después de tener el valor del salario base y el valor de cada una de las ventas realizadas en el mes que se capturaron en las instrucciones anteriores. venta3=Double.venta2=0.getText()).getText()).getText()). lo convierte en double y se lo asigna a la variable salarioBase. //Lectura de datos de entrada salarioBase = Double.valueOf(salarioTotal)). Hace lo mismo con los montos de cada una de las tres ventas. } Detalle de las instrucciones: // Declaración e Inicialización de Variables double salarioBase=0. venta3=Double.

valueOf(salarioTotal)).Curso: BSI-03 Programación I Universidad Latina //Salida de datos txtComision. pero como las variables comisión y salarioTotal son double y las cajas solo pueden mostrar String “cadena” las convierte primero en cada.setText(String. Formulario presupuesto hospital En un hospital existen tres áreas.valueOf().  Para “correr” el programa y utilizarlo como “usuarios” presionamos clic derecho en cualquier parte del código para que se despliegue un menú del cual escogeremos la opción “Run File”. para cualquier monto presupuestal. Cambia la propiedad Text y el Name de cada control según la siguiente tabla. antes de mostrarlas utilizando: String. Las dos instrucciones anteriores muestran el valor de la comisión y el valor del salario total en las cajas correspondiente. Pediatría. 7.  Agregue al botón Cálculo total del salario del formulario frmMenú el código necesario para que permita mostrar el formulario frmCalculoSalario al presionar el botón. Ginecología. El presupuesto anual del hospital se reparte conforme a la siguiente tabla: ÁREA PORCENTAJE DE PRESUPUESTO Ginecología 40% Traumatología 35% Pediatría 25% Cree un programa que permita obtener la cantidad de dinero que recibirá cada área.valueOf(comision)).setText(String. Objeto JLabel1 JLabel2 JLabel3 JLabel4 JTextField1 JTextField2 JTextField3 JTextField4 JButton1 Text Monto del presupuesto Ginecología 40% Pediatría 25% Traumatología 35% Name etiPresupuesto etiGinecologia etiPediatria etiTraumatologia txtPresupuesto txtGinecologia txtPediatria txtTraumatologia btnCalcular Calcular 28 . Traumatología.8. txtSalarioTotal. Esta acción desplegará la ventana en la cual introducimos un salario base en la caja de texto salario base y luego introducir los valores de cada una de las ventas realizadas en el mes y por último presionamos el botón calcular para que muestre el resultado de la comisión y del salario total.

Calcula el % correspondiente a cada área según lo establecido por el enunciado del problema txtGinecologia. txtGinecologia.setText(String.setText(String.valueOf(traumatologia)).parseDouble(txtPresupuesto. ginecologia=presupuesto*0. double precioVenta=0. pediatria=0. 4 JTextField y un 1 JButton Código fuente private void btnCalcularActionPerformed(java.event. traumatologia=0. traumatologia=presupuesto*0.9. ginecologia=presupuesto*0.valueOf(pediatria)). Ejercicio #7 del folleto Introducción al desarrollo de los Algoritmos El dueño de una tienda compra un artículo a un precio determinado. Captura de la cajita de texto txtPresupuesto el valor.setText(String. Código fuente private void btnCalcularActionPerformed(java. traumatologia=presupuesto*0.event.40. pediatria=presupuesto*0. txtTraumatologia.35. txtTraumatologia. 3 JLabel.valueOf(traumatologia)). txtPediatria.ActionEvent evt) { double presupuesto=0. txtPediatria.ActionEvent evt) { double precioCompra=0. 4 JLabel.valueOf(ginecologia)).awt. 7. traumatologia=0. pero antes los convierte en Strings. presupuesto=Double. Objeto Text JLabel1 Precio Compra: JLabel2 Ganancia30%: JLabel3 Precio Venta: JTextField1 JTextField2 JTextField3 JButton1 Calcular JButton2 Limpiar Controles utilizados en el formulario: 1 JPanel.getText()).25.valueOf(pediatria)).setText(String.40. 3 JTextField y 2 JButton.setText(String. double ganancia=0.awt. pediatria=presupuesto*0. } Descripción de sentencias o instrucciones: double presupuesto=0. Muestra en las cajitas de texto los valores calculados de los porcentajes.Curso: BSI-03 Programación I Universidad Latina Controles utilizados en el formulario: 1 JPanel. Name etiPrecioCompra etiGanancia etiPrecioVenta txtPreciCompra txtGanancia txtPrecioVenta btnCalcular btnLimpiar 29 . ginecologia=0.getText()). Cambia la propiedad Text y el Name de cada control según la siguiente tabla. Obtener el precio en que lo debe vender para obtener una ganancia del 30%.parseDouble(txtPresupuesto.25. //Declara tres variables de tipo double y las inicializa con valor 0 presupuesto=Double. ginecologia=0. Formulario ganancia artículo.35. lo convierte en doublé y se lo asigna a la variable presupuesto. pediatria=0.setText(String.valueOf(ginecologia)).

txtGanancia.Curso: BSI-03 Programación I Universidad Latina precioCompra = Double. txtPrecioVenta.ActionEvent evt) { txtPrecioCompra.monto2=0.30. txtPrecioVenta.setText(String.valueOf(precioVenta)). } Limpia el contenido de las tres cajitas de texto. ganancia = precioCompra*0.ActionEvent evt) { double monto1=0. Captura de la cajita de texto txtPrecioCompra el valor ingresado por el usuario. txtPrecioVenta. double porc1=0.parseDouble(txtPrecioCompra. Obtener el porcentaje que cada quien invierte con respecto a la cantidad total invertida.setText(String. Declara tres variables de tipo double y las inicializa con valor 0 precioCompra=Double.setText("").getText()).event.porc3=0.setText(""). y los porcentajes que corresponden a cada monto.setText(String.valueOf(ganancia)).parseDouble(txtPrecioCompra. 30 . Formulario inversión de dinero Ejercicio #8 del folleto Introducción al desarrollo de los Algoritmos.porc2=0.awt. Name txtMonto1 txtMonto2 txtMonto3 txtPorc1 txtPorc2 txtPorc3 txtTotal btnCalcular btnLimpiar Declara las variables para guardar el monto invertido por cada persona. lo convierte en double y se lo asigna a la variable precioCompra.valueOf(ganancia)).getText()).setText(String. para hace la prueba con otro artículo 7. txtGanancia. precioVenta = precioCompra + ganancia.setText(""). total=0. } Descripción de sentencias o instrucciones: double precioCompra=0. txtGanancia.30.event.valueOf(precioVenta)).10.monto3=0. private void btnLimpiarActionPerformed(java. Cambia la propiedad Text y el Name de cada control según la siguiente tabla. Calcula el % correspondiente a la ganancia y calcula el valor al que debe vender el artículo a los clientes. Muestra en las cajitas de texto los valores calculados: la ganancia y el precio de venta.awt. Objeto Text JTextField1 JTextField2 JTextField3 JTextField4 JTextField5 JTextField6 JTextField7 JButton1 Calcular JButton2 Limpiar private void btnCalcularActionPerformed(java. double precioVenta=0. ganancia = precioCompra*0. Cada una de ellas invierte una cantidad distinta. double ganancia=0. precioVenta = precioCompra + ganancia. Tres personas deciden invertir su dinero para fundar una empresa.

} Pone el texto . total=monto1+monto2+monto3.getText()). porc3=monto3*100/total. } Limpia las cajitas de texto para realizar nuevo cálculos.parseDouble(txtMonto1.parseDouble(txtMonto2.parseDouble(txtMonto3.setText(String.setText("").getText()).rint redondea los decimales. Controles utilizados en el formulario: 1 JButton.valueOf(Math. Math.getText()). porc1=monto1*100/total. txtPorc3.setText(String. txtPorc1.setText("").rint(porc1))). txtTotal. 2 JLabel. Los resultados de los cálculos.setText("").setText("").valueOf(Math.Curso: BSI-03 Programación I Universidad Latina monto1=Double. private void btnLimpiarActionPerformed(java.setText(String. txtPorc1.awt.rint(porc3))). txtPorc3. porc2=monto2*100/total.setText("").valueOf(total)). Formulario comparar dos números Leer 2 números. Captura los montos que fueron digitados para cada uno de los inversionistas. txtTotal. txtPorc2. 2 JTextField y 2 31 . monto2=Double.setText(String.11.valueOf(Math.setText(""). Calcula el total de lo invertido por las tres personas Monto1 X% Total  100% X%=Monto1*100/total Calcula el porcentaje que invierte cada persona.setText("").rint(porc2))). txtPorc2. Cambia la propiedad Text y el Name de cada control según la siguiente tabla.setText en las cajitas. si son iguales que los multiplique. sí el primero es mayor que el segundo que los reste y si no que los sume.event. con las sencilla regla de tres.ActionEvent evt) { txtMonto1. txtMonto3. 7. txtMonto2. monto3=Double. Código fuente Objeto JTextField1 JTextField2 JButton1 JButton2 Text Calcular Limpiar Name txtOperación txtResultado btnCalcular btnLimpiar JPanel.

por antigüedad joven y por antigüedad adulta. txtOperacion.ActionEvent evt) { int edad=0. Objeto JTextField1 JTextField2 JTextField3 JButton1 JButton2 Text Calcular Limpiar Name txtEdad txtAntiguedad txtTipo btnProcesar btnLimpiar Captura los datos de entrada de las cajitas de texto Utiliza un Y lógico Si la edad es mayor o igual a 60 y los años trabajados son menor a 25 años.setText("La jubilación es por: ANTUGÜEDAD JOVÉN. Sino Sume los dos números y guarda el resultado en la variable resultado. Declara las variables necesarias edad=Integer.setText("Resta"). private void btnLimpiarActionPerformed(java.valueOf(resultado)). Las personas adscritas a la jubilación por edad deben tener 60 años o más y una antigüedad en su empleo de menos de 25 años.awt. Las personas adscritas a la jubilación por antigüedad joven deben tener menos de 60 años y una antigüedad en su empleo de 25 años o más.awt. else if((edad >= 60) && (antiguedad > 25)) txtTipo.event.setText(""). Las personas adscritas a la jubilación por antigüedad adulta deben tener 60 años o más y una antigüedad en su empleo de 25 años o más. antiguedad=Integer."). } else{ resultado=num1+num2.setText(String.ActionEvent evt) { txtOperacion.event.getText()). Sino preguntar si el valor de num1 es menor que num2 Reste los dos números y guarda el resultado en la variable resultado. } 32 . Imprime la jubilación es por EDAD.setText("La jubilación es por: EDAD ADULTA. Formulario jubilación El IMSS requiere clasificar a las personas que se jubilaran en el año de 1997. else if((edad < 60) && (antiguedad > 25)) txtTipo. Limpia las cajitas de texto para realizar nuevo cálculos. antiguedad=0. } txtResultado.setText("Multiplicación").parseInt(txtEdad. else txtTipo. Determinar por medio de un programa en java en qué tipo de jubilación quedara adscrita una persona.getText()).").setText("No tiene derecho a jubilarse"). Código fuente private void btnProcesarActionPerformed(java. } else if(num1 > num2) { resultado=num1-num2. Sino … if((edad >= 60) && (antiguedad < 25)) txtTipo.Curso: BSI-03 Programación I Universidad Latina if(num1 = = num2) { resultado=num1*num2.setText("La jubilación es por: EDAD. } Si el valor de num1 es igual al valor de num2 Multiplique los dos números y guarda el resultado en la variable resultado.setText("")."). txtResultado. txtOperacion. txtOperacion. Existen tres tipos de jubilaciones: por edad. } 7.parseInt(txtAntiguedad.setText("Suma").12.

Curso: BSI-03 Programación I Universidad Latina private void btnLimpiarActionPerformed(java.ActionEvent evt) { int cantidad=0.valueOf(precio)).14. precio=0.setText("").awt. Formulario venta de manzanas Objeto JTextField1 JTextField2 JTextField3 JTextField4 JButton1 JButton2 Text Name txtKilos txtPrecio txtDescuento txtTotal btnProcesar btnLimpiar Venta de Manzanas Calcular Limpiar 33 .setText(""). cantidad=Integer. Objeto Text Name JTextField1 txtCantidad JTextField2 txtPrecio JTextField3 txtTotal JButton1 Calcular btnProcesar JButton2 Limpiar btnLimpiar Código fuente private void btnProcesarActionPerformed(java.valueOf(total)).event. Limpia las cajitas de texto para volver a usarlas txtTipo.getText()).setText(""). total=precio*cantidad. txtTotal.parseInt(txtCantidad.setText(String. txtAntiguedad. if(cantidad<5) precio=3000. } 7. total=0. Formulario llantera En una llantera se ha establecido una promoción de las llantas marca "Ponchadas". dicha promoción consiste en lo siguiente  Si se compran menos de cinco llantas el precio es de ¢ 3 000 cada una.   ¢ 2 500 si se compran de cinco a 10 y de ¢ 2 000 si se compran más de 10 Obtener la cantidad de dinero por cada una de las llantas que compra y el total de la compra.ActionEvent evt) { txtEdad. txtPrecio.event.awt.13. } 7. else precio=2000. else if((cantidad>=5)&&(cantidad<=10)) precio=2500.setText(String.

setText("Amarillo"). else if((kilos>=6)&&(kilos<=10)) descuento=total*0. PC. } 7.getText()). descuento=0. case 1: //el uno será usuado para el color verde descuento=compra*0.setText("Verde"). total=kilos*precio.awt.valueOf(descuento)). break.showMessageDialog(null.nextDouble() * 5. total=total-descuento.setText(String.25. entre el rango 0 y 5 que serán color= (int)(rnd.parseDouble(txtCompra.15. txtDescuento.Curso: BSI-03 Programación I Universidad Latina Código fuente private void btnProcesarActionPerformed(java.setText(String. { case 0: //el cero será usuado para el color blanco descuento=0. break.10.descuento=0. precio=0. precio=Integer.20.10. Objeto JTextField1 JTextField2 JTextField3 JTextField4 JButton1 Text Name txtCompra txtColor txtDescuento txtTotal btnProcesar Calcular Código fuente private void btnProcesarActionPerformed(java."). txtColor.equals("")) JOptionPane. txtColor.parseInt(txtPrecio.setText("Blanco").getText()).ActionEvent evt) { Random rnd = new Random(). if(txtCompra.getText(). Color adquiere un valor aleatorio. int color=0. Formulario color de bolita Ejercicio #25 del folleto Introducción al desarrollo de los Algoritmos. sustituidos por los colores del switch(color) enunciado.event. case 2: //el dos será usuado para el color amarillo descuento=compra*0. double compra=0. else if((kilos>=3)&&(kilos<=5)) descuento=total*0.0). total=0. txtTotal.getText())."Digite el monto de compra.awt. if((kilos>0)&&(kilos<=2)) descuento=0.parseInt(txtKilos.event. kilos=Integer. else{ es decir al azar escogido por la compra=Double. total=0. 34 . else descuento=total*0.15.valueOf(total)).ActionEvent evt) { double kilos=0. txtColor.

setText(String. 35 .Random. break. Es decir para poder utilizar las ventanas de mensajes incluye la librería import javax.until.setText("Rojo"). } total=compra-descuento.valueOf(descuento)). case 3: //el tres será usuado para el color azul descuento=compra*0. es decir donde presenta las x rojas deben incluir las libreras necesarias. case 4: //el cero será usuado para el color rojo descuento=compra.. txtColor.. } } Para corregir los errores que presenta el código.50. Para utilizar los números aleatorios incluye la librería import java.valueOf(total)) .Curso: BSI-03 Programación I Universidad Latina break. txtDescuento. txtTotal. break. txtColor.swing.JOptionPane.setText("Azul").setText(String.

pero al ser controles campos de texto solo se obtiene de ellos datos tipo texto o se pone en ellos datos tipo texto. Estos controles tienen gran cantidad de métodos entre algunos de los más usados getText() y setText(). 36 . UTILIZACIÓN DE LAS CAJAS DE TEXTO PARA CAPTURA DE DATOS Los controles campos de texto se utilizan frecuentemente en los programas para obtener los datos del usuario necesarios para procesar la información. para convertir a un tipo int. calcula el 30% de aumento en el salario y mostrar cual es su nuevo salario. Ejemplo: Este formulario nos permite obtener el nombre y salario actual de un trabajador.Curso: BSI-03 Programación I Universidad Latina 8. Estos métodos se utilizan para obtener y poner los datos que contienen respectivamente. aunque la información sea numérica NetBeans la trata como texto.parseInt(). Por lo tanto debemos utilizar las funciones que nos permiten convertir los datos que debemos obtener o poner en las cajas de texto. El código para realizar este enunciado es el siguiente: También tenemos la función Integer.

y getText para recoger el texto del cuadro de texto. Ejercicio 3: Se pide que realice un programa en java cuya ventana principal incluya los siguientes componentes: Un cuadro de texto llamado txtTexto. Cuando se pulse el botón btnVisuCiudad. lo que escriba pasará inmediatamente a la etiqueta etiTexto. se debe ocultar la etiqueta etiNombre. Un botón con el texto “Ocultar Ciudad”. Un botón con el texto “Visualizar Nombre”. El nombre será etiTexto1. Una etiqueta vacía (sin texto dentro). (Tendrá que programar el evento actionPerformed) Tendrá que usar el método setText para colocar texto en la etiqueta y usar el método getText para recoger el texto escrito en el cuadro de texto. Cuando se pulse el botón btnOcultarCiudad. Un botón con el texto “Traspasa 1”. 37 . Cuando el usuario pulse el botón “Traspasa 2”. Una etiqueta vacía llamada etiTexto. Otra etiqueta vacía (sin texto dentro). El nombre será btnTraspasa2. Para hacer esto debe programar el evento actionPerformed de cada botón. (Tendrá que programar el evento keyPressed del cuadro de texto) Cuando el usuario pulse el botón “Vaciar” el texto contenido en el cuadro de texto y en la etiqueta se borrará. El programa funcionará de la siguiente forma: Cuando el usuario pulse el botón “Traspasa 1”. PRIMEROS PROGRAMAS Ejercicio 1: Realice un programa en java con las siguientes características: La ventana principal tendrá los siguientes elementos: Una etiqueta que contenga su nombre. lo que se haya escrito dentro del cuadro de texto se copiará dentro de la etiqueta 1. El nombre será btnTraspasa1. El nombre será etiTexto2. se debe visualizar la etiqueta etiNombre. Nombre de la etiqueta: etiCiudad Nombre del botón: btnOcultarNombre Un botón con el texto “Ocultar Nombre”. Para hacer esto programará el evento actionPerformed de cada botón. se debe ocultar la etiqueta etiCiudad. lo que se haya escrito dentro del cuadro de texto se copiará dentro de la etiqueta 2. Un botón con el texto “Traspasa 2”.Curso: BSI-03 Programación I Universidad Latina 9. Nombre de la etiqueta: etiNombre Nombre del botón: btnVisuNombre Una etiqueta que contenga su ciudad. El programa funcionará de la siguiente forma: Cuando el usuario escriba en el cuadro de texto txtTexto. Un botón con el texto “Visualizar Ciudad”. Usará el método setVisible de cada etiqueta para visualizarlas u ocultarlas. se debe visualizar la etiqueta etiCiudad. Nombre del botón: btnOcultarNombre Nombre del botón: btnVisuCiudad El funcionamiento del programa será el siguiente: Cuando se pulse el botón btnOcultarNombre. Ejercicio 2: Creará un programa java cuya ventana principal contenga los siguientes componentes: Un cuadro de texto. El nombre será txtTexto. Un botón con el texto “Vaciar” llamado btnVaciar. Cuando se pulse el botón btnVisuNombre. Usará el método setText para situar el texto en la etiqueta.

etiPal3 y etiPal4.Un botón con el texto “Agrandar”. .El usuario introducirá un nombre en el cuadro de texto txtNombre. Este botón se llamará btnCentro. Ejercicio 5: Debe realizar un programa java cuya ventana principal contenga los siguientes elementos: . Esta etiqueta debe tener un color de fondo.Un botón con el texto “Desactivar” llamado btnDesactivar. . Este botón se llamará btnEsquina.Un cuadro de texto llamado txtNombre. . las etiquetas con las palabras deben desaparecer.El usuario introducirá una ciudad en el cuadro de texto txtCiudad.Una etiqueta llamada txtFrase. Por ejemplo “Santa Cruz”. . entonces los dos cuadros de texto se desactivarán. El programa funcionará de la siguiente forma: . Debe usar el método setVisible de las etiquetas para ocultarlas o visualizarlas. .Cuando el usuario pulse el botón “Aceptar”.Un botón con el texto “Aceptar” llamado btnAceptar. Ejercicio 6: Debe realizar un programa java cuya ventana principal contenga los siguientes elementos: . Tendrá que usar el método setText para colocar el texto en la etiqueta y el método getText para recoger el texto de cada cuadro de texto. . . etiPal2. . El programa debe funcionar de la siguiente forma: . .Cuatro etiquetas.Un botón con el texto “Activar” llamado btnActivar. Tendrá que programar el evento actionPerformed de los botones.Otra etiqueta que contenga el texto “Ocultar”. Este botón se llamará btnAchicar. conteniendo distintas palabras cada una. Este botón se llamará btnAgrandar.Cuando el puntero del ratón salga de la superficie de la etiqueta etiOcultar.Cuando el puntero del ratón “sobrevuele” la etiqueta etiOcultar. entonces las etiquetas con las palabras volverán a aparecer. Cuando el usuario pulse el botón “Activar”. . Esta etiqueta se llamará etiOcultar y tendrá un tamaño más grande que las otras y un color de fondo. Tendrá que usar el método setEnabled para activar o desactivar cada cuadro de texto.Un botón con el texto “Esquina”.Un botón con el texto “Centro”. .Curso: BSI-03 Programación I Universidad Latina Ejercicio 4: Se pide que realice un programa en java cuya ventana principal contenga los siguientes elementos: . Puede llamarlas: etiPal1. Por ejemplo “Juan”.Un botón con el texto “Achicar”. Esta etiqueta se llamará etiNombre. los dos cuadros de texto se volverán a activar. .     Cuando el usuario pulse el botón “Desactivar”.Un cuadro de texto llamado txtCiudad. . entonces aparecerá un mensaje en la etiqueta llamada txtFrase indicando como se llama y donde vive. Tendrá que usar la concatenación de cadenas. Por ejemplo: Usted se llama Juan y vive en Santa Cruz. 38 .Una etiqueta que contenga su nombre. Tendrá que programar los eventos mouseEntered y mouseExited para que el programa detecte cuando el ratón entra o sale de la etiqueta etiOcultar. Recuerde que se pueden concatenar cadenas a través del operador +.

el fondo de la etiqueta se pondrá de color verde. Este botón se llamará btnFondoAzul. . mouseEntered y mouseExited para los botones. La propiedad preferredSize permite definir un tamaño inicial a cada componente de la ventana. usará el método setBackground. la etiqueta etiNombre se colocará en la esquina de la ventana. la etiqueta etiNombre cambiará de tamaño. Este botón se llamará btnRojo. Cuando el usuario pulse el botón “Agrandar”. Este botón se llamará btnTransparente.Cuando se pulse el botón “Azul”. Cuando el usuario pulse el botón “Centro”. Para hacer que una etiqueta sea opaca o no. el texto de la etiqueta se pondrá de color rojo. la etiqueta etiNombre se colocará en el centro de la ventana.Un botón con el texto “Azul”. . agrandándose. . se activará la propiedad opaca de la etiqueta. Este botón se llamará btnFondoVerde.Cuando se pulse el botón “Rojo”.Cuando se pulse el botón “Transparente”. Debe programar los eventos actionPerformed de cada botón.Un botón con el texto “Verde”. usará el método setForeground. el fondo de la etiqueta se pondrá de color azul. usará el método setOpaque.Un botón con el texto “Fondo Azul”. Cuando el usuario lleve el puntero sobre uno de los botones. 10. el botón volverá a su tamaño normal. Este botón se llamará btnAzul.RED. Tendrá que usar el método setLocation para cambiar la posición de la etiqueta. Este botón se llamará btnOpaca.Cuando se pulse el botón “Fondo Azul”. el texto de la etiqueta se pondrá de color verde. el botón cambiará de tamaño agrandándose. .Cuando se pulse el botón “Opaca”. El programa debe funcionar de la siguiente forma: . Un cuadro de texto llamado txtPrecio donde el usuario introducirá el precio unidad. Debe programar los eventos actionPerformed. . Ejercicio 7 Se pide realizar un programa java que tenga los siguientes elementos en la ventana principal: . . PROGRAMAS CON CÁLCULOS Ejercicio 1: Realice un programa para calcular el total de una venta. .Cuando se pulse el botón “Fondo Rojo”. la etiqueta etiNombre cambiará de tamaño. Este método recibe como parámetro la posición x e y donde situará el componente. . usará Color. Esta etiqueta se llamará etiTexto. el fondo de la etiqueta se pondrá de color rojo. el texto de la etiqueta se pondrá de color azul.Cuando se pulse el botón “Fondo Verde”.Un botón con el texto “Opaca”. Cuando el usuario pulse el botón “Achicar”. Para indicar el color azul usará Color. . .GREEN.Cuando se pulse el botón “Verde”. Tendrá que usar el método setSize para cambiar el tamaño de la etiqueta y de los botones. . empequeñeciéndose.Un botón con el texto “Rojo”. Para cambiar el color de fondo de una etiqueta.Un botón con el texto “Transparente”. . Este método recibe como parámetro el ancho y alto del componente. 39 . Y para indicar el color verde usará Color.Un botón con el texto “Fondo Rojo”.Curso: BSI-03 Programación I Universidad Latina El programa debe funcionar de la siguiente forma: Cuando el usuario pulse el botón “Esquina”.Una etiqueta con el texto que quiera. El programa tendrá una ventana con al menos los siguientes elementos: Un cuadro de texto llamado txtUnidades donde el usuario introducirá las unidades vendidas. Para cambiar el color del texto de una etiqueta. . Para indicar el color rojo.Un botón con el texto “Fondo Verde”. Cuando el puntero salga del botón. la etiqueta dejará de ser opaca. . Este botón se llamará btnVerde. . Este botón se llamará btnFondoRojo.BLUE.

Una etiqueta llamda etiIva. el iva y el total más iva y presentará dichos resultados en cada etiqueta. Si la nota final fuera un suspenso. Ejercicio 2: Realice un programa para calcular la nota final de un alumno. Ejercicio 4: Realizar un programa para calcular potencias de un número. Cuando se pulse el botón Calcular. Una etiqueta llamada etiTotalMasIva. en las etiquetas debe aparecer la palabra “Error” en color rojo. Una etiqueta llamada etiPerimetro. donde el usuario introducirá el radio. Ejercicio 3: Realizar un programa para calcular el área y el perímetro de un círculo. El programa funcionará de la siguiente forma: El usuario introducirá un radio dentro del cuadro de texto llamado radio. Un cuadro de texto llamado txtSegundoTrimestre. Ejercicio 5: Realizar un programa que calcule la raíz cuadrada de un número. El programa tendrá una ventana con al menos los siguientes elementos: Un cuadro de texto llamado txtPrimerTrimestre. Una etiqueta llamada etiResultado. Un botón llamado btnCalcular El programa funcionará de la siguiente forma: El usuario introducirá las notas de los tres trimestres en los cuadros de texto correspondientes. El programa entonces calculará el total de la venta. Si el usuario introduce un radio negativo. el programa calculará el área y el perímetro y los mostrará en las etiquetas correspondientes. Un botón llamado btnCalcular.Curso: BSI-03 Programación I Universidad Latina Una etiqueta llamada etiTotalSinIva. Un cuadro de texto llamado txtTercerTrimestre. el programa calculará la nota media y la mostrará en la etiqueta llamada etiNotaFinal. Una etiqueta llamada etiArea. El programa funcionará de la siguiente forma: El usuario introducirá las unidades y el precio y luego pulsará el botón Calcular. Si la nota final es menor de 70. El programa deberá usar la clase Math. Una etiqueta llamada etiRaiz. Si la nota final es 70 o más. Al pulsar la tecla Enter sobre dicho cuadro de texto. donde se mostrará el área del círculo. El programa le permitirá al usuario introducir una base y un exponente. 40 . Use el elemento PI de la clase Math para hacer este ejercicio. El programa debe tener una ventana con al menos los siguientes elementos: Un cuadro de texto llamado txtRadio. donde se mostrará el perímetro del círculo. Luego el programa podrá calcular la potencia de la base elevada al exponente. El programa tendrá los siguientes elementos en la ventana únicamente: Un cuadro de texto llamado txtNumero. entonces el fondo de las etiquetas etiNotaFinal y etiResultado deben aparecer de color rojo. entonces en la etiqueta etiResultado aparecerá la palabra APROBADO. En caso contrario aparecerán de color negro. Una etiqueta llamada etiNotaFinal. entonces en la etiqueta etiResultado aparecerá la palabra SUSPENSO. El diseño de la ventana queda a su elección.

1 o 2 soluciones. Procure que el programa indique cuando hay o no soluciones. en la etiqueta aparecerá: “LunesMartes”. Las ecuaciones de segundo grado tienen la siguiente forma: ax2+bx+c=0 Dados unos valores para a. si el usuario lleva el puntero sobre la etiqueta Uno. en el cuadro de texto debería haber aparecido lo siguiente: 131. que al ser pulsado borre el contenido del cuadro de texto. Si R es mayor de cero. Si R da 0. etiDos. Por ejemplo. Ejercicio 8: Se pide realizar un programa para resolver las ecuaciones de segundo grado. El resultado será que en la etiqueta etiTexto aparecerán las dos palabras escritas concatenadas. El usuario introducirá las dos palabras dentro de los cuadros de texto y luego pulsará el botón Concatena. etiTres. si el usuario escribe en el primer cuadro de texto “Lunes” y en el segundo “Martes”. Para saber el número de soluciones de una ecuación de segundo grado se debe realizar el siguiente cálculo: R = b2 – 4ac Si R es menor de cero.. luego sobre la etiqueta Tres y luego sobre la etiqueta Uno. la ecuación tiene dos soluciones. Se pide que cuando el usuario lleve el ratón sobre una de las etiquetas. inmediatamente aparecerá su raíz cuadrada en la etiqueta. Para ello. Una ecuación de segundo grado puede tener 0. la ecuación tiene una solución. esta se calcula de la siguiente forma: x = -b / (2a) Cuando existen dos soluciones. estas se calculan de la siguiente forma: x = (-b + raiz(R) ) / (2a) x = (-b – raiz(R) ) / (2a) Realice el programa para resolver las ecuaciones de segundo grado. b y c. etc. Cuando existe una solución. 41 . Ejercicio 7: Realizar un programa que muestre 10 etiquetas llamadas respectivamente: etiUna.Curso: BSI-03 Programación I Universidad Latina El programa funcionará de la siguiente forma: cuando el usuario escriba un número en el cuadro de texto txtNumero. Ejercicio 6: Realice un programa que contenga dos cuadros de texto: txtPalabra1. Estas etiquetas contendrán los números del 0 al 9. y que las muestre de forma adecuada. la ventana tendrá un cuadro de texto llamado txtNumero. Aparte. Los números se van añadiendo al cuadro de texto. la ecuación no tiene solución. aparezca en el cuadro de texto el número correspondiente. El diseño de la ventana queda a su elección. Añada un botón llamado btnBorrar. Por ejemplo. Use la clase Math para realizar el cálculo de la raíz cuadrada. La ventana tendrá también un botón llamado btnConcatena y una etiqueta llamada etiTexto. se debe calcular cuánto vale x.. tendrá que programar el evento keyReleased del cuadro de texto. y txtPalabra2.

Un botón “Calcular División” llamado btnDivision. entonces también se mostrará un error. Ejercicio 2: Realice un programa que permita calcular el sueldo total de un empleado. el programa tendrá los siguientes elementos en la ventana: Un cuadro de texto llamado txtSueldoBase. Si el usuario introduce un valor 0 dentro del cuadro de texto del número B.Curso: BSI-03 Programación I Universidad Latina 11. Una etiqueta llamada etiIMC donde aparecerá el Indice de masa corporal calculado. donde se introducirá la talla. Se calculará así: Total a percibir = (SueldoBase – 10% del SueldoBase) * Meses Cuando se pulse el botón calcular. CUADROS DE MENSAJE.showInputDialog. Un cuadro de texto llamado txtMeses. Luego pulsará el botón calcular para calcular el índice de masa corporal. CONFIRMACIÓN E INTRODUCCIÓN DE DATOS Ejercicio 1: Realice un programa para calcular la división de un número A entre un número B. Para ello. Un cuadro de texto llamado txtTalla. entonces el programa mostrará un mensaje de error (Use un JOptionPane. Solo si la contraseña es correcta el programa mostrará el sueldo total. antes de que aparezca el sueldo en la etiqueta de resultado. donde se introducirá el peso de la persona. Invente el valor de la contraseña Ejercicico 3: Realizar un programa para calcular el índice de masa corporal de una persona. el programa mostrará un aviso (JOptionPane. Una etiqueta llamada etiResultado donde aparecerá el resultado. el cual se calcula así: IMC = Peso / Talla 2 IMC <18 >=18 y <20 >=20 y <27 CONCLUSIÓN Anorexia Delgadez Normalidad 42 . creará una ventana con los siguientes elementos: Un cuadro de texto llamado txtPeso. Para introducir la contraseña use un JOptionPane.showMessage) Si el usuario introduce un valor menor que cero en cualquiera de los dos cuadros de texto. Un botón llamado btnCalcular. el programa debe pedirle al usuario que introduzca una contraseña. El programa funcionará de la siguiente forma: El usuario introducirá un peso y una talla en los cuadros de texto. Si el usuario introduce una contraseña incorrecta. Al pulsar el botón calcular se calculará el sueldo a percibir por el empleado. Para ello. El programa funcionará de la siguiente forma: El usuario introducirá en el cuadro de texto txtSueldoBase la cantidad bruta que cobra el trabajador al mes. El programa tendrá los siguientes elementos en la ventana: Dos cuadros de texto llamados txtA y txtB donde se introducirán los dos números. El programa debe funcionar de la siguiente forma: Cuando se pulse el botón “Calcular División” se calculará la división del número A entre el B y el resultado aparecerá en la etiqueta etiResultado. En el cuadro de texto txtMeses introducirá el número de meses trabajados.showMessage) y el resultado no se mostrará. Una etiqueta llamada etiResultado. Un botón llamado btnCalcular y otro llamado btnLimpiar.

con un cuadro de diálogo de confirmación (JOptionPane.showConfirmDialog).Curso: BSI-03 Programación I Universidad Latina El IMC calculado aparecerá en la etiqueta. CADENAS Ejercicio 1: Realice un programa cuya ventana tenga los siguientes elementos: Un cuadro de texto llamado txtFrase. el programa mostrará la siguiente información en las etiquetas: La frase en mayúsculas. Un botón “Analizar” llamado btnAnalizar. Número de caracteres de la frase. Número de caracteres de la frase sin contar los espacios. el programa debe mostrar un error emergente (JOptionPane) Ejercicio 2: Realice un programa cuya ventana tenga los siguientes elementos: Un cuadro de texto llamado txtFrase y otro llamado txtSubcadena. 43 . 12. la cual puede ser una de las siguientes según el IMC: El mensaje puede ser algo así: “Su IMC indica que tiene anorexia”.showMessage. y luego introducirá una palabra en el cuadro de texto txtSubcadena. El programa funcionará de la siguiente forma: El usuario introducirá una frase en el cuadro de texto. el programa debe pedir confirmación. Este mensaje aparecerá en un JOptionPane. >=27 y <30 >=30 y <35 >=35 y <40 >=40 y Obesidad (grado 1) Obesidad (grado 2) Obesidad (grado 3) Obesidad mórbida Cuando pulse el botón Limpiar. (Llámelas como quiera) Un botón “Analizar” llamado btnAnalizar. por ejemplo. y además. La frase en minúsculas. y luego pulsará el botón Analizar. Al pulsar Analizar. El programa funcionará de la siguiente forma: El usuario introducirá una frase en el cuadro de texto txtFrase. Antes de que esto ocurra. se borrarán los cuadros de texto Peso y Talla. y luego pulsará el botón Analizar. El cuadro de confirmación tendrá el siguiente aspecto: Según lo elegido por el usuario se borrarán los cuadros de texto o no. Varias etiquetas. Si el usuario pulsa Analizar cuando no hay ninguna frase introducida en el cuadro de texto. aparecerá un mensaje indicando la conclusión a la que se llega. Varias etiquetas.

Indicará si la palabra 4 está contenida en la frase. Mostrará el texto que hay en la frase antes de la primera palabra. Y la palabra fuera globo. Un botón “Preparar Identificación” llamado btnPrepararIdentificación. si la frase fuera: Un globo. Tenga en cuenta que puede haber vocales en mayúsculas y en minúsculas. El programa funcionará de la siguiente forma: El usuario introducirá una frase en el cuadro de texto txtFrase. y en el caso de que esté contenida. Por ejemplo. de i de o y de u que se encuentran en la frase. Al pulsar el botón Analizar. tres globos. La luna es un globo que se me escapó. Ejercicio 5: Realizar un programa cuya ventana tenga los siguientes elementos: Un cuadro de texto llamado txtIdentificación. entonces la información a mostrar sería: Posición inicial: 3 Posición final: 49 Texto anterior: Un Texto posterior: que se me escapó Si la palabra no se encuentra en la frase. Indicará si la frase termina por la palabra 3. dos globos. El programa mostrará en las etiquetas el número de a. Mostrará el texto que hay en la frase después de la última palabra. Un botón “Analizar” llamado btnAnalizar. se indicará la posición inicial en la que se encuentra. entonces el programa debería mostrar un error. Si el usuario no introduce nada en el cuadro de texto txtFrase. Ejercicio 4: Realizar un programa cuya ventana tenga los siguientes elementos: Un cuadro de texto llamado txtFrase. A continuación se explica cómo preparara la identificación: 44 . y tres palabras en los cuadros de texto de las palabras. Indicará si la frase empieza por la palabra 2. Un cuadro de texto llamado txtPalabra2. Un cuadro de texto llamado txtPalabra4.Curso: BSI-03 Programación I Universidad Latina Al pulsar el botón. Un cuadro de texto llamado txtPalabra1. Luego se pulsará el botón Analizar. El programa funcionará de la siguiente forma: El usuario introducirá un # de cédula en el cuadro de texto llamado txtIdentificacion y luego pulsará el botón Preparar Identificación. El funcionamiento será el siguiente: El usuario escribirá una frase en el cuadro de texto txtFrase. el programa mostrará un mensaje indicando un errorJ y no se presentará nada en las etiquetas. Un botón “Analizar” llamado btnAnalizar. Un cuadro de texto llamado txtPalabra3. Varias etiquetas. La posición en la que se encuentra la última aparición de la palabra en la frase. el programa debe indicar la siguiente información en las etiquetas: Indicará si la frase es igual a la palabra 1. El resultado será que la identificación introducida aparecerá “preparada” en la etiqueta etiIdentificacion. Una etiqueta llamada etiIdentificación. Varias etiquetas. de e. el programa debe mostrar la siguiente información: La posición en la que se encuentra la primera aparición de la palabra en la frase. El programa debe contar cuantas vocales tiene la frase. Ejercicio 3: Realice un programa que tenga los siguientes elementos: Un cuadro de texto llamado txtFrase.

Si el usuario pulsa el botón “Mover”. entonces debe aparecer un error emergente (JOptionPane). Un botón “Resultados” llamado btnResultados. entonces toda la ventana cambiará a la visualización Java. 14. Un botón “Mover” llamado btnMover. Es decir. introducidos respectivamente en los cuadros de texto txtPosicionX y txtPosicionY. Si el usuario introduce la contraseña correcta. este debe pedir una confirmación al usuario: ¿Desea salir del programa? Si el usuario responde Sí. 13. Además. Una etiqueta con borde llamada etiMayor. entonces el programa finalizará. el programa seguirá funcionando. Un botón “Estilo Windows” llamado btnEstiloWindows. Sin embargo. entonces el fondo de la ventana se cambiará al color indicado. la ventana se maximizará. Un botón “Estilo Java” llamado btnEstiloJava. Una etiqueta con borde llamada etiCuenta. Si el usuario pulsa el botón “Maximizar”. Un botón “Cambiar Título” llamado btnCambiarTitulo. Un botón “Maximizar” llamado btnMaximizar. Un cuadro de texto llamado txtPosicionX. Un botón “Restaurar” llamado btnRestaurar. Si el usuario pulsa uno de los botones de color. sin ningún espacio y sin puntos ni guiones. Un botón “Minimizar” llamado btnMinimizar. colocándose como título lo que el usuario haya escrito en el cuadro de texto txtTitulo. el título de la ventana cambiará. Si el usuario pulsa el botón “Estilo Windows”. Si el usuario pulsa el botón “Restaurar”. entonces toda la ventana cambiará a la visualización Windows. Si el usuario pulsa el botón “Estilo Java”. Un botón “Rojo” llamado btnRojo. Un botón “Centrar” llamado btnCentrar. El programa funcionará de la siguiente forma: 45 . la ventana se minimizará. Una etiqueta con borde llamada etiSuma. Un botón “Acumular” llamado btnAcumular. Un botón “Verde” llamado btnVerde. Un botón “Reiniciar” llamado btnReiniciar. El funcionamiento del programa será el siguiente: Si el usuario pulsa el botón “Cambiar Titulo”. y. VARIABLES GLOBALES Ejercicio 1: Realizar un programa cuya ventana contenga los siguientes elementos: Un cuadro de texto llamado txtNumero. en la etiqueta etiIdentificacion debe aparecer la identificación con el siguiente formato: 1123890. cuando el usuario pulse el botón Preparar Identificación. entonces el usuario entrará en el programa. LA CLASE JFRAME Ejercicio 1: Realizar un programa cuya ventana contanga los siguientes elementos: Un cuadro de texto llamado txtTitulo.Curso: BSI-03 Programación I Universidad Latina El usuario puede introducir una identificación con uno de estos formatos: 1-123-890 1 – 0123 – 0890 etc. Un cuadro de texto llamado txtPosicionY. la ventana se colocará en la posición de la pantalla que venga indicada por los valores x. Si el usuario pulsa el botón “Minimizar”. Si el usuario no introduce nada en el cuadro de texto del DNI y pulsa el botón. Un botón “Azul” llamado btnAzul. la ventana se restaurará. el programa contará con las siguientes características: Al iniciarse el programa. Si el usuario pulsa el botón “Centrar”. este debe pedir una contraseña al usuario. Al finalizar el programa. Una etiqueta con borde llamada etiMedia. la ventana se colocará en el centro de la pantalla. En caso contrario. En caso contrario el programa se cerrará.

. Contendrá en todo momento la cuenta de todos los números introducidos hasta ahora. Esta variable estará inicializada al comienzo del programa a 100. Si el usuario pierde entonces se le debe restar lo apostado a la cantidad que tenía. deben aparecer en las etiquetas los siguientes datos: o El número mayor introducido hasta el momento.Un cuadro de texto llamado txtApuesta . Contendrá en todo momento el número mayor introducido. . . o La suma de los números introducidos hasta el momento. Cuando el usuario pulse el botón “Resultados”. . Variables globales a usar Para que sirva de ayuda.Solo se necesita una variable global de tipo double a la que puedes llamar ganancias. El botón “Reiniciar” reinicia el proceso borrando todo lo que hubiera en las etiquetas de resultados y reiniciando las variables globales. El programa funcionará de la siguiente forma: . Ejercicio 2: Realizar un programa que contenga los siguientes elementos en su ventana: . En ese momento se borrará el número introducido en el cuadro de texto.Se trata de un juego de adivinación.Una etiqueta llamada etiResultado que contendrá inicialmente un “100”. Este proceso lo repetirá el usuario varias veces. Se supondrá que todos los números introducidos serán mayores o iguales a 0.Si el número introducido por el usuario coincide con el número elegido al azar por la máquina.Luego introducirá una apuesta en el cuadro de texto txtApuesta.Una variable double llamada mayor.Un botón “Jugar” llamado btnJugar.Una etiqueta llamada etiNumero. entonces el usuario gana y se le debe sumar lo apostado a la cantidad que tenía en dicho momento.random() * 10) + 1). . . o La media de los números introducidos hasta el momento. El usuario introducirá un número entre 1 y 10 en el cuadro de texto txtNumero.Y a continuación pulsará el botón “Jugar”. 46 .Una variable double llamada suma. Para hacer que el ordenador calcule un número aleatorio entre 1 y 10 debes usar el siguiente código: int numeroMaquina=(int) ((Math. o Cuantos números ha introducido el usuario hasta el momento. y al pulsar el botón “Reiniciar”. El total que le quede debe aparecer en la etiqueta resultado. Al comenzar el programa.El programa calculará entonces un número al azar entre 1 y 10 y lo mostrará en la etiqueta etiNumero.Un cuadro de texto llamado txtNumero. . Nota. Las variables globales a usar son las siguientes: . Contendrá en todo momento la suma de los números introducidos. . se recomienda que use las siguientes variables globales: .Una variable int llamada cuenta. .Al empezar el programa el usuario tiene $100.Curso: BSI-03 Programación I Universidad Latina - - El usuario introducirá un número en el cuadro de texto txtNumero y luego pulsará el botón “Acumular”. será necesario que estas tres variables se inicien a 0. .

Para ello. Por otro lado. Si por ejemplo. CUADROS DE DIÁLOGO Ejercicio 1: Se pide realizar un programa que facilite el cálculo del precio de implantación de un determinado software en una empresa. el cuadro de diálogo que debe aparecer tiene que ser el siguiente (haz que sea modal): Aquí se indicará el número de copias de la versión simplificada del programa a instalar. el coste de formación y el coste de mantenimiento. Para calcular el coste de instalación. debe realizar un proyecto con una ventana como la que sigue: Esta ventana tiene tres cuadros de textos. cada cuadro de texto tiene asignado un botón con tres puntos que permitirá facilitar el cálculo de cada coste a través de un cuadro de diálogo. y el número de copias de la versión completa. se puede introducir directamente cada uno de los costes en estos cuadros de textos y al pulsar el botón Calcular aparecerá la suma de los tres en la etiqueta Total. el coste total será: Coste por instalación = 250 * 1 + 500 * 2 = 1250 47 . Al pulsar el botón Aceptar. se mostrará el coste total por instalación en el cuadro de texto correspondiente de la ventana principal y luego se cerrará el cuadro de diálogo. El objeto Dialog o Ventana la selecciona de la Paleta Swing categoría ventanas… Cuadro de diálogo Coste de Instalación En el caso de que se pulse el botón correspondiente al Coste de Instalación. ten en cuenta lo siguiente: Cada copia de la versión simplificada cuesta $250. y cada copia de la versión completa cuesta $500. Se pretende calcular el coste de instalación. para cada uno de los costes. el usuario introduce 1 copia simplificada y 2 de la versión completa.Curso: BSI-03 Programación I Universidad Latina 15. Si se desea.

si el usuario introduce 3 alumnos y 12 horas. el cuadro de diálogo simplemente se cerrará. el cuadro de diálogo que debe aparecer tiene que ser el siguiente (haz que sea modal): El coste de formación se calculará multiplicando el número de alumnos por el número de horas por $10. Cuadro de diálogo Coste de Mantenimiento En el caso de que se pulse el botón correspondiente al Coste de Mantenimiento. el cuadro de diálogo que debe aparecer tiene que ser el siguiente (haz que sea modal): Al pulsar Aceptar. aparecerá un cuadro Al pulsar el botón Cerrar. sin que ocurra nada más. Si se elige un mantenimiento del tipo Puesta en funcionamiento entonces el coste será de $200. entonces el coste será de $600. Si se pulsa el botón Cancelar. Por ejemplo. el programa calculará el coste de mantenimiento y lo presentará en el cuadro de texto correspondiente de la ventana principal (y luego se cerrará el cuadro de diálogo) La forma de calcular el coste de mantenimiento es la siguiente: Si se elige un mantenimiento Anual. 48 . el cuadro de diálogo simplemente se cerrará. se calculará dicho coste y se introducirá en el cuadro de texto del coste de formación de la ventana principal (luego el cuadro de texto se cerrará). Si se elige un mantenimiento Semestral. Cuadro de diálogo Coste de Formación En el caso de que se pulse el botón correspondiente al Coste de Formación. Al pulsar el botón Aceptar. el cuadro de diálogo se cierra sin más. Al pulsar este botón. el cuadro de diálogo se cierra y no se muestra nada en el cuadro de texto del coste de instalación de la ventana principal. MEJORAS Ayuda Añade un botón a la ventana principal con esta forma: de diálogo de ayuda con este aspecto.Curso: BSI-03 Programación I Universidad Latina Si se pulsa el botón Cancelar. entonces el coste será de $350. Si se pulsa el botón Cancelar. el coste por formación será: Coste por formación = 2 * 12 * 10 = 240.

winSplash..getWidth()/2 . Esta propiedad oculta la barra de título del cuadro de diálogo.setLocation(x. se recomienda que active la propiedad del cuadro de diálogo llamada: Undecorated winSplash.Curso: BSI-03 Programación I Universidad Latina Para hacer el texto.getDefaultToolkit(). debe tener la posibilidad de cerrarse cuando el usuario haga clic sobre él en cualquier parte. colocar el texto donde quiera. y su propiedad text. El cuadro de diálogo debe tener un botón Cerrar. puede usar este código (se supone que el cuadro de diálogo se llama winSplash): int x=(int) (Toolkit.getScreenSize().getWidth()/2). winSplash. Para mejorar su cuadro de diálogo de presentación. usa el objeto JTextArea. Puede añadir varias imágenes.setUndecorated(true). o bien. Debe mostrar este cuadro de diálogo al comenzar el programa (en el evento windowOpened del formulario) Si quiere mostrar el cuadro de diálogo de la presentación en el centro de la pantalla.getHeight()/2). Ten en cuenta que cuando añadas un JTextArea este aparecerá dentro de un JScrollPane.getScreenSize().winSplash.getHeight()/2 .y). Este objeto permite crear cuadros con gran cantidad de texto. 49 . int y=(int) (Toolkit. Pantalla de Splash (Presentación) Se añadirá un nuevo cuadro de diálogo al proyecto que servirá como pantalla de presentación (a estos cuadros de diálogo se les suele denominar Splash) Diseñe este cuadro de diálogo como quiera. etc.getDefaultToolkit().

5. 7. Realice un programa que determine si un número leído del teclado es primo o no. así como el valor máximo introducido. en vez de salir del programa directamente. nos muestre el siguiente mensaje de confirmación: De modo que si elegimos sí salgamos del programa. 8.Curso: BSI-03 Programación I Universidad Latina 16.2.. Calcular la suma de las siguientes series: a) b) 4. Escriba un programa que lea un número entero por teclado y escriba la tabla de multiplicar de ese número.1. El programa deberá ejecutarse hasta que se elija la opción 5. Modificar el ejercicio anterior para que al elegir la opción 5.10. 2. Escriba un programa que muestre por pantalla la tabla de multiplicar de los 10 primeros números (1.3. El programa deberá mostrar por pantalla la cantidad de números leídos. Realice un programa que calcule el factorial de un número dado por teclado. Realice un programa que lea números enteros positivos hasta que se introduzca un 0. 6. 50 .). EJERCICIOS PROPUESTOS 16. el promedio. Sentencias de control repetitivas 1.9. pero si pulsamos el botón no.. Salir. 3.. Realice un programa que calcule y visualice el más grade. el más pequeño y el promedio de n números (n>0). El valor de n se solicitará al principio del programa y los números serán introducidos por el usuario. Realizar un programa que pida dos números enteros por teclado y muestre por pantalla el siguiente menú:   El usuario deberá elegir una opción y el programa deberá mostrar el resultado por pantalla y después volver al menú. Realice este ejercicio utilizando primero un bucle for y posteriormente repita el ejercicio utilizando un bucle while. volvamos al menú.

así como el porcentaje de aciertos y de fallos. 2 x 6 = 10 Incorrecto 5. 2. 3 y 1 + 2 + 3 = 6. (Pista: utilice el ejercicio anterior como base para realizar este ejercicio). el programa deberá mostrar por pantalla 5 – 4 – 3 – 2. 5 x 4 = 20 2. 14. El programa pedirá al usuario dos números que representan el rango de valores entre los que se encuentra el número a adivinar. 16 / 8 = 2 4. éste deberá mostrar un resumen indicando el número de respuestas correctas y erróneas. multiplicación y división (en el caso de la división se realizará siempre una división entera). En cada multiplicación el programa debe indicar si se ha acertado o no. 3 x 3 = 9 6. Ejercicios que usan números aleatorios para realizar juegos y simulaciones 12. Al final del programa. 15. si se introduce el número 2345. así como el número de intentos para adivinar el número. (Pista: utilice el operador %. El primer número perfecto es 6. averigüe para qué sirve y piense cómo utilizarlo). Escriba un programa que lea un número entero positivo n y muestre por pantalla si ese número es o no perfecto. Por ejemplo. 20 – 4 = 16 3. Realice un programa que pregunte aleatoriamente cualquier multiplicación. Un número perfecto es un entero positivo. Modificar el ejercicio anterior de modo que el programa pregunta aleatoriamente un total de n multiplicaciones siendo n un número dado por teclado. Realizar un programa que simule un juego de adivinar un número. El programa debe indicar si la respuesta ha sido correcta o no (en caso que la respuesta sea incorrecta el programa debe indicar cuál es la correcta). Realice un programa que genere aleatoriamente 7 operaciones aritméticas consecutivas a las que el usuario deberá ir respondiendo correctamente para ir avanzando. el programa deberá devolver 5. 12 – 7 = 2 Incorrecto 7. En caso negativo el programa finalizará. si introducimos el número 12334. que es igual a la suma de todos los enteros positivos (excluido él mismo) que son divisores del número. Cada vez que el jugador introduce un número el programa le dice si es mayor o menor y le indica cuantos intentos le quedan.Curso: BSI-03 Programación I Universidad Latina 9. Los números (aleatorios) sobre los que se realizan las operaciones deben estar comprendidos entre 2 y 9 y las operaciones aritméticas (también aleatorias) permitidas serán la suma. ya que los divisores de 6 son 1. 12 – 7 = 5 51 . resta. 13. Una vez preguntado por una multiplicación el programa debe preguntar si desea realizar otra. Realice un programa que lea un número entero por teclado y devuelva por pantalla las que forman ese número. Ejemplo: 1. En caso afirmativo preguntará aleatoriamente otra multiplicación. Por ejemplo. 11. Realice un programa que lea un número entero por teclado y devuelva por pantalla el número de dígitos que componen ese número. A continuación el programa generará un número aleatorio entre esos dos números y el usuario deberá adivinarlo en el número máximo de intentos antes indicado. 10.

0 + 32.Curso: BSI-03 Programación I Universidad Latina 16. y un 1 en caso contrario. (1 Pulgada = 2. 7.. 5. Realizar un programa que pida dos números enteros por teclado y muestre por pantalla el siguiente menú: El usuario deberá elegir una opción.2. excluido él mismo). Escriba una función que lea tres números enteros del teclado y nos devuelva el mayor. Todas las opciones (1 a 6) deben realizarse utilizando funciones.54 cm.0/5. 4. a la que se le pase un número y nos devuelva un 0 en el caso de que el número que le pasemos no sea perfecto. introducir dos valores y el programa deberá mostrar el resultado por pantalla.9.. Escribir una función que lea un número entero y un número real por teclado. pies y pulgadas. y un 1 en caso contrario. Escribir un programa que pida un número natural por teclado y nos diga si ese número es perfecto (un número natural es perfecto si es igual a la suma de sus divisores. 1 Pie = 12 Pulgadas) 10. 3.. Escriba una función que convierta grados a fahrenheit (fahrenheit = grados * 9. realizar un programa que muestre por pantalla todos los números primos comprendidos entre 1 y un número n introducido por teclado por el usuario. 8. 6. tal y como muestra la siguiente tabla: 52 . 2. Escriba una función que determine si un carácter es uno de los dígitos 0.. Utilizando la función primo realizada en el Ejercicio 1.0) 9. Escriba una función que calcule la suma de los divisores de un número entero positivo. a la que se le pase un número y nos devuelva un 0 en el caso de que el número que le pasemos no sea primo. El programa deberá utilizar una función definida por el usuario.1. Ejercicios propuestos funciones 1.48 cm. El programa deberá utilizar una función definida por el usuario. en función del número entero se aplicará una de las funciones de conversión anteriores. Escriba las funciones necesarias para poder calcular la equivalencia entre centímetros. 1 Pie = 30. Escribir un programa que pida un número por teclado y nos diga si ese número es primo.2.

... 898. 111. y devuelva el número de vocales y el número total de caracteres leídos sin incluir los espacios en blanco. 303. 292. Realizar una función que recibe una cadena de caracteres.. etc) 12. num2).. permita ver si dos números son o no amigos (dos números A y B son amigos si la suma de los divisores de A (excluido él mismo) coincide con B y viceversa) 14. 202. 929. 919. 909. Construya una función... Realizar una función que reciba un array de caracteres y devuelva en una variable el número de palabras que hay en el array. 17. llamada amigos. 999. Realizar un programa que pida dos números enteros por teclado y muestre por pantalla el siguiente menú:   El usuario deberá elegir introducir dos valores y a continuación elegir una opción (pulsando el carácter correspondiente). y cambia todas las vocales por punto. restar(num1.num2) etc… 15. Escriba una función que decida si un número entero es capicúa.. La palabra capicúa (en matemáticas.. 191. 212.. número palíndromo) se refiere a cualquier número que se lee igual de izquierda a derecha y de derecha a izquierda (Ejemplos: 101. que apoyándose en la función anterior. 11. 16. 989.Curso: BSI-03 Programación I Universidad Latina Ejercicios propuestos de un nivel de dificultad mayor. el programa deberá mostrar el resultado por pantalla. pudiendo excluir de dicha suma el propio número (será un parámetro adicional (valor 1 o 0) quien determinará si se suma o no). 13. 121. Escriba una función que calcule la suma de los divisores de un número entero positivo. Realizar una función que reciba como entrada una frase acabada en punto. 181... Realizar un programa que lea un nombre con apellidos por teclado y a continuación muestre el siguiente menú: 53 . 313.. 18. Cada una de las opciones a realizarse en el menú la debe realizar una función específica. 979... sumar(num1..

Sign up to vote on this title
UsefulNot useful