Začínáme s ASP, 4 díl: Operátory

V ASP skriptech často narazíme na problém, že budeme muset sečíst nějaká čísla (třeba počitadlo přístupů), porovnat řetězce (například heslo) atd.. Na to vše nám slouží operátory.
V ASP skriptech často narazíme na problém, že budeme muset sečíst nějaká čísla (třeba počitadlo přístupů), porovnat řetězce (například heslo) atd.. Na to vše nám slouží operátory.

Visual Basic Script rozeznává tři druhy operátorů –aritmetické, porovnávací a logické. Z matematiky si jistě vzpomínáme na priority násobení a dělení před sčítáním a odčítáním atd. Ve VBS je to podobné.

Výraz x = q + a / b se vykoná následovně: nejdříve se vypočítá podíl a a b a poté se k výsledku přičte hodnota proměnné q. Pokud bychom chtěli změnit pořadí vykonávání operací, můžeme použít závorky, v našem případě např. x = (q + a) / b ; tedy nejprve se vypočte součet proměnných q a a a poté dojde na dělení proměnnou b.

Pokud se ve výrazu objeví více proměnných různých druhů, vykonávají se nejprve výrazy, kde jsou použity aritmetické operace, poté porovnávací a naposledy logické.

Aritmetické operátory v pořadí, v jakém jsou vykonávány:

Mocnina ^
unární negace -
násobení *
Dělení /
celočíselné dělení \
zbytek po dělení Mod
Sčítání +
Odčítání -

Porovnávací operátory v pořadí, v jakém jsou vykonávány:

Rovnost =
Nerovnost <>
menší než <
větší než >
menší nebo rovno <=
větší nebo rovno >=
rovnost objektů Is

Logické operátory v pořadí, v jakém jsou vykonávány:

negace (zápor) Not
konjunkce (sjednocení) And
disjunkce (rozdíl) Or
exkluzivní disjunkce Xor
logická rovnost Eqv
logická implikace Imp

Pár poznámek:

Operátoru rovná se (=) má dvě funkce, jedna je přiřazovací (viz příklad), kdy na levé straně je proměnná, do které chceme přiřadit výraz uvedený na pravé straně od rovnítka. Zde je nutné zdůraznit, že na levé straně musí být vždy jen jedna proměnná – výsledek. Druhá funkce operátoru je již zmíněné porovnání. Například výraz a = b v podmínkovém příkazu vrací pravdu (viz logické operátory), pokud je hodnota proměnné a rovna hodnotě proměnné b.

Operátor & zmíněný v minulé části by se mohl teoreticky zařadit do skupiny aritmetických operátorů, ale jeho argumenty nejsou číselného charakteru.

Co se týče operátoru Is, používá se výhradně u objektů, u kterých chceme zjistit, zda jsou stejné. Objekt je entita mající jisté vlastnosti a metody. S objekty budeme pracovat až později, používají se například při práci se soubory, disky, databázemi, chybami atd. Operand Is neporovnává hodnotu, ale odkaz na objekt, proto jej nelze aplikovat na proměnné.

Sice není moc obvyklé, aby se na stránkách počítal obsah obecného trojúhelníku pomocí Heronova vzorce :), ale jako příklad aritmetických operací nám poslouží dobře.

<HTML>
<HEAD><TITLE>Serial ASP na Zive.cz 4-1 (aritmeticke operace – obsah trojúhelníku)</TITLE></HEAD>
<BODY>
  <%
      Dim A, B, C, S, Obsah
      A = 3
      B = 4
      C = 5
      S = (A+B+C)/2
      Obsah = sqr(S*(S-A)*(S-B)*(S-C))
      Response.write(”<u>Obsah trojuhelniku o hranach:</u>”)
      Response.write(”<br>a = ” & A & ”<br>b = ” & B & ”<br>c = ” & C )
      Response.write(”<br>je <B>” & Obsah & ”</B>”)
  %>
</BODY>
</HTML>

O funkci sqr jsme se doposud nezmínili, jedná se druhou odmocninu argumentu. Je to poprvé, co jsme se setkali s pojmem funkce. Funkce je – podobně jako procedura – součást programu, který vykonává určitou posloupnost příkazů, ale na rozdíl od procedury vrací hodnotu. O funkcích a procedurách ale až v příštích částech.

Na porovnávací operátory si dnes bohužel příklad neukážeme, neboť neznáme podmínkové příkazy. Ale na druhou stranu – funkce operací menší, větší jsou zcela zřejmé i bez příkladu.

Logické operátory operují na booleanovské algebře. Jak jistě víme z předchozí kapitoly, booleanovská algebra zná 2 hodnoty – true (pravda) a false (nepravda). Pro zjednodušení použijeme v následující tabulce pouze čísla 1, reprezentující true a 0 pro false. V tabulce jsou uvedeny logické operátory a všechny kombinace proměnných A a B

A B Not A Not B A And B A Or B A Xor B A Eqv B A Imp B
0 0 1 1 0 0 0 1 1
1 0 0 1 0 1 1 0 0
0 1 1 0 0 1 1 0 1
1 1 0 0 1 1 0 1 1

Pozorný čtenář si všiml, že naše ukázkové příklady mají jednoduchou strukturu, běh skriptu se nevětví, necyklí atd. Proto se budeme v příštím díle již zabývat programovými strukturami.

Diskuze (5) Další článek: Windows XP nebude obsahovat podporu pro Bluetooth

Témata článku: Software, Programování, Díl, Konjunkce, Algebra, Operátor, Jednoduchý vzorec, Zjednodušený příklad, Levá strana, Nota, Opera


Určitě si přečtěte



Aktuální číslo časopisu Computer

Velký test Wi-Fi mesh

Nejlepší hodinky pro všechny aktivity

Důležité aplikace na cesty

Jak streamovat video na Twitch