package examenes.examen20241025.utils;

import java.util.Scanner;

public class Utils {
    public static int solicitarIntScanner(String pregunta) {
        System.out.println(pregunta);
        Scanner sc = new Scanner(System.in);
        return sc.nextInt();
    }

    public static String solicitarStringScanner(String pregunta) {
        System.out.println(pregunta);
        Scanner sc = new Scanner(System.in);
        return sc.nextLine();
    }

    public static double generarNumAleatorio(int multiplicador) {
        return Math.random() * multiplicador;
    }

    public static void mostrarArrayNums(int array[]) {
        for (int num : array) {
            System.out.print(num + " ");
        }
    }

    public static int[] crearArrayNumsAleatorios(int cantidadElementos, int numMinimo, int numMaximo) {
        int[] nums = new int[cantidadElementos];

        for (int i = 0; i < nums.length; i++) {
            nums[i] = numMinimo + (int) Math.round(generarNumAleatorio((numMaximo - numMinimo)));
        }
        return nums;
    }

    public static int calcularFactorial(int num) {
        int factorial = 1;

        while (num >= 1) {
            factorial *= num;
            num--;
        }
        return factorial;
    }

    public static int[] ordenarBurbuja(int[] array) {
        boolean ordenando;
        do {
            ordenando = false;
            for (int i = 0; i < array.length; i++) {
                if (i != (array.length - 1) && array[i] > array[i + 1]) {
                    int tempNum = array[i];
                    array[i] = array[i + 1];
                    array[i + 1] = tempNum;
                    ordenando = true;
                }
            }
        } while (ordenando);
        return array;
    }
}