Přejít na obsah

#5 Operátory – další typy op. a priorita op. [*]

tut tutorial samp pawn operátor operand relační logický priorita

  • Pokud chcete odpovědět, přihlaste se
Žádné odpovědi

#1
vEnd

vEnd

    Marc Wayne "B-Dup"

  • Globální moderátor
  • Příspěvků: 496
  • Je tu celkem: 45d 22h 16m 55s

Obtížnost: :1:

Osnova:
1. Úvod
2. Relační operátory
3. Logické operátory
4. Přiřazovací operátory
5. Bitové operátory

6. Priorita operátorů
7. Závěr

1. Úvod
Vítám Vás u pátého návodu pro začínající pawnery. Téma se týká dalších druhů operátorů a navazuje na předchozí návod o operátorech. Abyste tento návod pochopili, přečtěte si nejprve ten předchozí.

2. Relační operátory
Úkolem relačních operátorů je porovnávat operandy (vrací pravdu, nebo nepravdu). S nimi se zpravidla setkáme v podmínkách. Jedná se o operátory rovnosti, nerovnosti, větší/menší a větší/menší nebo rovno.

.

new cislo = 5, cislo2 = 10;

cislo == cislo2 //dvě rovnítka porovnají, zda jsou čísla stejná (výsledek je false, 5 a 10 nejsou stejná)
cislo != cislo2 //vykřičník a rovnítko zjistí, zda se čísla různí (výsledek je true, 5 a 10 jsou různá)
cislo > cislo2 //znak pro "větší" zjistí, zda je číslo vlevo větší než to vpravo (výsledek je false, 5 není větší než 10)
cislo < cislo2 //znak pro "menší" zjistí, zda je číslo vlevo menší než to vpravo (výsledek je true, 5 je menší než 10)
cislo >= cislo2 //znak pro "větší nebo rovno" zjistí, zda je číslo vlevo větší nebo rovno tomu vpravo (výsledek je false, 5 není větší ani rovno 10)
cislo <= cislo2 //znak pro "menší nebo rovno" zjistí, zda je číslo vlevo menší nebo rovno tomu vpravo (výsledek je true, 5 není rovno 10, ale je menší)

.

Všechno to jsou binární operátory. Doufám, že není třeba si je blíže vysvětlovat, princip je stejný jako v matematice, stačí nám znalosti základní školy.

3. Logické operátory
Pomocí logických operátorů tvoříme složitější podmínky. Stejně jako relační, tak i tyto operátory vrací buď pravdu, nebo nepravdu. Logickými operacemi jsou logický součin, logický součet a logická negace.

a) Logický součin
Logický součin je binární operace a značí se dvěma ampersandy (&&). Výsledek této operace je pravdivý, právě když jsou oba výrazy pravdivé.

.

new cislo = 5, cislo2 = 10, cislo3 = 15;

cislo < cislo2 && cislo2 > cislo3 //výsledek je false

.

Prvním výrazem je "cislo < cislo2". Ten je pravdivý, 5 je menší než 10. Druhým výrazem je "cislo2 > cislo3". To pravda není, 10 není větší než 15. Jeden z výrazů je nepravdivý, proto je celá podmínka nepravdivá.

b ) Logický součet
Logický součet je binární operace a značí se dvěma svislicemi (||). Výsledek této operace je pravdivý, když alespoň jeden výraz je pravdivý.

.

cislo < cislo2 || cislo2 > cislo3 //výsledek je true

.

Vraťme se k předchozímu příkladu. Už víme, že první výraz je pravdivý a druhý nepravdivý. Poněvadž se teď jedná o logický součet, tak celá podmínka bude pravdivá – stačí jen jeden pravdivý výraz.

Při složitějších podmínkách si nemusíme být jisti tím, jak ji jazyk vyhodnotí. Proto nám Pawn umožňuje i v tomto případě použít kulaté závorky k určení priority vyhodnocení.

.

(cislo < cislo2 && cislo2 > cislo3) || (cislo3 > cislo && cislo3 >= cislo2)

.

Teď jsme si jistí, že se napřed vykoná logický součin a až poté logický součet.

c) Logická negace
Logická negace je unární operace a značí se vykřičníkem (!). Účelem této operace je převrátit pravdu v nepravdu a naopak.

.

new bool:logicka = true;

!logicka //hodnota bude false

.

Počáteční hodnota proměnné logicka je true. Po znegování bude hodnota převrácená – false.

4. Přiřazovací operátory
Operátor přiřazení již známe – rovnítko. Probrali jsme jej v předchozích návodech, takže teď si ho jen rychle zopakujeme. Na levé straně je proměnná/pole, do které(ho) přiřazujeme, a na pravé straně hodnota nebo výraz, který přiřazujeme.

.

new cislo = 5; //přiřazení celého čísla
new desetinne = 3.14; //přiřazení desetinného čísla
new znak = 'o'; //přiřazení znaku
new retezec[] = "ahoj"; //přiřazení řetězce
new pole[] = {1, 3, 6}; //přiřazení hodnot poli

.

Pro zajímavost (rozklikněte spoiler):

Spoiler

.

5. Bitové operátory
Bitové operátory manipulují s bity. Tato problematika zdaleka přesahuje znalosti potřebné pro nováčky, proto ji zde uvádět nebudu. Nicméně, pokud se přeci jen chcete o manipulaci s bity něco dozvědět, přečtěte si tento návod, kde se tomu Mort podrobně věnuje.

 

6. Priorita operátorů

Už jsme si zmínili, že prioritu operátorů můžeme ovlivnit kulatými závorkami jako v matematice, ale jaká je vlastně výchozí priorita operátorů? Na to se lze podívat do spoileru. Je to jen pro zajímavost, nic, bez čeho bychom se neobešli.

 

Spoiler

.

7. Závěr
A tímto končí druhý návod věnující se operátorům. Nyní už víte to potřebné o operátorech. Samozřejmě jich existuje mnoho, neuvedl jsem všechny (čárka, dvojtečka i všechny druhy závorek jsou také operátory), ale to už jsou drobnosti, které v praxi sami pochytíte.

Tento návod, stejně jako ten předchozí, je určen pro nováčky, pokročilejší věci byly buďto úplně vynechány, nebo jsou uvedeny ve spoilerech. Přesto, zdá-li se Vám, že jsem něco opomněl, někde jsem se spletl nebo se jen chcete vyjádřit, pište do tohoto tématu.

 

Ověřený návod

Tento návod prošel validací, a lze ho proto považovat za ověřený.


  • 2


96b259ac47244701b5097887d9439120.png

I always enjoy meeting people more chemically imbalanced than myself. -Trevor Philips
Roses are gay, violets are gayer, fuck the poem and listen to Slayer.
Unix is user friendly. It just happens to be very selective about who it decides to make friends with.






Také označeno jedním nebo více klíčovými slovy: Návod, tut, tutorial, samp, pawn, operátor, operand, relační, logický, priorita

0 uživatelů si prohlíží toto fórum

0 uživatelů, 0 návštěvníků 0 anonymních uživatelů

© 2015 IPS, Inc.

Zajímat Vás mohou ještě aktuální zprávy. sleviště, slevy dnes Herbalife je skvělou cestou pro dobré zdraví. Je libo dětský web?