Forum strony www.multipasko.pl [Regulamin]


Dodaj wpis w tym temacie
Spis tematów
Login:

Hasło:
Strona: 1 2 ... 460 461 462 ... 560 561
Wyślij wiadomość do admina

Przewiń wpisy ↓

moje ... oprogramowanie

2021-04-26 (20:19)

status 777ch
Data rejestracji: 2005-11-07
Ilość postów: 23091

1386
wpis nr 1 360 469
[ CZCIONKA MONOSPACE ]



oczywiście każdy znak ma przypisany numer
ale ja nie chciałem tak jak na obrazku
czyli numeru znaku dla liczby


tylko losowanie znaku
i numer pozycji znaku to liczba z tablicy dedykowanych liczb
które mogą być stałe lub zmienne


tu jest roboczy ......z tego powstał po małej przeróbce
kod randomizera dla korelacji
znakirandom.exe
Link do pliku:
https://uploadfile.pl/pokaz/2151819---y2xt.html

to plik wykonywalny
zawsze jak coś majstruje
to powstaje taki plik roboczy
ten powstał zdaje się w 2012 albo wcześniej
2021-04-26 (20:25)

status 777ch
Data rejestracji: 2005-11-07
Ilość postów: 23091

1386
wpis nr 1 360 471
[ CZCIONKA MONOSPACE ]

ogólnie to funkcja

wybór polega na wylosowaniu ciągu znaków

a rezultatem jest ciąg liczbowy
to znaczy pozycja znaku odpowiada liczbie
jaka znajduje się na pozycji znaku w innej tablicy

trochę to poplątane

ale jeśli .......ciąg znaków jest losowy

ws18374:"{

a szukamy pozycji znaku =[:]
to będzie to 7
teraz jeśli tablica dedykowanych liczb jest losowa
to siódma liczba w tablicy to będzie ....... ten NUMBER ONE w kombinacji

ale nie trzeba tak utrudniać
wystarczy random
tylko nie chciałem używać wbudowanego...............
2021-04-26 (20:28)

status 777ch
Data rejestracji: 2005-11-07
Ilość postów: 23091

1386
wpis nr 1 360 472
[ CZCIONKA MONOSPACE ]

znaczy
dokładnie to--> "funkcja losuje znaki"

np takie 10 sekwencji po 20 znaków

