Ejercicios Básicos 2 Iniciación Java

Ejercicios de Iniciación Java 2

Ejercicios de Iniciación Java 2

Ejercicios para comenzar a programar en Java. Segunda parte.

Ejercicios

1. Pide 5 números por teclado, los suma y los guarda en un array, luego imprime por pantalla la suma y los números en orden inverso

Solución
import java.util.Scanner;

class arrais1 {

  public static void main(String[] args) {
    Scanner teclado = new Scanner(System.in);
    int datos[], suma = 0;
    datos = new int[5];
    int ind, num;

    for (ind = 0; ind < datos.length; ind++) {
      System.out.println("Introduce dato " + ind);
      /* num=teclado.nextInt();
       datos[ind]=num;*/

      datos[ind] = teclado.nextInt();
    }

    for (ind = 0; ind < datos.length; ind++) {
      suma += datos[ind];
      System.out.println("Datos[" + ind + "]=" + datos[ind]);
    }
    System.out.println("La suma es = " + suma);
    System.out.println("Orden inverso");
    for (ind = (datos.length) - 1; ind >= 0; ind--) {

      System.out.println("Datos[" + ind + "]=" + datos[ind]);
    }

  }

}

2. Pide números por teclado hasta un máximo pedido por teclado. Se piden y se guardan en un array los números hasta que se responda que no o llegue al máximo. Por último se imprimen en orden y se pide un número para buscar. si está se imprime la posición de dicho número en el array.

Solución
import java.util.Scanner;

class arrais2 {

  public static void main(String[] args) {
    Scanner teclado = new Scanner(System.in);
    int datos[], maximo, buscar, posicion;
    int ind, maior, i, ind_p;
    String resp;

    System.out.println("Introduce cuantos numeros ");
    maximo = teclado.nextInt();
    int pos[] = new int[maximo];
    datos = new int[maximo];
    ind = 0;
    do {
      System.out.println("Introduce dato " + ind);
      datos[ind] = teclado.nextInt();
      ind++;

      teclado.nextLine();
      System.out.println("Mas numeros?");
      resp = teclado.nextLine();

    } while ((resp.equals("s") || resp.equals("S")) && ind < maximo);

    for (i = 0; i < ind; i++) {
      System.out.println("Datos[" + i + "]=" + datos[i]);
    }
    System.out.println("Buscamos el mayor");
    maior = datos[ind - 1];
    for (i = ind - 2; i >= 0; i--) {
      if (datos[i] > maior)
        maior = datos[i];

    }
    System.out.println("El mayor es: " + maior);

    System.out.println("Introduce elemento a buscar ");
    buscar = teclado.nextInt();
    posicion = -1;
    ind_p = 0;
    for (i = 0; i < ind; i++) {
      if (datos[i] == buscar) {

        pos[ind_p] = i;
        ind_p++;

        /*Version buscar la primera coincidencia
        /* posicion=i;
        i=maximo;*/
      }
    }
    /*if(posicion>=0)
      System.out.println("La posicion es: "+posicion);
    else
      System.out.println("Elemento no encontrado");*/
    if (ind_p > 0)
      for (i = 0; i < ind_p; i++) {
        System.out.println("La posicion es: " + pos[i]);
      }
    else
      System.out.println("Elemento no encontrado");

  }

}

3. Aplicación de calculadora que muestre un menú con las opciones sumar, restar, multiplicar, dividir y salir. Cada opción será un método diferente:

  • Suma: se le pasan los números e imprime el resultado de la suma.
  • Resta: se le pasan los números y devuelve el resultado de la resta
  • Multiplicación: pide los números por teclado y devuelve el resultado de la multiplicación
  • División: pide los números por teclado e imprime el resultado de la división
Solución
import java.util.Scanner;

class calculadora {

  public static void SUMA(int num1, int num2) {
    System.out.println("La suma es: " + (num1 + num2));
  }

  public static int RESTA(int num1, int num2) {
    return num1 - num2;
  }

