Funkcja random

Odpowiedz Nowy wątek
2013-05-31 16:12
0

Witam wszystkich , jestem początkujący i mam problem z losowaniem . A mianowicie mam tablicę pięcioelementową i chciałbym zrobić przycisk który będzie przestawiał te elementy w tej tablicy (czyli jezeli tab[0]=1 , tab[1]=2 , ...,tab[5]=4 to po wcisnieciu żeby było np: tab[0]=4 , tab[1]=1 , ...,tab[5]=2 )

 
public class NewApplet extends Applet {
 
  int a=1,b=2,c=3,d=4,e=5;
int tabInt[]=new int[5];
Button b1;
  @Override
    public void init() {
 
      b1=new Button("losowanie");
b1.setBounds(100,100,40,20);
add(b1);
 
tabInt[0]=a;
tabInt[1]=b;
tabInt[2]=c;
tabInt[3]=d;
tabInt[4]=e;
    }
 
}

czylidokładnie chce aby moje a,b,c,d,e przestawiały się po naciśnięciu klawisza no i nie wiem dokładnie jak te losowanie przypisać do klawisza. bardzo prosze o pomoc

Pozostało 580 znaków

2013-05-31 16:23
0

Wiem że składnia jest taka ale nie mam pojęcia jak to zaimplementować żeby program działał

Random losowanie;
losowanie = new Random();

Pozostało 580 znaków

2013-05-31 16:31
0

A gdybyś miał wykonać taką operacje na kartce to jak byś to zrobił?


Na PW przyjmuje tylko (ciekawe!) zlecenia. Masz problem? Pisz na forum, nie do mnie.

Pozostało 580 znaków

2013-05-31 16:41
0

no nie wiem , chodzi o to żeby po przycisku przestawić liczby w tablcy

Pozostało 580 znaków

2013-05-31 16:52
0

to nie wiem , pomożesz ?

edytowany 1x, ostatnio: mohamed, 2013-05-31 16:52

Pozostało 580 znaków

2013-05-31 16:54
0

Wyobraź sobie że masz przed sobą 5 kubeczków, w każdym kolorową piłeczkę i kostkę 5-ścienną. W jaki sposób dokonałbyś przeniesienia piłeczek pomiędzy kubeczkami korzystając z takiego zestawu?
Bo twoim problemem nie jest brak umiejętności programowania, tylko brak umiejętności myślenia...


Na PW przyjmuje tylko (ciekawe!) zlecenia. Masz problem? Pisz na forum, nie do mnie.

Pozostało 580 znaków

2013-05-31 17:04
0

Ja specjalistom nie jestem, ale może coś takiego do wymieszania. Metoda shuffle z klasy Collections:

Przykład:

import java.util.Arrays;
import java.util.Collections;
 
public class Glowna {
 
    public static void main(String[] args) {
        Integer[] tab = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
        for(int i = 0; i < 10; i++) {
            System.out.print(tab[i] + " ");
        }
        Collections.shuffle(Arrays.asList(tab));
        System.out.println();
        for(int i = 0; i < 10; i++) {
            System.out.print(tab[i] + " ");
        }
    }
 
}
 

Przed wykonaniem mamy:

1 2 3 4 5 6 7 8 9 10

Po wykonaniu

Collections.shuffle(Arrays.asList(tab)); 

mamy np:

4 2 3 1 6 10 7 5 9 8

edytowany 1x, ostatnio: olek1, 2013-05-31 17:05

Pozostało 580 znaków

2013-05-31 17:04
0

no nie wiem :) wyją bym z jednego kubeczka piłkę i włożył do tego którego by mi pokazała kostka po rzucie a piłeczkę z wylosowanego kubeczka wsadziłbym do tamtego z którego wyjąłem tą pierwszą

No i tak też zrób. Obiekt Random() ma odpowiednią metodę która sprawia ze działa jak taka kostka... - Shalom 2013-05-31 17:22

Pozostało 580 znaków

2013-05-31 17:23
0

Dziękuję olek1 ale czy mozesz mi pomóc jak to podpiąć pod buttona żeby zmieniało klawisze po wciśnięciu przycisku ?

Pozostało 580 znaków

2013-05-31 17:26
0

no tak Shalom tylko że mam problem z kodem

Ano masz, bo nawet nie spróbowałeś go napisać... - Shalom 2013-05-31 17:29

Pozostało 580 znaków

2013-05-31 17:31
0

No nie wiem. Musisz dodać jakiegoś mouseListenera np. który po wciśnięciu przycisku wykona operację.

        b1.addMouseListener(new MouseAdapter() {
            @Override
            public void mouseDown(MouseEvent e) {
                Collections.shuffle(Arrays.asList(tabInt));
            }
        }); 
edytowany 4x, ostatnio: olek1, 2013-05-31 17:32
ot: ten topic jest jak dobra ksiazka: kilku bohaterow, nagle zwroty akcji, watek glowny, watki poboczne i tragiczne dazenie glownego bohatera do zaznania pelni szczescia ;) - n0name_l 2013-05-31 17:36

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0