uo$^t%yaqvj/[#z]h&l*
`^!#j[&vtag*r;cs$\nb
#mx;.e!ybfo&wvk@/lz[
mc,q]pn!/#vfe*lj&x%r
hrv#%;\f,`q.mi^]e!@&
@]wuqf![i.cxhmegr;j*
hx#vl.u^b%f!eiy&go[*
hk!s`#lt\be]djm%ugnr
l$dshge/.kxw\y[#&z@o
s&oud!\lv%j[yx]fcwk;

to odpowiada

-7-9-38-40-5-39-6-13-1-28-19-34-11-37-25-12-18-41-21-42-
-23-40-35-37-19-11-41-28-5-13-17-42-4-22-27-14-38-24-30-29-
-37-31-26-22-33-3-35-6-29-16-9-41-2-28-20-36-34-21-25-11-
-31-27-32-1-12-10-30-35-34-37-28-16-3-42-21-19-41-26-39-4-
-18-4-28-37-39-22-24-16-32-23-1-33-31-8-40-12-3-35-36-41-
-36-12-2-7-1-16-35-11-8-33-27-26-18-31-3-17-4-22-19-42-
-18-26-37-28-21-33-7-40-29-39-16-35-3-8-6-41-17-9-11-42-
-18-20-35-14-23-37-21-5-24-29-3-12-15-19-31-39-7-17-30-4-
-21-38-15-14-18-17-3-34-33-20-26-2-24-6-11-37-41-25-36-9-
-14-41-9-7-15-35-24-21-28-39-19-11-6-26-12-16-27-2-20-22-

po posortowaniu

1 5 6 7 9 11 12 13 18 19 21 25 28 34 37 38 39 40 41 42
4 5 11 13 14 17 19 22 23 24 27 28 29 30 35 37 38 40 41 42
2 3 6 9 11 16 20 21 22 25 26 28 29 31 33 34 35 36 37 41
1 3 4 10 12 16 19 21 26 27 28 30 31 32 34 35 37 39 41 42
1 3 4 8 12 16 18 22 23 24 28 31 32 33 35 36 37 39 40 41
1 2 3 4 7 8 11 12 16 17 18 19 22 26 27 31 33 35 36 42
3 6 7 8 9 11 16 17 18 21 26 28 29 33 35 37 39 40 41 42
3 4 5 7 12 14 15 17 18 19 20 21 23 24 29 30 31 35 37 39
2 3 6 9 11 14 15 17 18 20 21 24 25 26 33 34 36 37 38 41
2 6 7 9 11 12 14 15 16 19 20 21 22 24 26 27 28 35 39 41


i to jest random jaki zastosowałem

jak widać
znak * to liczba 42

dekoderem jest układ

znaki:='qwertyuiop[]asdfghjkl;`\zxcvbnm,./!@#$%^&*()_+QWERTYUIOP{}ASDFGHJKL:"ZXCVBNM<>?0';

znak * to liczba 42
bo to 41-pozycja znaku * w moim stringu
a w tablicy dedykowanej pod 41 mam 42
bo tablice mam od 0
bo pozycja dla znaku q=0

ale równie dobrze tablica dedykowanych liczb np od 1 do 99 moze być wypełniana losowo
wtedy już każdej.......żadnej sekwencji nie rozkminisz..........

a string 80 znaków asci .......każdy może sobie ułożyć własny

--- wpis edytowano 2021-04-26 20:39 ---

2021-04-26 (20:52)

status 777ch
Data rejestracji: 2005-11-07
Ilość postów: 23091

1386
wpis nr 1 360 487
[ CZCIONKA MONOSPACE ]

fm[/o
$\@*t
^[vgb
$iw&q
gzxnf
d!kf;
s*.po
gb^;$
[mnyo
p/$c#




9 11 16 31 34
5 24 36 38 42
11 17 28 29 40
1 2 8 38 41
16 17 25 26 30
15 16 20 22 35
9 10 14 33 42
17 22 29 38 40
6 9 11 30 31
10 27 34 37 38


-- Gwar.2 if [2] --
C(42,5,2,2) =10,917537746806 % brak[767]
Brak {767}
Sprawdzono zbiór = 861 kombinacji
Gwar..[2]= 10,917537746806 %


wynik 767 jest do........... poprawienia
ale.....chyba zaledwie na 761


-- Gwar.2 if [2] --
C(42,5,2,2) =11,6144018583043 % brak[761]
Brak {761}
Sprawdzono zbiór = 861 kombinacji
Gwar..[2]= 11,6144018583043 %

a wiec random zrobił układ sekwencji znaków
bliski ......... do ostatecznego możliwego wyniku
2021-04-26 (22:00)

status fair_play
Data rejestracji: 2016-05-12
Ilość postów: 8998

14865
wpis nr 1 360 512
[ CZCIONKA MONOSPACE ]


Ta funkcja wymaga analizy

P.S. usuń te obrazki
2021-04-26 (22:08)

status 777ch
Data rejestracji: 2005-11-07
Ilość postów: 23091

1386
wpis nr 1 360 516
[ CZCIONKA MONOSPACE ]

Ty potrafisz ....
A pogadamy jeszcze nie jeden raz
..mam nadzieję

nie łap tylko tego..
co kleszek złapał.
2021-04-26 (22:55)

status fair_play
Data rejestracji: 2016-05-12
Ilość postów: 8998

14865
wpis nr 1 360 529
[ CZCIONKA MONOSPACE ]


Powiedz w jaki sposób powstają te 5-znakowe stringi.

zdjęcie

bo reszta jest jasna.

w środkowym dolnym oknie są pozycje kolejnych znaków w każdego ze stringów na Twojej liście znaków.

w środkowym górnym to samo posortowane.

Prawe okno nie różni się niczym od środkowego.

kleszek złapał ponownie, czy mówisz o tym co już było i minęło ?
2021-04-26 (23:17)

status 777ch
Data rejestracji: 2005-11-07
Ilość postów: 23091

1386
wpis nr 1 360 531
[ CZCIONKA MONOSPACE ]

te stringi to

Result:=z+Result;

czyli znak nowy i poprzednie
dopuki długość stringu nie osiagnie wymaganego ustawienia
czyli patrz na poczatek --> while Length(Result) < id do begin

bo id to nasze ustawione 5 z 42


zerknij tu

Public Function RandomizeF(Num1 As Integer, Num2 As Integer)
'Update 20131107
Dim Rand As String
Application.Volatile
getLen = Int((Num2 + 1 - Num1) * Rnd + Num1)
Do
i = i + 1
Randomize
Rand = Rand & Chr(Int((85) * Rnd + 38))
Loop Until i = getLen
RandomizeF = Rand
End Function

to coś podobnego do do mojej konstrukcji

źródło
https://www.extendoffice.com/documents/excel/642-excel-generate-random-string.html

ale nawet nie byłem na tej stronie
pewnie powstała po 2012




u mnie znak losowany jest składany w string
while Length(Result) < id do begin
czyli jesli results < id czyli 5 jak w tym ustawieniu

z:=znaki[ Random(fle)+1 ]; a jeśli długość wylosowanych
z to takie losowanie z worka a w worku są te znaki co
są podane w stringu ='qwertyuiop[]asdfghjkl;`\zxcvbnm,./!@#$%^&*()_+QWERTYUIOP{}ASDFGHJKL:"ZXCVBNM<>?0';


jesli id osiagnie wymagane ustawienie
a właściwie dopuki nie osiagnie to znaki sa losowane i scalane w rezultat
....... w tym przypadku ustawione 5 znaków
jak znajdzie 5 albo inne ustawione .......to jest koniec
i results to ciąg znaków wylosowanych

ale od razu w funkcji jest zapisywana tablica liczb
tabrobocza[zaksystem][p[pos(z,znaki)]]:= p[pos(z,znaki)];

zaksystem to ticket numer czyli linia
to jest stała w zmiennych globalnych
czyli zapisujemy pod linię ...... na pozycji znaku liczbę z tablicy o nazwie p
gdzie p[numer pozycjiznaku] to jakas liczba

stad w programie okno znaków i gotowe sekwencje liczb

--- wpis edytowano 2021-04-26 23:25 ---

2021-04-26 (23:33)

status 777ch
Data rejestracji: 2005-11-07
Ilość postów: 23091

1386
wpis nr 1 360 536
[ CZCIONKA MONOSPACE ]

Nie dałem specjalnych zabezpieczeń na ilości
to znaczy nie ustawiaj 100000 bo to nie ma sensu
wpisywać linia po linii do memo okna
dla większych ilości trzeba to wrzucać na liste
i jak skończy to zrzucić do pliku
to tylko programik roboczy sprzed lat
jak widzisz tu z kolei ......

ustawione 27 znaków 10 zakładów dla V=80
2021-04-26 (23:39)

status fair_play
Data rejestracji: 2016-05-12
Ilość postów: 8998

14865
wpis nr 1 360 537
[ CZCIONKA MONOSPACE ]

widzę, że muszę uszczegółowić pytanie.

skąd się bierze poszczególny znak w stringu ?

odpowiedz słowami.

skąd w stringu np. "emkz&"

bierze się e,m,k,z,& ?

--- wpis edytowano 2021-04-26 23:44 ---

2021-04-27 (00:10)

status 777ch
Data rejestracji: 2005-11-07
Ilość postów: 23091

1386
wpis nr 1 360 541
[ CZCIONKA MONOSPACE ]

kluczowa linia to
z:=znaki[ Random(fle)+1 ];//losujemy pierwszy znak z ilości znaków = fle czyli z 42 np
// zaksystem:=memo1.Lines.Count;
// fle:=spinedit3.Value; // zmienna dla v
to właściwie losowanie znaku ze stringu już ustalonego jako zmienna= znaki

jak losowanie z stringu Multipasko z tym że to tylko 10 znaków jest .......



p: array[0..81] of integer;
tabrobocza: array[0..999, 0..81] of Longint;

wynik czyli szukany ciag to resultat funkcji
testowa:=losowy_ciag2;// czyli results



wpada do
memo1.Lines.Add(testowa);

jak składany jest ....ciąg znaków w string to juz było

Randomize; // czyli inicjujemy
znaki:='qwertyuiop[]asdfghjkl;`\zxcvbnm,./!@#$%^&*()_+QWERTYUIOP{}ASDFGHJKL:"ZXCVBNM<>?0'; // to nasza układanka ,czyli stringi w stringu

while Length(Result) < id do begin// lecimy do momentu az uzyskamy id=np 5 znaków
z:=znaki[ Random(fle)+1 ];//losujemy pierwszy znak z ilości znaków = fle czyli z 42 np
// zaksystem:=memo1.Lines.Count;
// fle:=spinedit3.Value; // zmienna dla v

no i jakis znak z stringu który sie nazywa znaki na pewno jest wylosowany

dalej chyba już rozumiesz..........

--- wpis edytowano 2021-04-27 00:12 ---

2021-04-27 (00:16)

status 777ch
Data rejestracji: 2005-11-07
Ilość postów: 23091

1386
wpis nr 1 360 542
[ CZCIONKA MONOSPACE ]

skąd w stringu np. "emkz&"

losujemy je z stringu bazowego jakim jest zmienna o nazwie --> znaki
której zawartość jest z góry ustalona w funkcji

chyba po prostu zamiast fle było napisać 42 czy 80
ale to zmienna ze spineditu .......... której to value wykorzystuje random
2021-04-27 (00:31)

status fair_play
Data rejestracji: 2016-05-12
Ilość postów: 8998

14865
wpis nr 1 360 543
[ CZCIONKA MONOSPACE ]

No to nie rozumiem tej idei.

Bo żeby ze zmiennej znaki wylosować znak "e" musisz najpierw wylosować liczbę 3 (albo liczbę, która modulo fle da 3) bo na pozycji 3 znajduje się znak "e".
Po czym szukasz w zmiennej "znaki" tego znaku "e".
I znajdujesz go na pozycji 3.

I to 3 wstawiasz jako wylosowaną liczbę.

Czyli reasumując 3=3

--- wpis edytowano 2021-04-27 00:39 ---

2021-04-27 (01:06)

status 777ch
Data rejestracji: 2005-11-07
Ilość postów: 23091

1386
wpis nr 1 360 545
[ CZCIONKA MONOSPACE ]

Masz rację .....
... kwestia
co wstawiasz za $ czy za *
kolejno jak w p[2] jest 2 to jak znak=w to liczba = 2
ale jeśli ta....... tablica p[1~v] nie jest ciągiem kolejnych liczb
a.......jest wypełniana losowym ciągiem .....

oczywiście możemy losować od razu rand [v]
gdzie nasza liczba prawidłowa = liczba losowana dla p[1] = np 33

było kilka wersji ,w końcu zdaje się to zostało
choć to jakby tylko początek
bo jak wiadomo ....... kolejne
losowe liczby to już z odwołaniem do
istniejącego ciągu w tablicy korelacji

Na początku miałem inaczej ,ale pamiętam
że się z tego podwójnego losowania wycofałem .








2021-04-27 (01:32)

status 777ch
Data rejestracji: 2005-11-07
Ilość postów: 23091

1386
wpis nr 1 360 547
[ CZCIONKA MONOSPACE ]

a jednak się z tego nie wycofałem ........
sprawdziłem w korelacjach ..........

mam podwójne odwołanie
stad
function losowy_ciag
oraz
function losowy_ciag2




function losowy_ciag : string;
var


ect
ect

losr:= Random(vmax)+1;

z:=inttostr(losr);


if (Pos(z, Result) =0)and(dub[strtoint(z)]=0)
then begin
Result:=Result+z+',';
inc(mamto);

p[mamto]:=strtoint(z);

co oznacza że do tablicy p[mamto] pod p[1] trafi liczba losowa

ale mam to ........ przekombinowane
wszystko dlatego że w globalnych mam definiowane raz
zmienne jako integer które nadpisuje jako stringi
i odwrotnie .... wpisuje do tablic wartości ze stringów

ale rzeczywiście liczby dla tablicy p[V]
przyjmują losowe wartości



Czyli reasumując rzadko kiedy 3=3

o dziwo nie pamiętam już szczegółów ,
bez zaglądania do kodu
to dlatego ze program ma już dobre ..... kilka latek

.......przekombinowałem ....
nie wiem teraz sam ..dlaczego

--- wpis edytowano 2021-04-27 01:44 ---

2021-04-27 (10:01)

status Molek
Data rejestracji: 2005-12-12
Ilość postów: 4801

1497
wpis nr 1 360 580
[ CZCIONKA MONOSPACE ]

Witam
Ja używam Randomu w takiej postaci:
Los1:=Random(80)+1;
Repeat
Los2:=Random(80)+1;
Until Los2<>Los1;

Mniejszą Liczbę Dzielę przez większą.
Wynik to Liczba poniżej 1.
Wtedy Mnożę (Wynik*80)+1;
Rezultat: Wylosowany Numer.
W powyższym przykładzie dotyczy Multi Lotka.

Dla innych gier "80" zamieniamy na max. liczb w danej grze.
pozdrawiam

--- wpis edytowano 2021-04-27 10:05 ---

2021-04-27 (11:57)

status Lottonauta
Data rejestracji: 2012-09-03
Ilość postów: 3820

13559
wpis nr 1 360 589
[ CZCIONKA MONOSPACE ]

Dobry generator losowy potrafi wygenerować np. 10 razy tą samą wartość.

@(777ch, Molek)
- jak zareaguje wasza procedura na takie zdarzenie - funkcja Random()?

W przypadku 777ch nie wiem, bo widzę tylko fragmenty, jest mocno zagmatwana i nie chce mi się jej analizować.

W przypadku Molka, to ta procedura wręcz zabrania takiego zdarzenia: Until Los2<>Los1;

--- wpis edytowano 2021-04-27 12:01 ---

2021-04-27 (12:55)

status fair_play
Data rejestracji: 2016-05-12
Ilość postów: 8998

14865
wpis nr 1 360 603
[ CZCIONKA MONOSPACE ]

777ch>

777ch>
Nie widzę żadnej szczególnej roli kodów ascii, przecież to w sumie liczby.

Gdybyś nieco zmodyfikował swój pomysł i zrobił coś takiego:
Deklarujesz tablicę (10,limit), gdzie limit przyjmuje wartości 42,49,80 w zależności od gry.
Każdy z 10 wierszy tablicy wypełniasz liczbami 1-limit w losowej kolejności.
Dla DL wyglądać mogłaby tak:

zdjęcie

I teraz rozpoczyna się losowanie.
Losujesz dwie liczby:
wiersz z przedziału 1-10,
liczba z przedziału 1-limit

I teraz w wierszu wiersz szukasz liczby liczba.

Znaleziona pozycja to wylosowana liczba

Oczywiście nie dopuszczasz do powtórek wylosowanej liczby w zakładzie.

--- wpis edytowano 2021-04-27 12:57 ---

2021-04-27 (15:11)

status fair_play
Data rejestracji: 2016-05-12
Ilość postów: 8998

14865
wpis nr 1 360 628
[ CZCIONKA MONOSPACE ]

"nie wiem czemu proponujesz tylko 10"

Bo to tylko przykład

Czy w tym swoim programie blokujesz powtórki ?
Bo zadałem mu 100 000 i na początku szedł jak burza, a teraz muli i pewnie nie skończy do północy

--- wpis edytowano 2021-04-27 15:13 ---

2021-04-27 (15:17)

status 777ch
Data rejestracji: 2005-11-07
Ilość postów: 23091

1386
wpis nr 1 360 629
[ CZCIONKA MONOSPACE ]

muli bo rzeczywiscie jedno okno jest specjalne .......
środkowe górne dla powtórek >= t
ale to jest ukryte ustawienie ......
żebyś się niepotrzebnie nie bawił
pisałem i uprzedzałem -->byś nie załączał duzych porcji

ale ci pisałem ze to testowe narzedzie
gdybys chcial duzo danych
to trzeba liste utworzyć
i wrzucac string za stringiem ......bez żadnych sprawdzeń
wtedy sobie mozesz generowac...... do wielkosci pamieci

--- wpis edytowano 2021-04-27 15:20 ---

| Dodaj wpis w tym temacie | Spis tematów | Wyniki lottoStrona: 1 2 ... 460 461 462 ... 560 561
Wyślij wiadomość do admina