Diskuze: Něco podobného jako fuzzy logika
Tvůrce
Zobrazeno 12 zpráv z 12.
K personalizaci obsahu a reklam, poskytování funkcí sociálních médií a analýze naší návštěvnosti využíváme soubory cookie. Informace o tom, jak náš web používáte, sdílíme se svými partnery pro sociální média, inzerci a analýzy. Partneři tyto údaje mohou zkombinovat s dalšími informacemi, které jste jim poskytli nebo které získali v důsledku toho, že používáte jejich služby.
Používáme nezbytné cookies pro fungování webu a s tvým souhlasem také analytické a marketingové cookies.
Zajišťují základní funkce, bezpečnost a služby, které sis vyžádal. Nelze je vypnout.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| ITnetwork | ITnetwork | Provoz webu, relace, přihlášení a uložení nastavení cookies. | PHPSESSID, auth_token, sid, itn_consent_impression, __Host-itn_consent | Relace až 1 rok |
| Google Tag Manager | Správa značek a načítání měřicích nástrojů webu. | Žádné | Neukládá se | |
| Google Fonts | Načítání typografie webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google Hosted Libraries | Načítání potřebných knihoven a stylů webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google reCAPTCHA | Ochrana formulářů a webu před zneužitím. | _GRECAPTCHA, rc::a, rc::b, rc::c, rc::f | Relace až 180 dní | |
| YouTube | Přehrávání vloženého video obsahu. | localStorage, IndexedDB; cookies after playback interaction | Relace až trvalé úložiště | |
| Vimeo | Vimeo | Přehrávání vloženého video obsahu. | __cf_bm, _cfuvid, vuid, localStorage, IndexedDB | Relace až 2 roky |
| Facebook Login | Meta | Přihlášení pomocí účtu třetí strany. | Úložiště řízené poskytovatelem | Relace až 1 rok |
| GoPay | GoPay | Zpracování uživatelem vyžádané platby. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
Pomáhají nám porozumět používání webu a zlepšovat ho.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Analytics 4 | Měření návštěvnosti a používání webu. | _ga, _ga_* | Až 2 roky | |
| Microsoft Clarity | Microsoft | Měření návštěvnosti a používání webu. | _clck, _clsk, _cltk | Relace až 1 rok |
Slouží k měření kampaní, personalizaci reklamy a marketingové komunikaci.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Ads | Měření kampaní, reklama a remarketing. | _gcl_au, _gcl_ls | Relace až 90 dní | |
| Meta Pixel | Meta | Měření kampaní, reklama a remarketing. | _fbp, _fbc, localStorage | Až 90 dní |
| Sklik | Seznam.cz | Měření kampaní, reklama a remarketing. | retargeting, sid, szn:* | Relace až trvalé úložiště |
| LinkedIn Insight | Měření kampaní, reklama a remarketing. | bcookie, li_gc, lidc, __cf_bm | Relace až 1 rok | |
| Ecomail | Ecomail.cz | Měření kampaní, reklama a remarketing. | ecmid, Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
| Atribuce kampaní ITnetwork | ITnetwork | Přiřazení návštěvy a objednávky ke kampani. | campaign_clid[*], user_session_context | Až 1 rok |
Pokud jsem to správně pochopil, tak bych to napsal takhle:
char Funkce(int cislo)
{
return (cislo >= 0) ? "+" : "-";
}
Mělo by to vracet nulu jako znak, v případě, že vstup je nula jako číslo.
char Funkce(int cislo)
{
return (cislo > 0) ? '+' : (cislo < 0) ? '-' : '0';
}
A nějaké řešení čistě bitově přes logické funkce by to mělo?
Kdyby se pak výsledek jen překonvertoval na znak.
char sign(int i) {
if (i == 0) return '0';
if (i >> 31 != 0) return '-';
return '+';
}
Posun bitu je zajímavý, ale kdyby se nějak dal skloubit s těmi
ostatními
stavy - takhle to je 3x pořád podmínka = stav. Vlastně je to stejné
řešení
jako to co má Lukáš Hruda.
Dalo by se to napsat v asm s jen jednou podminkou (v eax posilas cislo, do al dostanes vysledny znak):
cmp eax, 0
jz nula
jge kladny
mov al, 0x2D ; -
ret
kladny:
mov al, 0x2B ; +
ret
nula:
mov al, 0x30 ; 0
V C# "bez podminky" treba takhle, ale to asi neni reseni, ktere sis
predstavoval 
static char sgn(int number)
{
return number.ToString("+#;-#;0")[0];
}
misto jge by tam bylo spravnejsi *jg, i kdyz uz je to v tu chvili fuk, protoze pokud to byla nula, tak uz se skocilo jinam
Ono se to pak nejspis smrskne na problem jak z cisla -1/0/1 udelat odpovidajici znak bez podminkovani.
Udelat z cisla jen cislo 0/1/-1 (podle "znamenka") uz je celkem jednoduche a zpusobu je hromada.
(sorry za triple post, chtelo by to tu vyresit nejak jinak tu editaci
prispevku...
)
Díky všem. Paradoxně Satikův C# kousek byl pro mě nejvíc
inspirativní
i když použil řešení takřka obchvatem. 
Ale zajímavé jsou skoro všechny postupy a skutečně se ukazuje,
že je způsobů požehnaně.
Zobrazeno 12 zpráv z 12.
