Witam , próbuję napisać w javie program do sortowania liczb w tablicy , nie wiem dlaczego ale znajduje tylko jedną maksymalną liczbe a potem juz jakby ją zapisuje i nie szuka dalej , może ktoś pomóc? np przy wpisaniu liczb do tablicy ( 7,12,6,9) program wypisuje 4 razy liczbę 12
poniżej kod :
import java.util.Scanner;
public class LiczbyPierwsze {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
//program do sprawdzania czy podana liczba jest liczbą pierwszą
Scanner odczyt = new Scanner(System.in);
System.out.println("Z ilu elementów będzie się składać tablica? ");
int wielkoscTab = odczyt.nextInt();
System.out.println("Tablica będzie się składać z " + wielkoscTab + " elemenów");
int tablica[] = new int[wielkoscTab]; //nadanie wielkosci tablicy
//wpisywanie elementow do tablicy
for(int i=0; i<tablica.length;i++)
{
System.out.println("Podaj " + (i+1) + " element tablicy ");
Scanner czytajLiczbe = new Scanner(System.in);
int liczba = odczyt.nextInt();
tablica[i]=liczba;
}
/*wyswietlenie tablicy
System.out.println("Oto elementy tablicy: ");
for(int i=0; i<tablica.length;i++)
{
System.out.print(tablica[i]+",");
}
System.out.println("");
*/
//sortowanie tablicy
int max=0;
int pozycja=0;
System.out.println("Liczby posortowane malejąco to:");
for(int j=0;j<tablica.length;j++)
{
for(int i=0;i<tablica.length;i++)
{
if(max<tablica[i])
{
max=tablica[i];
pozycja=i;
}
tablica[pozycja]=0;
}
System.out.println(max+",");
}
}
}