Diskuze: Zjištění pozice v poli

Java Java Zjištění pozice v poli

Avatar
Gooner47
Člen
Avatar
Gooner47:

Ahoj, začínám s Javou a potřeboval bych poradit jak zjistím pozici nejmenšího čísla v poli zatím mám jen kód který zjistí nejmenší číslo v poli. Děkuji za každou radu.

public static void main(String[] args) {
        Sys.pln("Zadejte počet čísel v poli:");
        int[] pole = new int[Sys.readInt()];
        Sys.pln("Zadejte "+pole.length+" čísel");
        for (int i=0; i<pole.length; i++)
            pole[i] = Sys.readInt();
        int min = pole[0];
            for(int i=1; i<pole.length; i++){
                if(min > pole[i]){
                    min = pole[i];
                }
            }
        Sys.pln("Nejmenší číslo v poli je "+min);
    }
 
Odpovědět 9.11.2014 15:07
Avatar
Matěj Kripner
Redaktor
Avatar
Odpovídá na Gooner47
Matěj Kripner:

Udělej si vedle proměnné min pro ukládání hodnoty minima i proměnnou pro ukládání indexu posledního načteného minima. Obsah druhého cyklu se poté změní na:

if(min > pole[i]) {
    min = pole[i];
    indexMin = i;
}
Nahoru Odpovědět 9.11.2014 15:14
"We reject kings, presidents and voting. We believe in rough consensus and running code" David Clark
Avatar
Gooner47
Člen
Avatar
Odpovídá na Matěj Kripner
Gooner47:

Když to takhle poupravím tak mi to vždycky vypíše pozici o jedu míň než na které je číslo Dalo by se to vyřešit takto:

indexMin = i+1

Ale nevím jestli je to dobrej nápad to takhle mít

 
Nahoru Odpovědět 9.11.2014 15:36
Avatar
Jarvis
Člen
Avatar
Jarvis:

Pole v Javě se indexují od 0 (tzn: 1. prvek v poli je na pole[0], 2. prvek v poli je na pole[1] atd), proto musíš přičíst jedničku, jak si správně udělal.

 
Nahoru Odpovědět 9.11.2014 15:50
Avatar
Gooner47
Člen
Avatar
Odpovídá na Jarvis
Gooner47:

Aha to jsem nevěděl děkuji =)

 
Nahoru Odpovědět 9.11.2014 15:56
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 5 zpráv z 5.