105.. Učitati niz (generisati dvocifrene vrijednosti). Naći minimalni i maksimalni član. Zamijeniti mjesta minimalnom i maksimalnom članu u nizu.

Opis rješenja: Pretpostavljamo da je prvi član najveći i najmanji, te da je indeks najvaćeg i najmanjeg člana sa nultim indeksom.

		int indMin = 0;
		int indMax = 0;
		int tmax = niz[0];
		int tmin = niz[0];

Zatim se pristupa nalaženju min i max vrijednosti kao i promjeni odgovarajućeg indeksa. Na kraju se mijenjaju mjesta min i max člana niza.

Listing programa:

package paket1;
import java.util.Scanner;
public class P10511040 {
	
	// Ucitaj clanova niza, odredjivanje minimalnog i maksimalnog, mijenjanje mjesta minimalnom i maksimalnom clanu u nizu
	public static void main(String[] args) {
		Scanner input = new Scanner(System.in);

		System.out.print("Ucitaj broj clanova niza: ");
		int n = input.nextInt();
		int niz[] = new int[n];

        // Stvaranje dvocifrenih brojeva i ispisivanje niza:
        for (int i = 0; i < n; i++) {
            System.out.print((niz[i] = (int) ((Math.random() * 90) + 10)) + " ");
            if (i % 30 == 29 || i == n - 1)
                System.out.println(); // 30 u redu
        }

/*  ucitavanje clanova niza
		System.out.println("Ucitaj clanove niza:");
		for (int i = 0; i < niz.length; i++) {
			System.out.print(i + "-->");
			niz[i] = input.nextInt(); // ucitaj niz[i] - i-ti clan niza
		}
*/
	// pocetne vrijednosti
		System.out.println(" ");
		int indMin = 0;
		int indMax = 0;
		int tmax = niz[0];
		int tmin = niz[0];
		int b;
	
		for (int i = 0; i <= n - 1; i++) {
			if (tmin > niz[i]) {		// min
				tmin = niz[i];
				indMin = i;				// indeks min
			}
			if (tmax < niz[i]) {		// max
				tmax = niz[i]; 
				indMax = i;				// indeks max
			}
		}

		System.out.println("Najmanji clan je: " + tmin + ", njegov indeks je: " + indMin);
		System.out.println("Najveci clan je: " + tmax + ", njegov indeks je: " + indMax);

		b = niz[indMin];
		niz[indMin] = niz[indMax];
		niz[indMax] = b;

		for (int i = 0; i < niz.length; i++)
			System.out.print(niz[i] + " ");
	}
}
	
Ispis na ekranu:
Ucitaj broj clanova niza: 20
29 44 75 51 17 87 67 95 58 99 14 72 27 88 72 18 48 64 79 78 
 
Najmanji clan je: 14, njegov indeks je: 10
Najveci clan je: 99, njegov indeks je: 9
29 44 75 51 17 87 67 95 58 14 99 72 27 88 72 18 48 64 79 78 

Index