/*
 * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
 * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Main.java to edit this template
 */
package szukanieLiczb;

import java.util.Random;
import java.util.Scanner;

/**
 *
 * @author mateo
 */
public class SzukanieLiczb {

    /*
    ******************************************************
    nazwa funkcji: wypelnijTablice
    argumenty: tablica - tablica do wypelnienia pseudolosowymi liczbami
    typ zwracany: void
    informacje: wypełnia podaną tablice pseudolosoymi liczbami z zakresu 1-100
    autor: 532
    *****************************************************
    */
    public static void wypelnijTablice(int[] tablica) {
        Random rand = new Random();
        for(int i=0; i<tablica.length; i++) {
            tablica[i] = rand.nextInt(1, 100);
        }
    }
    
     /*
    ******************************************************
    nazwa funkcji: wyświetlTablice
    argumenty: tablica - tablica do wyświetlenia
    typ zwracany: void
    informacje: wyświetla wszystkie liczby w jednej lini podzielone przecinkiem
    autor: 532
    *****************************************************
    */
    
    public static void wyswietlTablice(int[] tablica) {
        for(int i=0; i<tablica.length; i++) {
            System.out.print(tablica[i] + ", ");
        }
    }
    
     /*
    ******************************************************
    nazwa funkcji: znajdzLiczbe
    argumenty: tablica - tablica w której szukamy liczby
               szukana - przechowywuje szukaną liczbe w tablicy
    typ zwracany: int - indeks wyszukanej liczby
    informacje: szuka liczby w tablicy i zwraca indeks jeśli 
                znajdzie liczbe lub -1, kiedy nie znajdzie
    autor: 532
    *****************************************************
    */
    
    public static int znajdzLiczbe(int[] tablica, int szukana) {
        
        for(int i=0; i<tablica.length; i++) {
            if(szukana == tablica[i])
                return i;
        }
        
        return -1;
    }
    
    public static void main(String[] args) {
        int[] losoweLiczby = new int[50];
        Scanner sc = new Scanner(System.in);
        wypelnijTablice(losoweLiczby);
        
        System.out.println("Podaj liczbe do wyszukania: ");
        int szukanaLiczba = sc.nextInt();
        int indeksSzukanejLiczby = znajdzLiczbe(losoweLiczby, szukanaLiczba);
        
        wyswietlTablice(losoweLiczby);
        
        if(indeksSzukanejLiczby == -1) System.out.println("\nPodana liczba nie znajduje sie w tablicy");
        else System.out.println("\nIndeks szukanej liczby: " + indeksSzukanejLiczby);
        
    }   
    
}
