コボットPortal

演算子について

演算子についての記述例です。演算子を組み合わせて使用する事もできます。

目次
  1. 算術演算子
  2. 文字列の連結演算子
  3. 比較演算子
  4. 論理演算子


アクティビティのプロパティにVBの式として設定したり、判定時の条件として使用します。これらの演算子は組み合わせて使うこともできます。組み合わせて使用した場合、左から順に解釈されますが、演算子の優先される順を考慮する必要があります。丸括弧( )を使用する事で優先する順を指定できます。演算子を組み合わせて使用する場合、適宜丸括弧( )を用いた方が想定した演算を確実に行う事ができます。


1.算術演算子

四則演算を含む計算を行う演算子です。計算規則も四則演算と同じ「乗算や除算は、加算や減算よりも先」となります。計算の順序を指定する場合、四則演算と同じく丸括弧( )を使用します。

演算子記述例と演算結果
+足し算(加算)20 + 1030
-引き算(減算)20 - 1010
*掛け算(乗算)20 * 1030
/割り算(除算)30 / 201.5
¥割り算の答え(商)30 ¥ 201
Mod割り算の余り(剰余)30 Mod 2010
^累乗(べき乗)2 ^ 101024


2.文字列の連結演算子

「+」 演算子には数値の加算だけでなく、文字列を連結する機能もあります。String型(文字列)と String型(文字列)を「+」 演算子で演算した場合の結果は、連結された文字列となります。数値が文字列として格納されているString型の場合も、加算されず連結された文字列となります。文字列の連結には「+」演算子の他に「&」演算子を使うこともできます。

演算子記述例と演算結果
+文字列連結演算子"コボット" + "Studio""コボットStudio"
"2020" + "10""202010"
&文字列連結演算子"コボット" & "Studio""コボットStudio"
"2020" & "10""202010"


3.比較演算子

関係演算子とも呼ばれます。演算子が表す関係が成り立つ場合は真(True)を、成り立たない場合は偽(False)を返します。比較演算子の中に優先順位はありません。論理演算子と用いられた場合は、比較演算子が優先されます。

演算子記述例と演算結果
=同じ(等号)10 = 10True
20 = 10False
<>異なる(不等号)20 <> 10True
10 <> 10False
<より小さい(小なり)10 < 11True
10 < 10False
>より大きい(大なり)11 > 10True
10 > 10False
<=以下10 <= 10True
10 <= 9False
>=以上10 >= 10True
10 >= 11False


4.論理演算子

論理値(True・False)に対して演算を行います。複数の条件を組み合わせて判定する場合などに使用されます。比較演算子と一緒に用いた場合、比較演算子が優先されます。論理演算子が同時に記述されている場合、優先される順は「Not → And → Or → Xor」となります。優先する順を指定したい場合、丸括弧( )を使用します。ひとつひとつの演算子を見ていきましょう。


Not

「論理否定」の演算子です。「Not 条件A」と記述します。「条件Aではない」という意味で、条件AがTrueの場合は False、条件Aが Falseの場合は True のように逆転した演算結果となります。たとえば値が「奇数」と判定したい条件式を考えてみましょう。「2で割ったときの余りが0ではない」値を奇数と判定できます。これを式にすると「Not 値 Mod 2 = 0」となり、値が奇数の場合「True」と判定する事ができます。

条件A演算結果
Not A
Not var Mod 2 = 0 を演算する例
TrueFalsevar が 10 の場合「10 Mod 2 = 0」の演算結果は True となる。「Not True」を演算するため、この式の演算結果は False となる。
FalseTruevar が 5 の場合「5 Mod 2 = 0」の演算結果は False となる。「Not False」を演算するため、この式の演算結果は True となる。


And

「かつ(論理積)」の演算子です。「条件A And 条件B」と記述します。条件A 及び 条件Bが共に True の場合のみ演算結果がTrueとなります。たとえば値が「偶数で かつ 100 より小さい」かを判定したい条件式を考えてみましょう。「2で割ったときの余りが 0 で かつ 100 より小さい」を満たす場合となります。これを式にすると「(値 Mod 2 = 0) And (値 < 100) 」となり、この演算結果が True となる値が「偶数で かつ 100 より小さい」と判定できます。