  public static int MULTI() {
    int n1, num2;
    Scanner teclado = new Scanner(System.in);
    System.out.println("Introduce num1 ");
    n1 = teclado.nextInt();
    System.out.println("Introduce num2 ");
    num2 = teclado.nextInt();
    return n1 * num2;
  }

  public static void DIV() {
    int n1, num2, div;
    Scanner teclado = new Scanner(System.in);
    System.out.println("Introduce num1 ");
    n1 = teclado.nextInt();
    do {
      System.out.println("Introduce num2 distinto de 0 ");
      num2 = teclado.nextInt();
    } while (num2 == 0);
    div = n1 / num2;
    System.out.println("a div e: " + div);

  }

  public static void main(String[] args) {
    Scanner teclado = new Scanner(System.in);
    int n1, num2, opcion, result;
    do {
      System.out.println("1-SUMAR ");
      System.out.println("2-RESTAR ");
      System.out.println("3-MULTIPLICAR");
      System.out.println("4-DIVIDIR ");
      System.out.println("0-SALIR");
      System.out.println("Introduce opcion ");
      opcion = teclado.nextInt();

      if (opcion == 1) {
        System.out.println("Introduce num1 ");
        n1 = teclado.nextInt();
        System.out.println("Introduce num2 ");
        num2 = teclado.nextInt();
        SUMA(n1, num2);
      }

      if (opcion == 2) {
        System.out.println("Introduce num1 ");
        n1 = teclado.nextInt();
        System.out.println("Introduce num2 ");
        num2 = teclado.nextInt();
        System.out.println("A resta e; " + RESTA(n1, num2));
      }
      if (opcion == 3) {
        result = MULTI();
        System.out.println("El producto es; " + result);
      }
      if (opcion == 4) {
        DIV();
      }

    } while (opcion != 0);
  }

}

4. Pide 2 números por teclado y calcula la potencia del primero elevado al segundo, pero sin utilizar multiplicación ni otros métodos.

Solución
import java.util.Scanner;

class potencia {

  public static void main(String[] args) {
    Scanner teclado = new Scanner(System.in);
    int num2, num1, prod;
    int i, j, auxprod;

    System.out.println("numero1?");
    num1 = teclado.nextInt();
    System.out.println("numero2?");
    num2 = teclado.nextInt();
    prod = num1;
    for (i = 1; i < num2; i++) {
      auxprod = prod;
      for (j = 1; j < num1; j++) {
        prod += auxprod;
      }
    }
    System.out.println("potencia" + prod);
  }
}

5. Pide un número por teclado y calcula si es primo o no.

Solución
import java.util.Scanner;

class primo {

	public static void main(String[] args) {
		Scanner teclado = new Scanner(System.in);
		int num, div;
		boolean primo = true;
		System.out.println("numero?");
		num = teclado.nextInt();
		for (div = 2; div < num; div++) {
			if (num % div == 0)
				primo = false;

		}
		if (primo)
			System.out.println("numero " + num + " primo");
		else
			System.out.println("numero " + num + " no es primo");
	}
}

6. Pide por teclado un intervalo entre 2 números. Luego imprime por pantalla todo el intervalo diciendo los que son primos y los que no.

Solución
import java.util.Scanner;

class primo {

    public static void main(String[] args) {
        Scanner teclado = new Scanner(System.in);
        int num, num1, num2, div;
        boolean primo = true;
        do {
            System.out.println("numero1?");
            num1 = teclado.nextInt();
            System.out.println("numero2? Mayor que numero1 ");
            num2 = teclado.nextInt();
        } while (num1 > num2);

        for (num = num1; num <= num2; num++) {
            primo = true;
            for (div = 2; div < num; div++) {
                if (num % div == 0)
                    primo = false;

            }
            if (primo)
                System.out.println("numero " + num + " primo");
            else
                System.out.println("numero " + num + " no es primo");
        }
    }
}

Más ejercicios Java

Si te ha gustado no olvides compartir en redes sociales.

Espero que te haya servido. Cualquier duda deja un comentario. Un saludo

Dejar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Translate »
Ir a la barra de herramientas