Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Losowanie słowa?


Rekomendowane odpowiedzi

Opublikowano

Siemka,

 

Postanowiłem sobie odświeżyć trochę AutoIt bo jednak najlepiej się w nim czuje i jest to najlepszy język jeśli pisze się tylko programy do użytku własnego  :D

 

W każdym razie - potrzebuję zrobić coś takiego że losuje słowo + losuje 2 słowo i dodaje je do pierwszego... nie umiem tego lepiej wytłumaczyć  -.-

 

W każdym razie - mam coś takiego: 

 

Global $asWords[2] = ["Auto","Autobus"]
MsgBox(0, "Słowo", $asWords[Random(0, UBound($asWords), 1)])
 
Losuje to słowo i je wpisuje. Ale teraz jak do tego słowa dodać inne, które też jest wylosowane? Np. Żeby się losowało: Toyota,Mazda,WW,BMW,Solaris itd. i dodawało do tego pierwszego? Mam nadzieje że się domyślicie o co mi chodzi  :D

 

 

Opublikowano
Global $asWords[2] = ["Auto","Autobus"]
MsgBox(0, "Słowo", $asWords[Random(0, UBound($asWords), 1)] & ", " & $asWords[Random(0, UBound($asWords), 1)])

Łańcuchy znaków łączy się operatorem &.

Opublikowano

Działa, ale:

 

1.Musiałem zmienić na:

Global $asWords1[4]= ["Mazda","Solaris"]
Global $asWords[4] = ["Auto","Autobus"]
MsgBox(0, "Sowo", $asWords[Random(0, UBound($asWords), 1)] & ", " & $asWords1[Random(0, UBound($asWords1), 1)])

2. Program się co chwile wywala.. tzn. Raz jest ok i daje np. Auto, Solaris. Za drugim razem daje samo ,Solaris        A za trzecim:

 

Array variable has incorrect number of subscripts or subscript dimension range exceeded.:
MsgBox(0, "Sowo", $asWords[Random(0, UBound($asWords), 1)] & ", " & $asWords1[Random(0, UBound($asWords1), 1)])
MsgBox(0, "Sowo", ^ ERROR
 
 
 
Czemu tak się dzieje? 
Opublikowano

A fakt, potrzebujemy losowej liczby od 0 do ilość elementów - 1, a losujemy od 0 do ilości elementów. Dopisz - 1 po UBound i będzie działać.

Opublikowano

Możesz nieco jaśniej? Chodzi ci o losowanie bez powtórzeń czy o co?

Opublikowano
Global $asWords1[4]= ["Mazda","Solaris"]
Global $asWords[4] = ["Auto","Autobus"]

Popraw na

Global $asWords1[2]= ["Mazda","Solaris"]
Global $asWords[2] = ["Auto","Autobus"]
Opublikowano
Losuje to słowo i je wpisuje. Ale teraz jak do tego słowa dodać inne, które też jest wylosowane? Np. Żeby się losowało: Toyota,Mazda,WW,BMW,Solaris itd. i dodawało do tego pierwszego? Mam nadzieje że się domyślicie o co mi chodzi  :D

A, o to ci chodzi. To możesz np. tak:

Local $slowa[5] = ["Fiat", "BMW", "Toyota", "Mitsubishi", "Mercedes-Benz"]
Local $tresc
Do
    $tresc &= $slowa[Random(0,UBound($slowa)-1)] & ", "
Until MsgBox(0x1, "Slowa", $tresc) == 2

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...