
Os dejo un vídeo de mi canal donde explico con detalle como funciona Netbeans.
Os dejo una lista de recursos útiles para esta sección.
Crea una variable de cada tipo:
byte
short
int
long
char
double
float
String
boolean
Pide un nombre por consola y salúdalo por consola.
Pide dos números por consola y muestra su suma, resta, multiplicación y división.
Pide 2 números por consola e indica cual es el menor de los 2 números. En caso de que sean iguales, también lo debes indicar.
Mostrar los números pares que hay entre el 1 y 10 (while y for).
Pedir numero por consola y mostrar la tabla del 10. Por ejemplo si el número que pido es el 5, me debería devolver:
5
10
15
20
25
30
35
40
45
50
Pide una cadena por consola y muestra sus caracteres uno a uno.
Pedir palabras al usuario hasta que el usuario escriba una cadena vacía. Muestra la concatenación de esas palabras al final.
Pide un año por teclado(número) e indica si es bisiesto o no.
Es bisiesto cuando es divisible entre 4 y no divisible entre 100 o si es divisible entre 400.
Pide un número por consola y valida que ese número este entre 0 y 10. Hazlo con un do-while.
Pide un número real que represente a un precio y muestra el precio con IVA. El IVA es de 21%.
Pide un número de segundos e indica cuantas horas, minutos y segundos equivalen.
Pide una frase o palabra por consola e inviertela.
Genera 10 números aleatorios entre 1 y 10.
Pide una frase por consola e indica si es palindromo.
Es palindromo cuando se lee una frase igual de izquierda a derecha que de derecha a izquierda. Por ejemplo, alola
Vamos a jugar a un pequeño juego.
Vamos a generar un número aleatorio entre 1 y 100.
Debes pedir al usuario números que estén entre estos dos números (debes controlarlos).
Si el usuario falla, debes indicarle si el número que introdujo es mayor o menor que el que debe acertar.
El programa termina cuando el usuario acierta. No hay limite de intentos.
Pide dos números por teclado y crea un pequeño menú con las siguientes opciones:
- Sumar
- Restar
- Multiplicar
- Dividir
- Módulo
Al final debemos preguntar si queremos realizar otra operación más, en caso afirmativo, volveremos a empezar.
Pide un salario base por consola y su puesto por consola. Calcula su sueldo sabiendo lo siguiente:
Si es vendedor, cobra 500 euros más.
Si es director, cobra 1000 euros más.
Si es conserje, cobra 100 euros más.
Utiliza un enumerado para almacenar los tipos de puesto de trabajo.
Pide 3 números por consola y realiza una ecuación de segundo grado.
Pide un número por consola e indica si es un número perfecto.
Un número perfecto es un número natural que es igual a la suma de sus divisores propios positivos.
Por ejemplo, el 28 es un número perfecto: 28 = 1 + 2 + 4 + 7 + 14
Descarga de ejercicios.
Crear una función que me devuelva la suma del 1 al numero pasado por parámetro (este incluido).
Crea una función que genere un número aleatorio entre dos números pasados por parámetro.
Crea una función que pasados 2 números y muestra todos los pares entre esos 2 números.
Crea una función que dándole un número decimal nos lo pase a octal.
Crea una función que valide un número entre dos números. Necesitas dos parámetros numérico.
Crea una función que indique si una frase o palabra pasada por parámetro es un palindromo. Usa las funciones adicionales que consideres adicionales.
Crea un método que dado un número, muestre sus dígitos.
Crea una función que dado dos parámetros, siendo el primero un String y el segundo un boolean, cuente las letras minúsculas o mayúsculas, según el valor del segundo parámetro.
true = mayúsculas, false = minúsculas
Crea una función que dado un numero, decir cual es el dígito mas alto que tiene.
Crea una función que genere una password aleatoriamente con letras mayúsculas, minúsculas y números.
Pasale por parámetro la longitud del password.
Más ejercicios a realizar.
Descarga de ejercicios.
Crea un array de 3 posiciones, rellenalo pidiendo los números al usuario y recorrelo para mostrarlo.
Crea un array de 10 posiciones y rellenalo con números aleatorios. . Muestralos al final.
Crea una función para rellenarlo y otra para mostrar.
Crea un array de números (dale los valores tu mismo) e indica cual es la suma y la media de ese array.
Crea dos arrays e indica si son iguales.
Mostrar el menor y mayor de un array de números creado por ti mismo.
Crea una función que dado un número natural me devuelva sus dígitos en un array.
Pide una frase por consola y guarda en un array todos sus caracteres.
Dado dos arrays creados por ti, fusionalos en uno.
Dado un array de números, indica cual es el elemento más repetido, en caso de empate, mostrar el último más repetido.
Dado un array de caracteres (te lo doy yo) y tu numero de DNI, debes sacar la letra de tu DNI.
Para obtenerla solo deber sacar el módulo de 23 y ese sera el indice del array.
Teniendo un array de String con el nombre de personas y otro de números con su edad, indicar quien es la persona mas mayor.
Vamos a hacer un pequeño ahorcado.
Tendremos un pequeño array con palabras que tu elijas, créalo tu mismo.
Debes mostrar la palabra cogida con guiones e ir pidiendo letras.
El usuario gana cuando la palabra este completa.
Si falla 6 veces, el usuario pierde.
Descarga de ejercicios.
Crea una matriz de números de 3x3, pidiendo cada numero. Al final recorre la matriz y muestrala.
Crea una matriz de números de 3x3 tu mismo.
Crea una función que pasandole una matriz y una fila(número) muestre solo esa fila.
Crea una matriz de números de 3x3 tu mismo.
Crea una función que pasandole una matriz y una columna(número) muestre solo esa columna.
Crea una matriz de números de 3x3 y recorre su diagonal principal y su diagonal inversa
Crea una matriz de números de 3x3 tu mismo.
Crea una función que pasandole la matriz y la fila a revisar debe indicar si los valores de esa fila son idénticos.
Teniendo una matriz de char de 8x8 simular el movimiento de una un rey de ajedrez.
Pudiendose moverse una posicion dentro del tablero.
Deberas mostrar donde se encuentra en cada momento.
Mi consejo es que uses un menú.
Te mostramos un ejemplo:
Empezamos inicialmente asi:
O X X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
Si nos movemos a la derecha:
X O X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
Si nos movemos hacia abajo:
X X X X X X X X X
X O X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
Así hasta que el usuario quiera salir.
Teniendo una matriz de char de 8x8 simular el movimiento de una un alfilde ajedrez.
Pudiendose moverse una posicion dentro del tablero.
Deberas mostrar donde se encuentra en cada momento.
Mi consejo es que uses un menú.
Te mostramos un ejemplo:
Empezamos inicialmente asi:
X X X X X X X X X
X X X O X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
Si nos movemos a la diagonal abajo-derecha:
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X O
X X X X X X X X X
Si nos movemos hacia abajo-izquierda:
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X O X
Así hasta que el usuario quiera salir.
Teniendo una matriz de char de 8x8 simular el movimiento de una un torre de ajedrez.
Pudiendose moverse una posición dentro del tablero.
Deberás mostrar donde se encuentra en cada momento.
Mi consejo es que uses un menú.
Te mostramos un ejemplo:
Empezamos inicialmente así:
X X X X X X X X X
X O X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
Si nos movemos a la abajo:
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
X O X X X X X X X
Si nos movemos hacia derecha:
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X O
Así hasta que el usuario quiera salir.
Teniendo una matriz de char de 8x8 simular el movimiento de una reina de ajedrez.
Pudiéndose moverse en diagonal dentro del tablero.
Deberás mostrar donde se encuentra en cada momento.
Su posición inicial sera aleatoria.
Mi consejo es que uses un menú.
Te mostramos un ejemplo:
Empezamos inicialmente así:
X X X X X X X X X
X O X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
Si nos movemos a la abajo:
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
X O X X X X X X X
Si nos movemos hacia arriba-derecha:
X X X X X X X X X
X X X X X X X X O
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X X
X X X X X X X X O
Así hasta que el usuario quiera salir.
Teniendo una matriz de 6x7 de char con 10 minas colocadas aleatoriamente (no repetidas).
Pide al usuario fila y columna (solo zonas que no se hayan explorado), el jugador gana cuando no pisa ninguna mina durante 5 turnos seguidos.
Si pisa una mina, el juego termina.
Estos son los valores que debemos mostrar:
- V = Vacio
- M = Mina
- X = No explorado
Descarga de ejercicios.
Crea una clase Avion con los siguientes atributos:
- Modelo
- Numero de asientos
- Velocidad maxima
Dos constructores:
- Constructor vacio
- Constructor completo
Métodos o propiedades:
- Getter y setter
- toString()
Usando una clase ejecutable prueba a crear objetos de la clase Avion.
Crea una clase Aeropuerto con los siguientes atributos:
- Nombre
- País
- Calle
- Numero
- Ciudad
- Año inauguración
- Capacidad
Dos constructores:
- Constructor vacio
- Constructor complet
Métodos o propiedades:
- Getter y setter
- aniosAbierto(): devuelve el numero de años que ha estado abierto.
- toString()
Usando una clase ejecutable prueba a crear objetos de la clase aeropuerto.
Mejoremos la clase Aeropuerto agrupando algunos de sus atributos en un objeto.
Crea la clase Direccion, que tiene los siguientes atributos:
- País
- Calle
- Numero
- Ciudad
Crea dos constructores:
- Constructor vacio
- Constructor completo
Crea sus getters y setters.
Crea también un toString
Debes cambiar todos esos atributos de aeropuerto por dirección.
Asocia el aeropuerto con el avión mediante una asociación.
Un aeropuerto tiene uno o varios aviones.
Añadiremos también una función:
- aniadirAvion(Avion a)
Te recomiendo crear un atributo más llamado numero de aviones.
Añade al aeropuerto un atributo estático llamado id, cada vez que creamos un objeto aumentaremos en uno ese id.
Añade las funciones equals y compareTo en aeropuerto.
Dos aeropuertos son iguales cuando el id es igual.
Un aeropuerto es mayor que otro cuanto más actual es. Es decir, si el aeropuerto 1 tiene el año de inauguración 2000 y el aeropuerto 2 tiene el año de inauguración 1940, el mayor es el primer aeropuerto.
Mejora la llamada que estamos haciendo actualmente de los constructores usando this().
Hazlo en las clases Aeropuerto, Aviony Direccion.
Crearemos una clase hija llamada AeropuertoPublico que tendrá los siguientes atributos:
- Financion
- Numero de trabajadores discapacitados
Añadele sus constructores, getters, setters y toString.
Crearemos una clase hija llamada AeropuertoPrivado que tendrá los siguientes atributos:
- Numero de socios
Añadele sus constructores, getters, setters y toString.
Queremos utilizar el polimorfismo en nuestras clases de Aeropuerto, lo probaremos con la función toString.
Haremos la clase Aeropuerto abstracta.
Crearemos un método abstracto llamado calcular gananciasTotales, pasandole la cantidad ganada.
Según la clase, hará una accion u otra:
- AeropuertoPublico: se le suma la financiacion y una bonificación de 100 por cada trabajador discapacitado. Muestra el total ganado.
- AeripuertoPrivado: se divide la ganancia entre el número de socios. Muestra lo que gana cada socio.
Haz que la función de calcularAnio() no se pueda modificar en las clases hijas.
Crea la interfaz Activable para la clase Avion, que nos indique si esta preparado para volar o no.
Tendrá los siguientes métodos:
- isActivado()
- setActivado(boolean value)
Añade un atributo a la clase Avion llamado activado y modifica el método mostrar aviones para que solo se muestren aquellos que están activos.
Añade Javadoc al proyecto, genera la documentación con Netbeans.
Llegamos al ejercicio final de esta sección.
Crearemos un menú con las siguientes opciones:
- Añadir Aeropuerto: nos pedirá los datos de un aeropuerto. También si es privado o publico, pidiendo los datos concretos de cada uno.
- Añadir Avion: pide los datos para añadir un avion.
- Añadir Avion a aeropuerto: pide un avion y un aeropuerto y añádelo a su array.
- Mostrar info de Aeropuerto: pide un aeropuerto y muestra su información.
- Mostrar años que lleva abierto un aeropuerto: pide un aeropuerto y muestra los años que lleva abierto.
- Mostrar ganancias de un aeropuerto: pide un aeropuerto y una cantidad y muestra sus ganancias finales.
- Salir: Sale del programa
Llegamos al ejercicio final de esta sección.
Crearemos un menú con las siguientes opciones:
- Añadir Aeropuerto: nos pedirá los datos de un aeropuerto. También si es privado o publico, pidiendo los datos concretos de cada uno.
- Añadir Avion: pide los datos para añadir un avion.
- Añadir Avion a aeropuerto: pide un avion y un aeropuerto y añádelo a su array.
- Mostrar info de Aeropuerto: pide un aeropuerto y muestra su información.
- Mostrar años que lleva abierto un aeropuerto: pide un aeropuerto y muestra los años que lleva abierto.
- Mostrar ganancias de un aeropuerto: pide un aeropuerto y una cantidad y muestra sus ganancias finales.
- Salir: Sale del programa
Llegamos al ejercicio final de esta sección.
Crearemos un menú con las siguientes opciones:
- Añadir Aeropuerto: nos pedirá los datos de un aeropuerto. También si es privado o publico, pidiendo los datos concretos de cada uno.
- Añadir Avion: pide los datos para añadir un avion.
- Añadir Avion a aeropuerto: pide un avion y un aeropuerto y añádelo a su array.
- Mostrar info de Aeropuerto: pide un aeropuerto y muestra su información.
- Mostrar años que lleva abierto un aeropuerto: pide un aeropuerto y muestra los años que lleva abierto.
- Mostrar ganancias de un aeropuerto: pide un aeropuerto y una cantidad y muestra sus ganancias finales.
- Salir: Sale del programa
Descarga de ejercicios.
Curso de iniciación en Java de una forma amena y dinámica, enseñando de la mejor forma que sé hacer, haciendo ejercicios.
La versión que usaremos en este curso es Java SE (Standard Edition).
El curso consta de 100 ejercicios prácticos (+50 ejercicios bonus) realizados en Java explicados y resueltos paso a paso, haremos desde ejercicios muy simples (pedir números, mostrar datos, etc) hasta ejercicios mas complejos (movimiento de una pieza de ajedrez) ayudándote a mejorar la lógica de programación para tus futuros proyectos.
Este curso es altamente recomendable para aquellas personas que comiencen un curso de formación profesional DAM/DAW, empiecen la universidad o cualquier persona que quiera empezar de alguna manera a programar.
Los ejercicios están divididos en las siguientes secciones:
Básicos: aprenderemos los conceptos básicos como los tipos de variables, operadores, estructuras repetitivas o bucles, estructuras condicionales, etc.
Funciones y métodos: aprenderemos como crear funciones y métodos útiles que podremos reutilizar durante el curso.
Arrays o vectores: aprenderemos a crear, rellenar, recorrer estructuras de datos estáticas simples. Terminaremos esta sección con el juego del ahorcado.
Arrays multidimensionales o matrices: aprenderemos a crear, rellenar, recorrer estructuras de datos estáticas multidimensionales. Terminaremos la sección haciendo el juego del buscaminas.
Programación orientada a objetos o POO: aprenderemos los conceptos básicos sobre la programación orientada a objetos creando nuestras propias clases, veremos herencia, polimorfismo, etc. Haremos un aeropuerto que va a ir evolucionando durante las clases. Como ejercicio final, veremos un pequeño gestor de aeropuertos en consola.
Arrays dinámicos (ArrayList): aprenderemos a crear, rellenar, recorrer estructuras de datos dinámicas. Usaremos la clase ArrayList de Java.
Ficheros: aprenderemos como escribir y leer ficheros de texto, binarios y serializados.
Expresiones regulares: aprenderemos como crear expresiones regulares.
Interfaces gráficas (SWING): aprenderemos como crear aplicaciones gráficas con SWING de Java. En este caso, se dividen en ejercicios pero podría considerarse como un mini proyecto. Haremos un gestor de aeropuertos gráficos.
Java + MySQL: aprenderemos como conectarnos a una base de datos MySQL y hacer operaciones de consulta, insertado, actualización y borrado de datos.
JavaFX: aprenderemos como crear aplicaciones gráficas con JavaFX, la evolución de SWING. Haremos el mismo proyecto que hicimos con SWING, pero esta vez los datos los cogeremos de nuestra base de datos.
Se ha agregado cuestionarios para repasar los conceptos en cada sección.
Y no todo acaba aquí, aparte de estos ejercicios, también tenemos canal de Youtube donde puedes complementar aún más todos estos ejercicios.
En mi web, también tienes disponibles manuales útiles para documentarte.
Tienes los enlaces en mi perfil y también los comento en una clase.
Todos los ejercicios realizados durante el curso, los puedes descargar y usar para comprobar soluciones o modificarlo a tu gusto.
El curso esta realizado en Netbeans 8.2 pero esta adaptado para usar el nuevo Apache Netbeans.
¡Te espero en el curso!