Skocz do zawartości
  • 0

[Problem] lista


LloydPL

Pytanie

Chce żeby utworzyła się lista z 11 liczbami które mają być losowo wybrane z zakresu 1-40 i żeby się nie powtarzały no i nie wiem czemu ale powtarzają się czasem

loop 11 times:
    set {_num} to random integer between 0 and 40
    while {_num} = 0:
        set {_num} to random integer between 0 and 40
    loop {randomNum::*}:
        while loop-value = {_num}:
            set {_num} to random integer between 0 and 40}
    add {_num} to {randomNum::%loop-number%}    
Edytowane przez Lloyd PL
Odnośnik do komentarza
https://skript.pl/temat/20825-problem-lista/
Udostępnij na innych stronach

5 odpowiedzi na to pytanie

Rekomendowane odpowiedzi

  • 0
clear {num::*} #czyszczenie zawartosci
clear {num2::*} #czyszczenie zawartosci
set {num::*} to 0 #dodawanie liczby, ktora nie zostanie uwzgledniona ponizej
loop 40 times: #edytuj liczbe cyfr
	add loop-number to {num::*} #dodawanie cyfr
loop 11 times:
	set {_wybierz} to random element out of {num::*} #wybieranie losowej liczby
	add {_wybierz} to {num2::*} #dodawanie liczby do zbioru liczb wylosowanych
	remove {_wybierz} from {num::*} #odejmowanie wybraniej liczby ze zbioru wszystkich liczb
loop {num2::*}:
	message "%loop-value%" #potwierdzenie wybranej liczby

 

Odnośnik do komentarza
https://skript.pl/temat/20825-problem-lista/#findComment-141698
Udostępnij na innych stronach

  • 0

Dzięki za podpowiedź, zrobiłem to tak (loop 40 times ma złe tabowanie jak wkleiłem ;/)

loop 40 times:
            add 1 to {_num}
            set {_randomList::%loop-number%} to {_num}
        loop 11 times:
            set {_num1} to random element out of {_randomList::*}
            set {_randomNumList::%loop-number%} to {_num1}
            remove {_num1} from {_randomList::*}
        loop {_randomNumList::*}:
            send "%loop-value%"
Edytowane przez Lloyd PL
Odnośnik do komentarza
https://skript.pl/temat/20825-problem-lista/#findComment-141728
Udostępnij na innych stronach

  • 0
11 godzin temu, Lloyd PL napisał:

Dzięki za podpowiedź, zrobiłem to tak (loop 40 times ma złe tabowanie jak wkleiłem ;/)


loop 40 times:
            add 1 to {_num}
            set {_randomList::%loop-number%} to {_num}
        loop 11 times:
            set {_num1} to random element out of {_randomList::*}
            set {_randomNumList::%loop-number%} to {_num1}
            remove {_num1} from {_randomList::*}
        loop {_randomNumList::*}:
            send "%loop-value%"

 

Tam gdzie masz "loop 11 times" nie wychodzi ci taka liczba tylko "loop 440 times", ponieważ wkleiłeś go w lopa o wartości "40 times" - 40 * 11 = 440.

Odnośnik do komentarza
https://skript.pl/temat/20825-problem-lista/#findComment-141772
Udostępnij na innych stronach

  • 0
57 minut temu, _Of3k napisał:

 

Tam gdzie masz "loop 11 times" nie wychodzi ci taka liczba tylko "loop 440 times", ponieważ wkleiłeś go w lopa o wartości "40 times" - 40 * 11 = 440.

Napisałem że źle się wkleiło, loop 40 times jest w tym samym miejscu (ma tyle samo tabów) co loop 11 times :)

Daje poprawioną wersję żeby nikogo nie wprowadzić w błąd

	loop 40 times:
            add 1 to {_num}
            set {_randomList::%loop-number%} to {_num}
        loop 11 times:
            set {_num1} to random element out of {_randomList::*}
            set {_randomNumList::%loop-number%} to {_num1}
            remove {_num1} from {_randomList::*}
        loop {_randomNumList::*}:
            send "%loop-value%"
	

 

Temat jest do zamknięcia

Edytowane przez Lloyd PL
Odnośnik do komentarza
https://skript.pl/temat/20825-problem-lista/#findComment-141775
Udostępnij na innych stronach

Nieaktywny
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...