Ahoj, tak to v celku funguje zajímavě, tak si to představuji, ale nenachází, nevybírá nebo nezobrazuje správně (nevím) všechny sekvence od dvou a výš.
Uvedu to na příkladu těchto čísel: "11 8 35 12 9 7 5 3 1". Abych to nemusel vypisovat, nahrál jsem video. Snad video pomůže popsat nedokonalost zobrazování sekvencí. Předem děkuji člověku "rhsCZ".
Velmi se omlouvám za zvuk, mám špatný mikrofon. Navíc huhlám a mám nepřipravenou řeč.
Pozn: Chyby jsem nezmiňoval všechny, ale jsou jasně viditelné. Nejsem odborník na komentáře.
Video uloženo do 31.1.2025
https://www.uschovna.cz/zasilka/RC7RYAZRAN9TYUBD-FZ5/
Kdo umí číst kód HTML? Doladit jednu podmínku. Vyřešeno
-
- Level 3
- Příspěvky: 615
- Registrován: říjen 11
- Bydliště: Praha
- Pohlaví:
Re: Kdo umí číst kód HTML? Doladit jednu podmínku.
Žij, jako bys měl zítra zemřít. A uč se, jako bys měl žít věčně.
-
- Level 4
- Příspěvky: 1391
- Registrován: červen 13
- Pohlaví:
Re: Kdo umí číst kód HTML? Doladit jednu podmínku.
Ahoj, takže jelikož to nejspíš stále nechápu, tak tě poprosím o 10 příkladů(ideálně i různý počet čísel), kde to nefunguje jak má a kde u každého přikladu bude napsáno jaký výsledek je očekáván po každém přidaném číslu. Potřebuji to testovat na více příkladech, abych mohl najít, co je potřeba předělat.
„Zeptáš-li se, budeš 5 minut vypadat jako blbec. Nezeptáš-li se, budeš blbcem po celý život.“
„Mnozí z těch, co žijí, by zasluhovali smrt. A mnozí z těch, co zemřeli, by si zasloužili žít.“ - John Ronald Reuel Tolkien
„Je lepší být nenáviděn pro to, jaký jsi, než být milován pro to, co nejsi.“ - Kurt Cobain
https://rhscz.eu
https://github.com/rhsCZ
-
- Level 3
- Příspěvky: 615
- Registrován: říjen 11
- Bydliště: Praha
- Pohlaví:
Re: Kdo umí číst kód HTML? Doladit jednu podmínku.
Tak tedy:
1) Sólo čísla, nemá cenu vypisovat, ale dvojičky už potřebuji.
2) Takže shodné (sekvence) dvojice, trojice, čteřice atd. Hledat a vypisovat vždy tu nejdelší z dané kategorie.
3) Rozeberu příklady na videu podrobně.
Vložím číslo a výsledek co HTML dělá bude pod "HTML") a očekávaný výsledek bude pod písmenem "OK").
4) vložím č. 1 (1) - nic se nesmí zobrazit, je málo čísel. - ok
5) přidám č. 3 (3 1) - nic se nesmí zobrazit, je málo čísel. - ok
6) přidám č. 5 (5 3 1) - nic se nesmí zobrazit, je málo čísel. - ok
7) přidám č. 7 (7 5 3 1) - Vznikly 3 shody.
"HTML") + "OK") - shoda - ok
a) zobrazí se "CC (Pozice: 3, Následuje: 5)" - (2x červená 7+5, shoda s 3+1) - ok
b) zobrazí se "nn (Pozice: 3, Následuje: 5)" - (2x nízká 7+5, shoda s 3+1) - ok
c) zobrazí se "LL (Pozice: 3, Následuje: 5)" - (2x lichá 7+5, shoda s 3+1) - ok
8/ přidám č. 9 (9 7 5 3 1) - Vzniklo 6 shod.
"HTML")
a) zobrazí se "CC (Pozice: 3, Následuje: 7)" - (2x červená 9+7, shoda s 5+3) - ok
b) zobrazí se "nn (Pozice: 3, Následuje: 7)" - (2x nízká 9+7, shoda s 5+3) - ok
c) zobrazí se "LL (Pozice: 3, Následuje: 7)" - (2x lichá 9+7, shoda s 5+3) - ok
"OK") - chybí
d) nezobrazí se "CC (Pozice: 4, Následuje: 5)" - (2x červená 9+7, shoda s 3+1) - chybí
e) nezobrazí se "nn (Pozice: 4, Následuje: 5)" - (2x nízká 9+7, shoda s 3+1) - chybí
f) nezobrazí se "LL (Pozice: 4, Následuje: 5)" - (2x lichá 9+7, shoda s 3+1) - chybí
9) přidám č. 12 (12 9 7 5 3 1) - Vznikly 2 shody.
"HTML")
a) zobrazí se "CCC (Pozice: 4, Následuje: 7)" - (3x červená 12+9+7, shoda s 5+3+1) - ok
b) zobrazí se "nnn (Pozice: 3, Následuje: 7)" - (3x nízké 12+9+7, shoda s 5+3+1) - ok
c) zobrazí se "LL (Pozice: 2, Následuje: 12)" - (2x lichá neexistuje (12+9 je Sudá+lichá) - chyba
d) zobrazí se "LL (Pozice: 3, Následuje: 9)" - (2x lichá neexistuje (12+9 je Sudá+lichá) - chyba
e) zobrazí se "LL (Pozice: 5, Následuje: 5)" - (2x lichá neexistuje (12+9 je Sudá+lichá) - chyba
info:
Nemůže se zobrazit žádná "LL" protože poslední č. je 12. Minimálně musí hledat Sudá+lichá, a to není s čím porovnat, zbytek čísel je lichých.
Správně to je pouze tohle:
"OK")
a) zobrazí se "CCC (Pozice: 4, Následuje: 7)" - (3x červená 12+9+7, shoda s 5+3+1) - ok
b) zobrazí se "nnn (Pozice: 3, Následuje: 7)" - (3x nízké 12+9+7, shoda s 5+3+1) - ok
10) přidám č. 35 (35 12 9 7 5 3 1) - NEvznikla žádná shoda.
"HTML")
a) zobrazí se "CCC (Pozice: 2, Následuje: 35)" - (3x červená neexistuje, řada začíná č.35, černá) - chyba
b) zobrazí se "CCC (Pozice: 4, Následuje: 9)" - (3x červená neexistuje, řada začíná č.35, černá) - chyba
c) zobrazí se "nnn (Pozice: 2, Následuje: 35)" - (3x nízká neexistuje, řada začíná č.35, velká) - chyba
d) zobrazí se "nnn (Pozice: 4, Následuje: 9)" - (3x nízká neexistuje, řada začíná č.35, velká) - chyba
Správně to je tohle:
"OK")
e) nemůže se zobrazit nic !!!
vysvětlení: Č.35 je velká, lichá, černá. Následuje č.12 a minimálně musí hledat dvojici začínající hodnotami č.35. Velká a černá nikde dál není. Lichá sice ano, ale za 35 následuje 12 a to je lichá+sudá, a to právě neexistuje.
11) přidám č. 8 (8 35 12 9 7 5 3 1) - vznikla 1 shoda.
"HTML") + "OK") - shoda - ok
a) zobrazí se "SL (Pozice: 3, Následuje: 35)" - (2x sudá+lichá, řada začíná č.8+35, shoda s 12+9) - ok
12) přidám č. 11 (11 8 35 12 9 7 5 3 1) - vzniklo 6 shod.
"HTML")
a) zobrazí se "nn (Pozice: 4, Následuje: 35)" - (2x nízká, řada začíná č.11+8, shoda s 12+9) - ok
b) zobrazí se "nn (Pozice: 5, Následuje: 12)" - (2x nízká, řada začíná č.11+8, shoda s 9+7) - ok
c) zobrazí se "nn (Pozice: 7, Následuje: 7)" - (2x nízká, řada začíná č.11+8, shoda s 5+3) - ok
d) zobrazí se "LS (Pozice: 3, Následuje: 8/" - (2x lichá+sudá, řada začíná č.11+8, shoda s 35+12) - ok
"OK")
chybí:
e) nezobrazí se "nn (Pozice: 6, Následuje: 9)" - (2x nízká, řada začíná č.11+8, shoda s 7+5) - chybí
e) nezobrazí se "nn (Pozice: 8, Následuje: 5)" - (2x nízká, řada začíná č.11+8, shoda s 3+1) - chybí
Správné výpisy jsou pouze v bodech 7) a 11). Samozřejmě i 4), 5), 6) kde nic není.
Jo a drobně mám upravený kód, který teď používám. Z něj prosím vycházet.
https://www.uschovna.cz/download/RD43DK ... A5HYTH8VH/
Možná ty informace nesjou jak si chtěl (10 příkladů, jiná čísla), použil jsem jen z videa. V případě nejasností, se zase ptej. Díky.
Dodatek: Ještě mě napadlo, dej sem řadu vlastních čísel a já ti vypíšu, co by se mělo zobrazit.
1) Sólo čísla, nemá cenu vypisovat, ale dvojičky už potřebuji.
2) Takže shodné (sekvence) dvojice, trojice, čteřice atd. Hledat a vypisovat vždy tu nejdelší z dané kategorie.
3) Rozeberu příklady na videu podrobně.
Vložím číslo a výsledek co HTML dělá bude pod "HTML") a očekávaný výsledek bude pod písmenem "OK").
4) vložím č. 1 (1) - nic se nesmí zobrazit, je málo čísel. - ok
5) přidám č. 3 (3 1) - nic se nesmí zobrazit, je málo čísel. - ok
6) přidám č. 5 (5 3 1) - nic se nesmí zobrazit, je málo čísel. - ok
7) přidám č. 7 (7 5 3 1) - Vznikly 3 shody.
"HTML") + "OK") - shoda - ok
a) zobrazí se "CC (Pozice: 3, Následuje: 5)" - (2x červená 7+5, shoda s 3+1) - ok
b) zobrazí se "nn (Pozice: 3, Následuje: 5)" - (2x nízká 7+5, shoda s 3+1) - ok
c) zobrazí se "LL (Pozice: 3, Následuje: 5)" - (2x lichá 7+5, shoda s 3+1) - ok
8/ přidám č. 9 (9 7 5 3 1) - Vzniklo 6 shod.
"HTML")
a) zobrazí se "CC (Pozice: 3, Následuje: 7)" - (2x červená 9+7, shoda s 5+3) - ok
b) zobrazí se "nn (Pozice: 3, Následuje: 7)" - (2x nízká 9+7, shoda s 5+3) - ok
c) zobrazí se "LL (Pozice: 3, Následuje: 7)" - (2x lichá 9+7, shoda s 5+3) - ok
"OK") - chybí
d) nezobrazí se "CC (Pozice: 4, Následuje: 5)" - (2x červená 9+7, shoda s 3+1) - chybí
e) nezobrazí se "nn (Pozice: 4, Následuje: 5)" - (2x nízká 9+7, shoda s 3+1) - chybí
f) nezobrazí se "LL (Pozice: 4, Následuje: 5)" - (2x lichá 9+7, shoda s 3+1) - chybí
9) přidám č. 12 (12 9 7 5 3 1) - Vznikly 2 shody.
"HTML")
a) zobrazí se "CCC (Pozice: 4, Následuje: 7)" - (3x červená 12+9+7, shoda s 5+3+1) - ok
b) zobrazí se "nnn (Pozice: 3, Následuje: 7)" - (3x nízké 12+9+7, shoda s 5+3+1) - ok
c) zobrazí se "LL (Pozice: 2, Následuje: 12)" - (2x lichá neexistuje (12+9 je Sudá+lichá) - chyba
d) zobrazí se "LL (Pozice: 3, Následuje: 9)" - (2x lichá neexistuje (12+9 je Sudá+lichá) - chyba
e) zobrazí se "LL (Pozice: 5, Následuje: 5)" - (2x lichá neexistuje (12+9 je Sudá+lichá) - chyba
info:
Nemůže se zobrazit žádná "LL" protože poslední č. je 12. Minimálně musí hledat Sudá+lichá, a to není s čím porovnat, zbytek čísel je lichých.
Správně to je pouze tohle:
"OK")
a) zobrazí se "CCC (Pozice: 4, Následuje: 7)" - (3x červená 12+9+7, shoda s 5+3+1) - ok
b) zobrazí se "nnn (Pozice: 3, Následuje: 7)" - (3x nízké 12+9+7, shoda s 5+3+1) - ok
10) přidám č. 35 (35 12 9 7 5 3 1) - NEvznikla žádná shoda.
"HTML")
a) zobrazí se "CCC (Pozice: 2, Následuje: 35)" - (3x červená neexistuje, řada začíná č.35, černá) - chyba
b) zobrazí se "CCC (Pozice: 4, Následuje: 9)" - (3x červená neexistuje, řada začíná č.35, černá) - chyba
c) zobrazí se "nnn (Pozice: 2, Následuje: 35)" - (3x nízká neexistuje, řada začíná č.35, velká) - chyba
d) zobrazí se "nnn (Pozice: 4, Následuje: 9)" - (3x nízká neexistuje, řada začíná č.35, velká) - chyba
Správně to je tohle:
"OK")
e) nemůže se zobrazit nic !!!
vysvětlení: Č.35 je velká, lichá, černá. Následuje č.12 a minimálně musí hledat dvojici začínající hodnotami č.35. Velká a černá nikde dál není. Lichá sice ano, ale za 35 následuje 12 a to je lichá+sudá, a to právě neexistuje.
11) přidám č. 8 (8 35 12 9 7 5 3 1) - vznikla 1 shoda.
"HTML") + "OK") - shoda - ok
a) zobrazí se "SL (Pozice: 3, Následuje: 35)" - (2x sudá+lichá, řada začíná č.8+35, shoda s 12+9) - ok
12) přidám č. 11 (11 8 35 12 9 7 5 3 1) - vzniklo 6 shod.
"HTML")
a) zobrazí se "nn (Pozice: 4, Následuje: 35)" - (2x nízká, řada začíná č.11+8, shoda s 12+9) - ok
b) zobrazí se "nn (Pozice: 5, Následuje: 12)" - (2x nízká, řada začíná č.11+8, shoda s 9+7) - ok
c) zobrazí se "nn (Pozice: 7, Následuje: 7)" - (2x nízká, řada začíná č.11+8, shoda s 5+3) - ok
d) zobrazí se "LS (Pozice: 3, Následuje: 8/" - (2x lichá+sudá, řada začíná č.11+8, shoda s 35+12) - ok
"OK")
chybí:
e) nezobrazí se "nn (Pozice: 6, Následuje: 9)" - (2x nízká, řada začíná č.11+8, shoda s 7+5) - chybí
e) nezobrazí se "nn (Pozice: 8, Následuje: 5)" - (2x nízká, řada začíná č.11+8, shoda s 3+1) - chybí
Správné výpisy jsou pouze v bodech 7) a 11). Samozřejmě i 4), 5), 6) kde nic není.
Jo a drobně mám upravený kód, který teď používám. Z něj prosím vycházet.
https://www.uschovna.cz/download/RD43DK ... A5HYTH8VH/
Možná ty informace nesjou jak si chtěl (10 příkladů, jiná čísla), použil jsem jen z videa. V případě nejasností, se zase ptej. Díky.
Dodatek: Ještě mě napadlo, dej sem řadu vlastních čísel a já ti vypíšu, co by se mělo zobrazit.
Žij, jako bys měl zítra zemřít. A uč se, jako bys měl žít věčně.
-
- Level 4
- Příspěvky: 1391
- Registrován: červen 13
- Pohlaví:
Re: Kdo umí číst kód HTML? Doladit jednu podmínku.
PROSÍM PRO PŘÍŠTĚ UDĚLEJ O CO ŽÁDÁM!!!
Takhle by jsme se nemuseli nikam pohnout.
Asi to potřebuji dovysvětlit.
vezmu část 10) kde se nemá nic zobrazit
pro čísla 35 12 9 7 5 3 1
vzniknou sekvence
bCCCCCC
Vnnnnnn
LSLLLLL
a já teda vidím CCC a CCC
nnn a nnn
LL a LL
Takže bych rád vědel jestli se schoda určuje podle prvních písmen. Protože jestli ano tak to budu muset asi více předělat.
Myslím třeba když mám sekvenci
LSSLLLLLSS
tak tam je jen shoda LSS a na ty 2x LL se vykašlem?
chápu to dobře nebo špatně?
jestli špatně tak se pokus nějak více popsat.
Takhle by jsme se nemuseli nikam pohnout.
Asi to potřebuji dovysvětlit.
vezmu část 10) kde se nemá nic zobrazit
pro čísla 35 12 9 7 5 3 1
vzniknou sekvence
bCCCCCC
Vnnnnnn
LSLLLLL
a já teda vidím CCC a CCC
nnn a nnn
LL a LL
Takže bych rád vědel jestli se schoda určuje podle prvních písmen. Protože jestli ano tak to budu muset asi více předělat.
Myslím třeba když mám sekvenci
LSSLLLLLSS
tak tam je jen shoda LSS a na ty 2x LL se vykašlem?
chápu to dobře nebo špatně?
jestli špatně tak se pokus nějak více popsat.
„Zeptáš-li se, budeš 5 minut vypadat jako blbec. Nezeptáš-li se, budeš blbcem po celý život.“
„Mnozí z těch, co žijí, by zasluhovali smrt. A mnozí z těch, co zemřeli, by si zasloužili žít.“ - John Ronald Reuel Tolkien
„Je lepší být nenáviděn pro to, jaký jsi, než být milován pro to, co nejsi.“ - Kurt Cobain
https://rhscz.eu
https://github.com/rhsCZ
-
- Level 3
- Příspěvky: 615
- Registrován: říjen 11
- Bydliště: Praha
- Pohlaví:
Re: Kdo umí číst kód HTML? Doladit jednu podmínku.
Tak, předně. Z tvé zprávy plyne, že jsi dobře nečetl zprávu z 07 led 2025 01:19. Je tam popsáno přesně to, na co se teď ptáš. Konkrétně odstavec "Vysvětlení:" a tam cituji: "...První (základní) sekvence musí vždy začínat posledním vloženým číslem...." , to je nejzákladnější informace na celém vyhledávání!
Nebo, cituji: "...Čísla se vkládají jednotlivě a tím se pokaždé hledá nová nejdelší sekvence a vypíše se. Staré (neplatné) zaniknou..."
viewtopic.php?f=61&t=229075#p1788448
Proto se nemůžem nikam pohnout. Tady to už trochu chápeš.
"..LSSLLLLLSS tak tam je jen shoda LSS ?.."
LSSLLLLLSS je skutečně shoda jen LSS, protože se musí zobrazit pouze nejdelší serie (jak vysvětluji výše).
"..na ty 2x LL se vykašlem?.." No to dá rozum že ano. Opět to souvisí s vyhledáním "pouze" nejdelší možné serie. V tomto případě LSS je delší než LL. Navíc LL neexistuje. Když už tak LS a kekonci LS, ale předčí ji serie LSS. Jasný?
A na začátku tvý poslední zprávy,
cituji"...bCCCCCC - (To je jen pořadí, není to s ničím shodné, muselo by být někde v poli třeba na 40 místě bCCCCCC, pak by se jednelo o nalezenou shodu).
Vnnnnnn - (To je jen pořadí, není to s ničím shodné - to samý...)
LSLLLLL - (To je jen pořadí, není to s ničím shodné - to samý...)
a já teda vidím CCC a CCC.." - (není spojeno s posledním vloženým číslem - tím je to neplatné)
Kdyby to bylo bCCCCCbC, tak vypsat bC.
Poznámka: Pokud by se našlo nejdelších sekvencí víc, tak vypsat všechny, klidně i 2, 3, nebo 5, prostě všechny. To může nastat když budu mít nastaveno třeba 100 čísel.
Nebo, cituji: "...Čísla se vkládají jednotlivě a tím se pokaždé hledá nová nejdelší sekvence a vypíše se. Staré (neplatné) zaniknou..."
viewtopic.php?f=61&t=229075#p1788448
Proto se nemůžem nikam pohnout. Tady to už trochu chápeš.
rhsCZ píše:PROSÍM PRO PŘÍŠTĚ UDĚLEJ O CO ŽÁDÁM!!!
...Takže bych rád vědel jestli se schoda určuje podle prvních písmen. Protože jestli ano tak to budu muset asi více předělat.
Myslím třeba když mám sekvenci
LSSLLLLLSS
tak tam je jen shoda LSS a na ty 2x LL se vykašlem?
chápu to dobře nebo špatně?
jestli špatně tak se pokus nějak více popsat.
"..LSSLLLLLSS tak tam je jen shoda LSS ?.."
LSSLLLLLSS je skutečně shoda jen LSS, protože se musí zobrazit pouze nejdelší serie (jak vysvětluji výše).
"..na ty 2x LL se vykašlem?.." No to dá rozum že ano. Opět to souvisí s vyhledáním "pouze" nejdelší možné serie. V tomto případě LSS je delší než LL. Navíc LL neexistuje. Když už tak LS a kekonci LS, ale předčí ji serie LSS. Jasný?
A na začátku tvý poslední zprávy,
cituji"...bCCCCCC - (To je jen pořadí, není to s ničím shodné, muselo by být někde v poli třeba na 40 místě bCCCCCC, pak by se jednelo o nalezenou shodu).
Vnnnnnn - (To je jen pořadí, není to s ničím shodné - to samý...)
LSLLLLL - (To je jen pořadí, není to s ničím shodné - to samý...)
a já teda vidím CCC a CCC.." - (není spojeno s posledním vloženým číslem - tím je to neplatné)
Kdyby to bylo bCCCCCbC, tak vypsat bC.
Poznámka: Pokud by se našlo nejdelších sekvencí víc, tak vypsat všechny, klidně i 2, 3, nebo 5, prostě všechny. To může nastat když budu mít nastaveno třeba 100 čísel.
Žij, jako bys měl zítra zemřít. A uč se, jako bys měl žít věčně.
-
- Level 4
- Příspěvky: 1391
- Registrován: červen 13
- Pohlaví:
Re: Kdo umí číst kód HTML? Doladit jednu podmínku.
Dobrá, omlouvám se. Trošku to v tom textu zaniklo, tak skusím něco vymyslet. Dám vědět.
„Zeptáš-li se, budeš 5 minut vypadat jako blbec. Nezeptáš-li se, budeš blbcem po celý život.“
„Mnozí z těch, co žijí, by zasluhovali smrt. A mnozí z těch, co zemřeli, by si zasloužili žít.“ - John Ronald Reuel Tolkien
„Je lepší být nenáviděn pro to, jaký jsi, než být milován pro to, co nejsi.“ - Kurt Cobain
https://rhscz.eu
https://github.com/rhsCZ
-
- Level 3
- Příspěvky: 615
- Registrován: říjen 11
- Bydliště: Praha
- Pohlaví:
Re: Kdo umí číst kód HTML? Doladit jednu podmínku.
Nemusíš se omluvat, jsem rád že mi na tom děláš. To já se omlouvám, ono jak to napsat není jednoduchý.
Ale v hlavě je myšlenka, a zdá se to úplně banální.
Poznámka: Ona totiž původní myšlenka byla vypisovat všechny shody od nejdelší po nejmenší. Bylo by totiž vidět, které mohou následovat. Ale v praxi je to zbytečný. Teď to následování využívám ve výpisu "následuje". Protože pokud najde aspoň 2 shodné serie, tak vím že můžu ještě kolo nehrát a počkat, která bude delší.
Např. vypíše se: SLSSLS a SLSSLS, ale následovat budou třeba 15 a 22, tak vím že jedna se prodlouží. To úplně vyhovuje.
Ale v hlavě je myšlenka, a zdá se to úplně banální.
Poznámka: Ona totiž původní myšlenka byla vypisovat všechny shody od nejdelší po nejmenší. Bylo by totiž vidět, které mohou následovat. Ale v praxi je to zbytečný. Teď to následování využívám ve výpisu "následuje". Protože pokud najde aspoň 2 shodné serie, tak vím že můžu ještě kolo nehrát a počkat, která bude delší.
Např. vypíše se: SLSSLS a SLSSLS, ale následovat budou třeba 15 a 22, tak vím že jedna se prodlouží. To úplně vyhovuje.
Žij, jako bys měl zítra zemřít. A uč se, jako bys měl žít věčně.
-
- Level 4
- Příspěvky: 1391
- Registrován: červen 13
- Pohlaví:
Re: Kdo umí číst kód HTML? Doladit jednu podmínku.
Mám trochu dotaz k
Což je pro čísla 11 8 35 12 9 7 5 3 1
je sekvence nnVnnnnnn
a píšeš o shodách které chybí.
Tak mě zajímá jestli je správně, že těch 5 shod z těch 6 x n za sebou se vlastně překrývají, jestli chápeš co myslím.
Jde mi o to jestli v tomto případě se shody mohou navzájem překrývat.
Mě logicky z těch 6 x n za sebou vychází 3 dvojce čili 3 shody (podle první nn v sekvenci). Když se překrývají tak to vychází na těch 5 shod.
Dodatečně přidáno po 28 minutách 1 vteřině:
Pokud ne, tak kdyžtak dodám ještě úpravu.
Pokud to tak má být s tim, že se překrývají tak výsledek zde:
12) přidám č. 11 (11 8 35 12 9 7 5 3 1) - vzniklo 6 shod.
"HTML")
a) zobrazí se "nn (Pozice: 4, Následuje: 35)" - (2x nízká, řada začíná č.11+8, shoda s 12+9) - ok
b) zobrazí se "nn (Pozice: 5, Následuje: 12)" - (2x nízká, řada začíná č.11+8, shoda s 9+7) - ok
c) zobrazí se "nn (Pozice: 7, Následuje: 7)" - (2x nízká, řada začíná č.11+8, shoda s 5+3) - ok
d) zobrazí se "LS (Pozice: 3, Následuje: 8/" - (2x lichá+sudá, řada začíná č.11+8, shoda s 35+12) - ok
"OK")
chybí:
e) nezobrazí se "nn (Pozice: 6, Následuje: 9)" - (2x nízká, řada začíná č.11+8, shoda s 7+5) - chybí
e) nezobrazí se "nn (Pozice: 8, Následuje: 5)" - (2x nízká, řada začíná č.11+8, shoda s 3+1) - chybí
Což je pro čísla 11 8 35 12 9 7 5 3 1
je sekvence nnVnnnnnn
a píšeš o shodách které chybí.
Tak mě zajímá jestli je správně, že těch 5 shod z těch 6 x n za sebou se vlastně překrývají, jestli chápeš co myslím.
Jde mi o to jestli v tomto případě se shody mohou navzájem překrývat.
Mě logicky z těch 6 x n za sebou vychází 3 dvojce čili 3 shody (podle první nn v sekvenci). Když se překrývají tak to vychází na těch 5 shod.
Dodatečně přidáno po 28 minutách 1 vteřině:
Pokud ne, tak kdyžtak dodám ještě úpravu.
Pokud to tak má být s tim, že se překrývají tak výsledek zde:
Kód: Vybrat vše
<!DOCTYPE html>
<html lang="cs">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Sekvenční Ruleta</title>
<style>
body {
font-family: Arial, sans-serif;
margin: 0;
padding: 0;
background-color: #f4f4f4;
color: #333;
}
.container {
max-width: 600px;
margin: 50px auto;
background: white;
padding: 20px;
border-radius: 10px;
box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}
h1, h2 {
text-align: center;
color: #444;
}
.input-container {
display: flex;
align-items: center;
gap: 10px;
margin: 5px 0;
}
input, select, button {
padding: 10px;
font-size: 16px;
border-radius: 5px;
border: 1px solid #ccc;
}
button {
cursor: pointer;
background: #007BFF;
color: white;
border: none;
}
button:hover {
background: #0056b3;
}
.output, .sequences {
margin-top: 20px;
}
p, ul {
font-size: 18px;
line-height: 1.5;
}
</style>
</head>
<body>
<div class="container">
<h1>Sekvenční Ruleta</h1>
<div class="input-container">
<input type="number" id="rouletteInput" min="1" max="36" placeholder="Zadejte číslo (1-36)">
<button id="removeLast">Zpět</button>
<select id="numberLimit">
<option value="5">5 čísel</option>
<option value="10">10 čísel</option>
<option value="15">15 čísel</option>
<option value="20">20 čísel</option>
<option value="25">25 čísel</option>
<option value="30">30 čísel</option>
<option value="35">35 čísel</option>
<option value="40">40 čísel</option>
<option value="45">45 čísel</option>
<option value="50">50 čísel</option>
<option value="60">60 čísel</option>
<option value="70">70 čísel</option>
<option value="80">80 čísel</option>
<option value="90">90 čísel</option>
<option value="100">100 čísel</option>
<option value="110">110 čísel</option>
<option value="120">120 čísel</option>
<option value="130">130 čísel</option>
<option value="150">150 čísel</option>
<option value="200">200 čísel</option>
<option value="250">250 čísel</option>
<option value="300">300 čísel</option>
</select>
</div>
<!-- Sekvence jsou nyní zobrazeny nad čísly -->
<div class="sequences">
<h2>Shodné Sekvence:</h2>
<ul id="sequenceList"></ul>
</div>
<div class="output">
<h2>Čísla:</h2>
<p id="numbers"></p>
</div>
</div>
<script>
const rouletteInput = document.getElementById("rouletteInput");
const numbersDisplay = document.getElementById("numbers");
const sequenceList = document.getElementById("sequenceList");
const removeLastBtn = document.getElementById("removeLast");
const numberLimitSelect = document.getElementById("numberLimit");
let numbers = [];
const redNumbers = [1, 3, 5, 7, 9, 12, 14, 16, 18, 19, 21, 23, 25, 27, 30, 32, 34, 36];
const blackNumbers = [2, 4, 6, 8, 10, 11, 13, 15, 17, 20, 22, 24, 26, 28, 29, 31, 33, 35];
function addNumber() {
const inputNumber = parseInt(rouletteInput.value);
if (isNaN(inputNumber) || inputNumber < 1 || inputNumber > 36) {
alert("Zadejte platné číslo mezi 1 a 36!");
return;
}
numbers.unshift(inputNumber);
rouletteInput.value = "";
updateDisplay();
findSequences();
}
function indexOfMax(arr) {
let maxIndex = 0;
for (let i = 1; i < arr.length; i++) {
if (arr[i] > arr[maxIndex]) {
maxIndex = i;
}
}
return maxIndex;
}
function removeLastNumber() {
if (numbers.length === 0) {
alert("Žádné číslo k odebrání!");
return;
}
numbers.shift();
updateDisplay();
findSequences();
}
function updateDisplay() {
const numberLimit = parseInt(numberLimitSelect.value);
numbersDisplay.textContent = numbers.slice(0, numberLimit).join(" ");
}
function findSequences() {
sequenceList.innerHTML = "";
const numberLimit = parseInt(numberLimitSelect.value);
const limitedNumbers = numbers.slice(0, numberLimit);
const categories = [
{ name: "RB", func: (num) => (redNumbers.includes(num) ? "C" : "b") },
{ name: "MV", func: (num) => (num >= 1 && num <= 18 ? "n" : num > 18 ? "V" : "0") },
{ name: "SL", func: (num) => (num % 2 === 0 ? "S" : "L") },
];
categories.forEach((category) => {
let matchn = [];
let matches = [];
let lenghts = [];
let seq = limitedNumbers.map(category.func).join("");
matches = seq.match(/^(.+)(?=.*)(?=.*\1)(?=.*)/);
let d=0;
if(matches.length != 0)
{
matches.forEach((match)=>
{
lenghts[d] = match.length;
d++;
});
let index = indexOfMax(lenghts);
match=matches[index];
seq1 = seq.substring(match.length);
if(match)
{
if(match.length > 1)
{
let positions = [];
const sequence = match;
let d;
let i=0;
while(i<seq1.length)
{
ps = seq1.indexOf(sequence,i);
if(ps != -1)
{
ps1=ps+match.length;
if(!positions.includes(ps1))
{
positions.push(ps1);
}
i++;
}else
{
i++
}
}
positions.forEach((pos) =>
{
const precedingNumber = limitedNumbers[pos - 1];
const li = document.createElement("li");
li.textContent = `${sequence} (Pozice: ${pos + 1}, Následuje: ${precedingNumber})`;
sequenceList.appendChild(li);
});
}
}
}
});
}
removeLastBtn.addEventListener("click", removeLastNumber);
rouletteInput.addEventListener("keypress", (e) => {
if (e.key === "Enter") {
addNumber();
}
});
numberLimitSelect.addEventListener("change", () => {
updateDisplay();
findSequences();
});
</script>
</body>
</html>
„Zeptáš-li se, budeš 5 minut vypadat jako blbec. Nezeptáš-li se, budeš blbcem po celý život.“
„Mnozí z těch, co žijí, by zasluhovali smrt. A mnozí z těch, co zemřeli, by si zasloužili žít.“ - John Ronald Reuel Tolkien
„Je lepší být nenáviděn pro to, jaký jsi, než být milován pro to, co nejsi.“ - Kurt Cobain
https://rhscz.eu
https://github.com/rhsCZ
-
- Level 3
- Příspěvky: 615
- Registrován: říjen 11
- Bydliště: Praha
- Pohlaví:
Re: Kdo umí číst kód HTML? Doladit jednu podmínku.
Ano, shody se překrývají. Po prvních pokusech je teď je kód správně, dle toho co jsem psal. Dobrá práce, paráda. Otestuji ho pořádně.
Nejdříve jsem potřeboval, aby kód byl funkční a pochopilo se, co má dělat. To se stalo. Tím pádem bych potřeboval, doladit nějaké detaily.
Například co s číslem 0?
V kódu je potřeby přepsat jedničky na nuly. (původně to tak bylo)
function addNumber() {
const inputNumber = parseInt(rouletteInput.value);
if (isNaN(inputNumber) || inputNumber < 1 || inputNumber > 36) {
alert("Zadejte platné číslo mezi 1 a 36!");
return;
function addNumber() {
const inputNumber = parseInt(rouletteInput.value);
if (isNaN(inputNumber) || inputNumber < 0 || inputNumber > 36) {
alert("Zadejte platné číslo mezi 0 a 36!");
return;
Když zadám nulu, čakal bych že se nic nezobrazí. Protože nula nikam nezapadá. Ale ono ji to zařazuje do sekvencí.
Bylo by dobré kdyby nula fungovala a sekvence přerušovala dle pravdy. Pokud bych počínání s nulou nechtěl využívat, tak bych ji jednoduše nezadával. Tím by byl kód plně funkční.
O nule jsem nemluvil, protože by to komplikovalo pochopení těch sekvencí.
Snad vyladit nulu, nebude nic složitého.
PS: poštu jsem četl, pak pořešíme.
Nejdříve jsem potřeboval, aby kód byl funkční a pochopilo se, co má dělat. To se stalo. Tím pádem bych potřeboval, doladit nějaké detaily.
Například co s číslem 0?
V kódu je potřeby přepsat jedničky na nuly. (původně to tak bylo)
function addNumber() {
const inputNumber = parseInt(rouletteInput.value);
if (isNaN(inputNumber) || inputNumber < 1 || inputNumber > 36) {
alert("Zadejte platné číslo mezi 1 a 36!");
return;
function addNumber() {
const inputNumber = parseInt(rouletteInput.value);
if (isNaN(inputNumber) || inputNumber < 0 || inputNumber > 36) {
alert("Zadejte platné číslo mezi 0 a 36!");
return;
Když zadám nulu, čakal bych že se nic nezobrazí. Protože nula nikam nezapadá. Ale ono ji to zařazuje do sekvencí.
Bylo by dobré kdyby nula fungovala a sekvence přerušovala dle pravdy. Pokud bych počínání s nulou nechtěl využívat, tak bych ji jednoduše nezadával. Tím by byl kód plně funkční.
O nule jsem nemluvil, protože by to komplikovalo pochopení těch sekvencí.
Snad vyladit nulu, nebude nic složitého.
PS: poštu jsem četl, pak pořešíme.
Žij, jako bys měl zítra zemřít. A uč se, jako bys měl žít věčně.
-
- Level 4
- Příspěvky: 1391
- Registrován: červen 13
- Pohlaví:
Re: Kdo umí číst kód HTML? Doladit jednu podmínku.
Prosím trochu doobjasnit chování 0. Jestli ji mohu zařadit do sekvencí jako např. řada čísel 0 8 0 35 12 9 0 7 5 3 1 - 0b0bCC0CCCC - (0 je zadaná nula, nebo ji lze nahradit písmenkem dle potřeby)
Jsou možné shody? tady např. 0b?
Nějaké zvlaštní chování když je někde mezi čísly?
Zvláštní chování když 0 bude poslední zadané číslo ale je tam shoda třeba 0b - zobrazit ? nezobrazit?
shody s 0 jsou/nejsou možné?
Dodatečně přidáno po 26 minutách 33 vteřinách:
Pokud je v pořádku zařazení 0 do sekvence a shody jako 0b tak případně vyzkoušej a dej vědět co udělat jinak nebo zda se to chová jinak než očekávání.
Jsou možné shody? tady např. 0b?
Nějaké zvlaštní chování když je někde mezi čísly?
Zvláštní chování když 0 bude poslední zadané číslo ale je tam shoda třeba 0b - zobrazit ? nezobrazit?
shody s 0 jsou/nejsou možné?
Dodatečně přidáno po 26 minutách 33 vteřinách:
Pokud je v pořádku zařazení 0 do sekvence a shody jako 0b tak případně vyzkoušej a dej vědět co udělat jinak nebo zda se to chová jinak než očekávání.
Kód: Vybrat vše
<!DOCTYPE html>
<html lang="cs">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Sekvenční Ruleta</title>
<style>
body {
font-family: Arial, sans-serif;
margin: 0;
padding: 0;
background-color: #f4f4f4;
color: #333;
}
.container {
max-width: 600px;
margin: 50px auto;
background: white;
padding: 20px;
border-radius: 10px;
box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}
h1, h2 {
text-align: center;
color: #444;
}
.input-container {
display: flex;
align-items: center;
gap: 10px;
margin: 5px 0;
}
input, select, button {
padding: 10px;
font-size: 16px;
border-radius: 5px;
border: 1px solid #ccc;
}
button {
cursor: pointer;
background: #007BFF;
color: white;
border: none;
}
button:hover {
background: #0056b3;
}
.output, .sequences {
margin-top: 20px;
}
p, ul {
font-size: 18px;
line-height: 1.5;
}
</style>
</head>
<body>
<div class="container">
<h1>Sekvenční Ruleta</h1>
<div class="input-container">
<input type="number" id="rouletteInput" min="1" max="36" placeholder="Zadejte číslo (1-36)">
<button id="removeLast">Zpět</button>
<select id="numberLimit">
<option value="5">5 čísel</option>
<option value="10">10 čísel</option>
<option value="15">15 čísel</option>
<option value="20">20 čísel</option>
<option value="25">25 čísel</option>
<option value="30">30 čísel</option>
<option value="35">35 čísel</option>
<option value="40">40 čísel</option>
<option value="45">45 čísel</option>
<option value="50">50 čísel</option>
<option value="60">60 čísel</option>
<option value="70">70 čísel</option>
<option value="80">80 čísel</option>
<option value="90">90 čísel</option>
<option value="100">100 čísel</option>
<option value="110">110 čísel</option>
<option value="120">120 čísel</option>
<option value="130">130 čísel</option>
<option value="150">150 čísel</option>
<option value="200">200 čísel</option>
<option value="250">250 čísel</option>
<option value="300">300 čísel</option>
</select>
</div>
<!-- Sekvence jsou nyní zobrazeny nad čísly -->
<div class="sequences">
<h2>Shodné Sekvence:</h2>
<ul id="sequenceList"></ul>
</div>
<div class="output">
<h2>Čísla:</h2>
<p id="numbers"></p>
</div>
</div>
<script>
const rouletteInput = document.getElementById("rouletteInput");
const numbersDisplay = document.getElementById("numbers");
const sequenceList = document.getElementById("sequenceList");
const removeLastBtn = document.getElementById("removeLast");
const numberLimitSelect = document.getElementById("numberLimit");
let numbers = [];
const redNumbers = [1, 3, 5, 7, 9, 12, 14, 16, 18, 19, 21, 23, 25, 27, 30, 32, 34, 36];
const blackNumbers = [2, 4, 6, 8, 10, 11, 13, 15, 17, 20, 22, 24, 26, 28, 29, 31, 33, 35];
function addNumber() {
const inputNumber = parseInt(rouletteInput.value);
if (isNaN(inputNumber) || inputNumber < 0 || inputNumber > 36) {
alert("Zadejte platné číslo mezi 1 a 36!");
return;
}
numbers.unshift(inputNumber);
rouletteInput.value = "";
updateDisplay();
findSequences();
}
function indexOfMax(arr) {
let maxIndex = 0;
for (let i = 1; i < arr.length; i++) {
if (arr[i] > arr[maxIndex]) {
maxIndex = i;
}
}
return maxIndex;
}
function removeLastNumber() {
if (numbers.length === 0) {
alert("Žádné číslo k odebrání!");
return;
}
numbers.shift();
updateDisplay();
findSequences();
}
function updateDisplay() {
const numberLimit = parseInt(numberLimitSelect.value);
numbersDisplay.textContent = numbers.slice(0, numberLimit).join(" ");
}
function findSequences() {
sequenceList.innerHTML = "";
const numberLimit = parseInt(numberLimitSelect.value);
const limitedNumbers = numbers.slice(0, numberLimit);
const categories = [
{ name: "RB", func: (num) => (num == 0 ? "0" : redNumbers.includes(num) ? "C" : "b" ) },
{ name: "MV", func: (num) => (num == 0 ? "0" : num >= 1 && num <= 18 ? "n" : num > 18 ? "V" : "0") },
{ name: "SL", func: (num) => (num == 0 ? "0" : num % 2 === 0 ? "S" : "L") },
];
categories.forEach((category) => {
let matchn = [];
let lenghts = [];
let seq = limitedNumbers.map(category.func).join("");
let matches = seq.match(/^(.+)(?=.*)(?=.*\1)(?=.*)/);
let d=0;
if(matches != null)
{
matches.forEach((match)=>
{
lenghts[d] = match.length;
d++;
});
let index = indexOfMax(lenghts);
match=matches[index];
seq1 = seq.substring(match.length);
if(match)
{
if(match.length > 1)
{
let positions = [];
const sequence = match;
let d;
let i=0;
while(i<seq1.length)
{
ps = seq1.indexOf(sequence,i);
if(ps != -1)
{
ps1=ps+match.length;
if(!positions.includes(ps1))
{
positions.push(ps1);
}
i++;
}else
{
i++
}
}
positions.forEach((pos) =>
{
const precedingNumber = limitedNumbers[pos - 1];
const li = document.createElement("li");
li.textContent = `${sequence} (Pozice: ${pos + 1}, Následuje: ${precedingNumber})`;
sequenceList.appendChild(li);
});
}
}
}
});
}
removeLastBtn.addEventListener("click", removeLastNumber);
rouletteInput.addEventListener("keypress", (e) => {
if (e.key === "Enter") {
addNumber();
}
});
numberLimitSelect.addEventListener("change", () => {
updateDisplay();
findSequences();
});
</script>
</body>
</html>
„Zeptáš-li se, budeš 5 minut vypadat jako blbec. Nezeptáš-li se, budeš blbcem po celý život.“
„Mnozí z těch, co žijí, by zasluhovali smrt. A mnozí z těch, co zemřeli, by si zasloužili žít.“ - John Ronald Reuel Tolkien
„Je lepší být nenáviděn pro to, jaký jsi, než být milován pro to, co nejsi.“ - Kurt Cobain
https://rhscz.eu
https://github.com/rhsCZ
-
- Level 3
- Příspěvky: 615
- Registrován: říjen 11
- Bydliště: Praha
- Pohlaví:
Re: Kdo umí číst kód HTML? Doladit jednu podmínku. Vyřešeno
Ta nula teď funguje, dříve se připisovala nesmyslně. Kód funguje dle požadavků, takže brzy uzavřu.
Moc děkuji za pomoc hlavně "rhsCZ". Paráda.
Moc děkuji za pomoc hlavně "rhsCZ". Paráda.
Žij, jako bys měl zítra zemřít. A uč se, jako bys měl žít věčně.
-
- Mohlo by vás zajímat
- Odpovědi
- Zobrazení
- Poslední příspěvek
-
- 3
- 3079
-
od pcmaker
03 úno 2025 09:00
Zpět na “Programování a tvorba webu”
Kdo je online
Uživatelé prohlížející si toto fórum: CommonCrawl [Bot] a 5 hostů