条件A条件B演算結果
A And B
(var Mod 2 = 0) And (var < 100) を演算する例
TrueTrueTruevar が 60 の場合「60 Mod 2 = 0」「60 < 100」の演算結果はともに True となる。「True And True」を演算するため、この式の演算結果は True となる。
TrueFalseFalsevar が 100 の場合「100 Mod 2 = 0」の演算結果は True、「100 < 100」の演算結果は False となる。「True And False」を演算するため、この式の演算結果は False となる。
FalseTrueFalsevar が 3 の場合「3 Mod 2 = 0」の演算結果は False、「3 < 100」の演算結果は True となる。「False And True」を演算するため、この式の演算結果は False となる。
FalseFalseFalsevar が 101 の場合「101 Mod 2 = 0」の演算結果は False、「101 < 100」の演算結果は False となる。「False And False」を演算するため、この式の演算結果は False となる。


Or

「または(論理和)」の演算子です。「条件A Or 条件B」と記述します。条件A 及び 条件Bのいずれかが True の場合、演算結果が True となります。たとえば値が「偶数と1000より大きい場合のすべて」を対象にしたい場合の条件式を考えてみましょう。「偶数 または 1000 より大きい」ことを満たす場合となります。これを式にすると「(値 Mod 2 = 0) Or (値 > 1000) 」となり、この演算結果が True となる値が「偶数と1000より大きい場合のすべて」に該当していると判定できます。

条件A条件B演算結果
A Or B
(var Mod 2 = 0) Or (var > 1000) を演算する例
TrueTrueTruevar が 1020 の場合「1020 Mod 2 = 0」「1020 > 1000」の演算結果はともに True となる。「True Or True」を演算するため、この式の演算結果は True となる。
TrueFalseTruevar が 100 の場合「100 Mod 2 = 0」の演算結果は True、「100 > 1000」の演算結果は False となる。「True Or False」を演算するため、この式の演算結果は True となる。
FalseTrueTruevar が 1001 の場合「1001 Mod 2 = 0」の演算結果は False、「1001 > 1000」の演算結果は True となる。「False Or True」を演算するため、この式の演算結果は True となる。
FalseFalseFalsevar が 1 の場合「1 Mod 2 = 0」の演算結果は False、「1 > 1000」の演算結果は False となる。「False Or False」を演算するため、この式の演算結果は False となる。


Xor

「排他的論理和」の演算子です。「条件A Xor 条件B」と記述します。条件A 及び 条件Bのいずれか片方のみTrueの場合に 演算結果が Trueとなります。あまり使われません。

条件A条件B演算結果
A Xor B
(var Mod 2 = 0) Xor (var > 1000) を演算する例
TrueTrueFalsevar が 1020 の場合「1020 Mod 2 = 0」「1020 > 1000」の演算結果はともに True となる。「True Xor True」を演算するため、この式の演算結果は False となる。
TrueFalseTruevar が 100 の場合「100 Mod 2 = 0」の演算結果は True、「100 > 1000」の演算結果は False となる。「True Xor False」を演算するため、この式の演算結果は True となる。
FalseTrueTruevar が 1001 の場合「1001 Mod 2 = 0」の演算結果は False、「1001 > 1000」の演算結果は True となる。「False Xor True」を演算するため、この式の演算結果は True となる。
FalseFalseFalsevar が 1 の場合「1 Mod 2 = 0」の演算結果は False、「1 > 1000」の演算結果は False となる。「False Xor False」を演算するため、この式の演算結果は False となる。
印刷
徳田 is the author of this solution article.

この回答は役に立ちましたか? はい いいえ

フィードバックを送信
お役に立てなくて申し訳ありません。フィードバックを残し、このアーティクルを改善するのにどうかご協力ください。