InicioInfoUn poco de programación en java.

Un poco de programación en java.

Info5/16/2011
Bueno.. para serles sincero no se explicar muy bien así que si es necesario recalcar algún punto me avisan.. Empecemos hablando de este programa que es bastante utli. NetBeans IDE. Es un entorno de desarrollo - una herramienta para que los programadores puedan escribir, compilar, depurar y ejecutar programas. Está escrito en Java - pero puede servir para cualquier otro lenguaje de programación. Existe además un número importante de módulos para extender el NetBeans IDE. NetBeans IDE es un producto libre y gratuito sin restricciones de uso. mas en http://netbeans.org/index_es.html (en español), pueden descargar el programa de http://netbeans.org/(en ingles). Este es el programa que utilizamos en la universidad se los recomiendo por que es sencillo de usar y muy completo. Ahora les voy a dejar un ejemplo de un programa sencillo hecho por mi... El siguiente programa fue una tarea de la uni en el que la profesora pidió que crearamos un programa dando los siguientes requisitos: 1) Que el programa genere una letra al azar.. nosotros debemos elegir si mayúscula o minúscula. 2) El usuario debe ingresar una letra por el teclado. 2.1) En caso de que el programa genere una letra mayúscula, se debe pasar todo lo que el usuario ingresa a mayúsculas, lo mismo con las minúsculas. 2.2) En caso de que el usuario ingrese una palabra y no una letra, el programa toma la primera letra de la palabra y la utiliza. 3) El programa debe comparar la letra generada con la letra ingresada por el usuario. 3.1) Si el usuario acierta la letra que fue generada al azar, se lo felicita y se le dice en cuantos intentos lo hizo. 3.2) En caso de que no acierte, vuelve a pedir que ingrese otra letra. Les parece fácil? pueden intentar hacer el código ustedes mismos sin mirar el post así practican un poco Lo primero que necesitaríamos es que el programa genere una letra al azar, como lo hacemos? pues antes que nada necesitaríamos un número al azar.. por que? ya veremos mas adelante. voy a poner las explicaciones con //comentarios. // método llamado aleatorio que retorna un numero entero. // los parámetros de entrada son el numero mínimo y el numero máximo. // min seria el menor valor a ser generado y max hasta que valor necesitamos que genere. public static int aleatorio(int max, int min) { by @Sharaman088 // se declara una variable de tipo entero con valor aleatorio. // se utiliza la clase Math que contiene un método llamado random, ese método genera un valor aleatorio desde el 0,0 al 1,0. int numero = Math.random(); // o sea genera un valor double o doble.. mientras que nosotros necesitamos un int o entero,se cohersiona para que devuelva valor entero se pone el (int) enfrente. int numero = (int)Math.random(); // pero que pasa ahora, el numero aunque ya entero siempre va a ser cero. // para solucionar eso se multiplica el numero por el máximo valor a ser generado. int numero = (int)Math.random()*max; // ahora va a generar un numero desde el 0 hasta el max. // pero no me sirve que genere desde el 0 hasta el max, entonces como hago para que genere del min hasta el max. int numero = (int) (Math.random() * (max - min)) + min; // que paso ahí? pues al multiplicar por (max - min) hacemos que genere un numero hasta la diferencia de max y min, luego le hacemos que le sume min y ahí obtenemos un numero en el rango de max y min. // o sea si queremos que genere un numero del 10 al 30 hacemos que multiplique por la diferencia de 30 y 10, la cual seria 20. // al generar del 0 al 20 se le suma el 10 y ahi obtenemos un numero del 10 al 30 . by @Sharaman088 // Hacemos que el método que creamos retorne el valor de numero, o sea la variable entera a la que le dimos el valor aleatorio. return numero; } // una vez que ya tenemos el método que genera el numero aleatorio seguimos. // El siguiente método seria el de darle un valor entre el 97 y el 122 a nuestro numero aleatorio. // Por que 97 y 122 ? public static int valorDeLetra() { // declaramos la variable entera max con valor 122. int max = 122; // declaramos la variable entera min con valor 97. int min = 97; // declaramos la variable entera numero y le damos valor con el método anterior. int numero = aleatorio(max, min); // el método retorna el valor de la variable numero, que en este momento ya tiene un valor entre 97 y 122. return numero; } by @Sharaman088 // ahora tenemos el siguiente problema. // nosotros tenemos un numero y necesitamos una letra. public static char letraAleatoria() { // declaramos una variable char o carácter y le damos valor con el método anterior. char letra = valorDeLetra(); // pero el método valorDeLetra devuelve un entero, para cambiar eso se cohersiona poniendo delante (char) // como sabes a que letra convierte? // pues por el código ascii, si se fijan en el verán que los valores que utilizamos para generar un numero aleatorio, o sea el 97 y el 122 //equivalen a la letra a(97) y a la letra z(122) en el código ascii. // en caso de que quieran generar una letra en mayusculas se utilizan A(65) y Z(90). char letra = (char) valorDeLetra(); // retorna el valor de la variable letra que ya es una letra aleatoria de la 'a' a la 'z' return letra; } // Bueno.. si se dieron cuenta ahí cumplimos con el primer requisito que sería el de que el programa genere una letra al azar. // Ahora vamos al método main que es el necesario para que se ejecute el programa. public static void main(String[] args) { // creamos un objeto teclado de tipo Scanner. Scanner teclado = new Scanner(System.in); by @Sharaman088 // creamos una variable letra y le damos el valor de la letra que habíamos generado al azar. // siendo métodos estáticos podemos llamar directamente a la clase AzarLetras. char letra = AzarLetras.letraAleatoria(); // se crea una referencia de tipo String o cadena llamada palabraIngresada, todavía con valor nulo. String palabraIngresada; // se declara una variable entera llamada intentos, servirá para saber en cuantos intentos el usuario acierta la letra. int intentos = 0; // se declara una variable de tipo boolean llamada acierto y le damos un valor de false o falso. boolean acierto = false; // empezamos un bucle while con la condición de que acierto sea false. // eso significa que mientras la variable acierto tenga valor false el programa seguirá ejecutando una y otra vez. while (acierto == false) { // Imprimimos en pantalla la frase :"Ingrese una letra: ". System.out.println("Ingrese una letra: "; by @Sharaman088 // se le da valor a la variable palabraIngresada a través del teclado palabraIngresada = teclado.nextLine(); // con eso cumplimos el requisito 2. // pero lo que no sabemos es si el usuario va a ingresar una palabra en mayúsculas o minúsculas. // para asegurarnos pasamos todo lo que ingreso a minusculas. palabraIngresada = palabraIngresada.toLowerCase(); // requisito 2.1 // en caso de que se elija generar letra aleatoria en mayusculas se utilizara la siguiente linea // palabraIngresada.toUpperCase(); // que pasa si el usuario ingreso una palabra y no una letra? pues entonces tomamos la primera letra de la palabra ingresada. // el charAt(); toma el valor de la posición del String que se le indique. // o sea que si la palabra es hola charAt(0) va a ser h, charAt(1) va a ser o, y así sucesivamente. //Se declara la variable de tipo char letraAComparar que tomara el valor de la posición 0 de la palabra que ingrese el usuario. char letraAComparar = palabraIngresada.charAt(0); // requisito 2.2 // Bueno.. con eso ya tenemos una letra generada al azar y una letra ingresada por el usuario. // Como las comparamos? // para eso podemos utilizar el bucle if(){}. //empezamos el bucle if diciendo que Si letra ,que es la variable a la que le dimos el valor aleatorio, es igual a LetraAComparar, que es // la que el usuario ingreso. if (letra == letraAComparar) { //suma un numero a intentos. intentos++; // Imprime en pantalla: Felicidades accertasten en 'intentos' intentos. // donde 'intentos' es el valor del contador. System.out.println("Felicidades acertaste en: " + intentos + " intentos."; // y se cambia el valor de la variable acierto a true o verdadero. (se acuerdan? la condición del while) acierto = true; } // eso pasa si el usuario acierta, pero que pasa si no? else { // se suma uno a intentos. intentos++; by @Sharaman088 // Se imprime en pantalla: Fallaste, intenta de nuevo. System.out.println("Fallaste, intenta de nuevo."; // y se le da el valor de false a acierto, aunque no es necesario ya que ya tiene ese valor. acierto = false; } } } // como sabrán el while no se detendrá hasta que se cumpla la condición de que acierto sea true, o sea hasta que el usuario acierte. // hay formas de darle cierta cantidad de intentos al usuario. // por cierto en el método main cumplimos la condicion 3 - 3.1 - 3.2 by @Sharaman088 Les dejo el programa completo para que lo miren. import java.util.Scanner; public class AzarLetras { public static void main(String[] args) { Scanner teclado = new Scanner(System.in); char letra = AzarLetras.letraAleatoria(); String palabraIngresada; System.out.println(letra); int intentos = 0; boolean acierto = false; while (acierto == false) { System.out.println("Ingrese una letra: "; palabraIngresada = teclado.nextLine(); // en caso de que se elija generar letra aleatoria en mayusculas se utilizara la siguiente linea // palabra ingresada.toUpperCase(); palabraIngresada = palabraIngresada.toLowerCase(); char letraAComparar = palabraIngresada.charAt(0); if (letra == letraAComparar) { intentos++; System.out.println("Felicidades acertaste en: " + intentos + " intentos."; acierto = true; } else { intentos++; System.out.println("Fallaste, intenta de nuevo."; acierto = false; } } } public static char letraAleatoria() { char letra = (char) valorDeLetra(); return letra; } public static int valorDeLetra() { // se utilizan estos valores de min y max por que en el codigo ascii el valor de la letra a es 97 y de la z 122 // en caso de que se quiera utilizar mayusculas los valores serian min 65 y max 90 int max = 122; int min = 97; int numero = aleatorio(max, min); return numero; } public static int aleatorio(int max, int min) { int numero = (int) (Math.random() * (max - min)) + min; return numero; } } by @Sharaman088 El programa funciona bien, si hay un error fue al pasarlo aca.. me avisan y lo corrijo si es asi PD: en T! creo que hay un post con el netbeans en español aunque no es difícil de usar el que esta en ingles. PD2: Si estoy equivocado con algún termino por favor corrijan sin dudar por ejemplo el de la cohersion no estoy seguro si se llamaba asi Espero que les haya gustado el post.. saludos a todos y si el post tiene éxito voy a seguir con otros programas creados por mi todos.
Datos archivados del Taringa! original
14puntos
6,069visitas
0comentarios
Actividad nueva en Posteamelo
0puntos
0visitas
0comentarios
Dar puntos:

Posts Relacionados

Dejá tu comentario

0/2000

No hay comentarios nuevos todavía

Autor del Post

S
Sharaman088🇦🇷
Usuario
Puntos0
Posts10
Ver perfil →
PosteameloArchivo Histórico de Taringa! (2004-2017). Preservando la inteligencia colectiva de la internet hispanohablante.

CONTACTO

18 de Septiembre 455, Casilla 52

Chillán, Región de Ñuble, Chile

Solo correo postal

© 2026 Posteamelo.com. No afiliado con Taringa! ni sus sucesores.

Contenido preservado con fines históricos y culturales.