You are on page 1of 5

1) Crea una aplicacin que nos calcule el rea de un circulo, cuadrado o triangulo.

Pediremos que figura


queremos calcular su rea y segn lo introducido pedir los valores necesarios para calcular el rea.
Crea un mtodo por cada figura para calcular cada rea, este devolver un nmero real. Muestra el
resultado por pantalla
Aqu te mostramos que necesita cada figura:

Circulo: (radio^2)*PI
Triangulo: (base * altura) / 2
Cuadrado: lado * lado

package metodos333;
import javax.swing.JOptionPane;
public class Metodos333 {
public static void main(String[] args) {
//Declaramos esta variable para reutilizarla y no tener que declarar tantas
variables
String texto="";
//Declaramos esta variable para mostrar al final el resultado
double resultado=0;
String eleccion=JOptionPane.showInputDialog("Introduce una figura:
circulo, triangulo o cuadrado");
switch (eleccion){
//Segun la figura realizamos una serie de acciones
case "circulo":
texto=JOptionPane.showInputDialog("Introduce el radio");
int radio=Integer.parseInt(texto);
resultado=areaCirculo(radio);
break;
case "triangulo":
texto=JOptionPane.showInputDialog("Introduce la base");
int base=Integer.parseInt(texto);
texto=JOptionPane.showInputDialog("Introduce la altura");
int altura=Integer.parseInt(texto);
resultado=areaTriangulo(base, altura);
break;
case "cuadrado":
texto=JOptionPane.showInputDialog("Introduce la medida de un lado");
int lado=Integer.parseInt(texto);
resultado=areaCuadrado(lado);
break;
default:
System.out.println("No has introducido una figura correcta");
}
System.out.println("El area del "+eleccion+" es "+resultado);
}
public static double areaCirculo (int radio){
return Math.pow(radio, 2)*Math.PI;

}
public static double areaTriangulo (double base, double altura){
return base*altura/2;
}
public static double areaCuadrado (int lado){
return lado*lado;
}
}

2) Crea una aplicacin que nos genere una cantidad de nmeros enteros aleatorios que nosotros le
pasaremos por teclado. Crea un mtodo donde pasamos como parmetros entre que nmeros
queremos que los genere, podemos pedirlas por teclado antes de generar los nmeros. Este mtodo
devolver un nmero entero aleatorio. Muestra estos nmeros por pantalla.

package metodos333;
import javax.swing.JOptionPane;
public class Metodos333 {
public static void main(String[] args) {
//Introducimos los datos necesarios
String texto=JOptionPane.showInputDialog("Introduce cantidad de
elementos");
int limite=Integer.parseInt(texto);
texto=JOptionPane.showInputDialog("Introduce un numero");
int numero1=Integer.parseInt(texto);
texto=JOptionPane.showInputDialog("Introduce un numero");
int numero2=Integer.parseInt(texto);
//generamos los numeros
for(int i=0;i<limite;i++){
System.out.println(generaNumero(numero1, numero2));
}
}
public static int generaNumero(int num1, int num2){
return ((int)Math.floor(Math.random()*(num2-num1)+num1));
}
}
3) Crea una aplicacin que nos pida un nmero por teclado y con un mtodo se lo pasamos por
parmetro para que nos indique si es o no un nmero primo, debe devolver true si es primo sino false.

package metodos333;
import javax.swing.JOptionPane;
public class Metodos333 {
public static void main(String[] args) {
String texto=JOptionPane.showInputDialog("Introduce un numero");
int numero=Integer.parseInt(texto);
//Ejecutamos la funcion, como devuelve true o false, se puede colocar en
un if"
if (esPrimo(numero)){
System.out.println("El numero "+numero+" es primo");

}else{
System.out.println("El numero "+numero+" no es primo");
}
}
public static boolean esPrimo (int numero){
//Un numero menor o igual que 1, no es primo.
if (numero<=1){
return false;
}
//Declaramos esta variable aqui ya que despues es usada"
int cont=0;
for (int divisor=(int)Math.sqrt(numero);divisor>1;divisor--){
//contabilizados los divisibles"
if (numero%divisor==0){
cont+=1;
}
}
//Segn el numero de divisibles es o no primo"
if (cont>=1){
return false;
}else{
return true;
}
}
}
4) Crea una aplicacin que nos calcule el factorial de un nmero pedido por teclado, lo realizara
mediante un mtodo al que le pasamos el nmero como parmetro. Para calcular el factorial, se
multiplica los nmeros anteriores hasta llegar a uno.

5) Crea una aplicacin que nos convierta un nmero en base decimal a binario. Esto lo realizara un
mtodo al que le pasaremos el numero como parmetro, devolver un String con el numero convertido a
binario. Para convertir un numero decimal a binario, debemos dividir entre 2 el numero y el resultado de
esa divisin se divide entre 2 de nuevo hasta que no se pueda dividir mas, el resto que obtengamos de
cada divisin formara el numero binario, de abajo a arriba.

Veamos

un

ejemplo:

si

introducimos

un 8 nos

deber

devolver 1000

package metodos333;
import javax.swing.JOptionPane;
public class Metodos333 {
public static void main(String[] args) {
String texto=JOptionPane.showInputDialog("Introduce un numero");
int numero=Integer.parseInt(texto);
String binario=decimalBinario(numero);
System.out.println("El numero "+numero+ " en binario es "+binario);
}
public static String decimalBinario (int numero){
String binario="";
String digito;
for(int i=numero;i>0;i/=2){
if(i%2==1){
digito="1";
}else{
digito="0";
}
//Se aade el digito al principio (mira la imagen del post)
binario=digito+binario;
}
return binario;
}
}

6) Crea una aplicacin que nos cuente el nmero de cifras de un nmero entero positivo pedido por
teclado. Crea un mtodo que realice esta accin, pasando el nmero por parmetro, devolver el
nmero de cifras.

7) Crea un aplicacin que nos convierta una cantidad de euros introducida por teclado a otra moneda,
estas pueden ser a dolares, yenes o libras. El mtodo tendr como parmetros, la cantidad de euros y la
moneda a pasar que sera una cadena, este no devolver ningn valor, mostrara un mensaje indicando
el cambio (void).
El cambio de divisas son:

0.86 libras es un 1

1.28611 $ es un 1

129.852 yenes es un 1

You might also like