VBScript Operators: 論理式 (AND、OR)、比較例

⚡ スマートサマリー

VBScript Opera演算子は、値や変数に対して作用してタスクを実行します。VBScript には、計算を行うための算術演算子、値を比較するための比較演算子、AND や OR などの論理演算子という 3 つの主要なカテゴリがあり、これらはすべて定義された演算子の優先順位に従って評価されます。

  • 算術 Operators: +、-、*、/、Mod(剰余)、^(べき乗)、&(連結)を使用して計算を実行します。
  • <XNUMXxEXNUMX><XNUMXxEXNUMX><XNUMXxXNUMXA><XNUMXxXNUMX><XNUMXxXNUMXA>️️ 比較 Operators: =、<>、<、>、<=、>= を使用して値間の関係をテストし、true または false を返します。
  • 🔗 論理的 Operators: AND、OR、NOT、XORは、ブール条件を組み合わせたり、反転させたりします。
  • 🔢 Opera優先順位: 算術演算は最初に評価され、次に比較演算、最後に論理演算が行われます。括弧は、この順序を上書きします。
  • 📌 定数: Const キーワードは、Const pi = 3.14 のように変更できない固定値を定義します。
  • ⚠️ 予約名: 「vb」で始まる定数名は、VBScriptの組み込み定数用に予約されているため、使用を避けてください。

VBScript Operaトー

VBScript Operaトー

An Operator は値または変数に作用して、何らかのタスクを実行します。 Opera変数がなければ変数に値を代入したり、タスクを実行したりできないため、変数はプログラミングにおいて非常に重要です。

XNUMX つの変数 a と b の合計を計算し、その結果を別の変数 c に保存するとします。

c = a + b

ここで、a、b、c はオペランドであり、+ と = は演算子です。

VBScriptには主に3種類の演算子があります:算術、比較、論理 Operators。

VBScript の算術演算 Operaトー

VBS 算術演算子は、その名前が示すように、算術計算に使用されます。

異なる算術演算子は

  • +(加算)
  • – (サブ)tracション)
  • * (乗算)
  • / (分割)
  • モジュラス(剰余)
  • ^ (べき乗)
  • & (連結)

最初の 4 つの算術演算子はよく使われるので、よくご存知かもしれません。

剰余演算子(Mod)は、除算後の余りを求めるために使用されます。例えば、10 Mod 3 は 1 になります。

指数演算子は数学における「累乗」に相当します。たとえば、2^3 は 8 に相当します。

連結演算子は、2 つの文字列値を連結するために使用されます。

たとえば、 「Hello」&「John」は「Hello John」を返します。

VBScript の比較 Operaトー

比較演算子は 2 つの値を比較するために使用されます。

比較演算子には、==、<>、<、>、<=、>= があります。例えば、変数 a と b の値がそれぞれ 5 と 9 であるとします。この場合、次の比較の結果は次のようになります。

a==b  will return false.
a<>b will return true.
a<b will return true.
a>b will return false.
a<=b will return true.
a>=b will return false.

VBScript 論理演算子: AND、OR

論理演算子は論理演算に使用されます。

論理演算子には、AND、OR、NOT、XOR などがあります。

それぞれ true と false の値を持つ 2 つの変数 x と y があるとします。この場合、次の論理演算の結果は次のようになります。

x AND y  will return false.
x OR y will return true.
NOT(x OR y) will return false.
x XOR y will return true.

Code 例:

ステップ1) 次のコードをエディターにコピーします

<html>
<head>

<script type="text/vbscript">

Dim num1,num2
num1=20
num2=3

document.write(num1 & " + " & num2 & " = " & num1+num2 & "<br />")
document.write(num1 & " - " & num2 & " = " & num1-num2 & "<br />")
document.write(num1 & " * " & num2 & " = " & num1*num2 & "<br />")
document.write(num1 & " / " & num2 & " = " & num1/num2 & "<br />")
document.write(num1 & " ^ " & num2 & " = " & num1^num2 & "<br />")
document.write(num1 & " Mod " & num2 & " = " & num1 Mod num2 & "<br />")
document.write("John" & " & " & "Smith" & " = "& "John" & " Smith" & "<br />")

Dim num3,num4
num3=7
num4=13
If (num3=num4) Then
document.write(num3 & " == " & num4 & " returns true." & "<br />")
Else
document.write(num3 & " == " & num4 & " returns false." & "<br />")
End If

If (num3<>num4) Then
document.write(num3 & " <> " & num4 & " returns true." & "<br />")
Else
document.write(num3 & " == " & num4 & " returns false." & "<br />")
End If

If (num3<num4) Then
document.write(num3 & " < " & num4 & " returns true." & "<br />")
Else
document.write(num3 & " < " & num4 & " returns false." & "<br />")
End If

If (num3>num4) Then
document.write(num3 & " > " & num4 & " returns true." & "<br />")
Else
document.write(num3 & " > " & num4 & " returns false." & "<br />")
End If

If (num3<=num4) Then
document.write(num3 & " <= " & num4 & " returns true." & "<br />")
Else
document.write(num3 & " <= " & num4 & " returns false." & "<br />")
End If

If (num3>=num4) Then
document.write(num3 & " >= " & num4 & " returns true." & "<br />")
Else
document.write(num3 & " >= " & num4 & " returns false." & "<br />")
End If

Dim bool1,bool2
bool1=false
bool2=true

If (bool1 AND bool2) Then
document.write(bool1 & " AND " & bool2 & " returns true." & "<br />")
Else
document.write(bool1 & " AND " & bool2 & " returns false." & "<br />")
End If

If (bool1 OR bool2) Then
document.write(bool1 & " OR " & bool2 & " returns true." & "<br />")
Else
document.write(bool1 & " OR " & bool2 & " returns false." & "<br />")
End If

If NOT(bool1 OR bool2) Then
document.write("NOT (" & bool1 & " OR " & bool2 & " ) returns true." & "<br />")
Else
document.write("NOT (" & bool1 & " OR " & bool2 & " ) returns false." & "<br />")
End If

If (bool1 XOR bool2) Then
document.write(bool1 & " XOR " & bool2 & " returns true." & "<br />")
Else
document.write(bool1 & " XOR " & bool2 & " returns false." & "<br />")
End If

</script>

</head>
<body>

</body>
</html>

ステップ2) ファイルをoperator.htmlとして任意の場所に保存します。Internet Explorerでファイルを開くと、画面は次のようになります。

VBScript 論理 Operaトー

何ですか Opera優先順位は?

式の中に複数の演算子がある場合、各部分は演算子の優先順位と呼ばれる所定の順序で評価されます。式に複数のカテゴリの演算子が含まれている場合、

  • 算術演算子が最初に評価される
  • 比較演算子は次に評価される
  • 論理演算子は最後に評価される

比較演算子はすべて同じ優先順位を持ちます。つまり、出現する左から右の順序で評価されます。

算術演算子は次の順序で評価されます。

  • べき乗
  • 乗算
  • 分裂
  • モジュラス
  • 追加とサブtrac生産
  • そして最後に連結。

論理演算子は次の順序で評価されます。

  • NOT
  • そして
  • OR
  • XOR。

また、ご購読はいつでも停止することが可能です 括弧 (開き括弧と閉じ括弧) を使用して、通常の優先順位を希望どおりに変更します。 括弧内では、通常の演算子の優先順位が維持されます。

例えば、式 a = 5-2*2/5^3 を計算しようとした場合、どのような結果が期待できますか?結果は 4.968 になります。なぜでしょうか?指数計算が最初に行われ、次に乗算と除算が行われ、最後に減算が行われます。tracしたがって、上記の式は次のように計算されます: 5-2*2/(5^3) –> 5-(2*2)/125 –> 5-(4/125) –> 5-.032 –> 4.968。

最初に 5-2 を計算したいとします。その後、式を = (5-2)*2/5^3 として記述する必要があります。 これで、 as a の値が 3*2/5^3 –> 3*2/125 –>6/125 –> 0.048 として得られます。 以下のコードを試してみてください。

Code 例:

ステップ1) 次のコードをエディターにコピーします

<html>
<head>

<script type="text/vbscript">

Dim a
a  = 5-2*2/5^3
document.write(a)
</script>

</head>
<body>

</body>
</html>

ステップ2) ファイルを precedence.html として任意の場所に保存します。 Internet Explorer でファイルを開くと、画面は次のようになります。

VBScript Opera優先順位

ステップ3) 式 a を (5-2)*2/5^3 に変更し、ファイルを保存します。 ここで出力を確認すると、出力は次のようになります。

VBScript Opera優先順位

VBScript 定数

VBSでコーディングしていると、定数を使う必要が出てくる場合があります。定数とは、決して変わらない数値や文字列を表す、意味のある名前のことです。例えば、コード内で定数πを使いたいとします。定数πの値は明らかに変わりません。そこで、「pi」という名前の定数を作成し、必要な場所で使用できます。定数を宣言するには、「const」というキーワードを使う必要があります。例えば、次のように「pi」という名前の定数を宣言し、πの値を代入できます。

const pi = 3.14

定数を宣言した後、その値を変更しようとすると、エラーが発生します。

定数に名前を付けるときは、事前定義された VBScript 定数を使用しないように注意する必要があります。 最善の予防策は、VBScript の事前定義定数はすべて vb で始まるため、vb で始まる名前を避けることです。 例としては、vbRed、vbSunday、vbArray などがあります。 これらの事前定義された VBScript 定数をコード内で必要に応じて使用できます。

概念を明確にするために、以下のコードを試してください。

Code 例:

<html>
<head>

<script type="text/vbscript">
   Dim intRadius
   intRadius = 20
   const pi=3.14
   area = pi*intRadius^2
   document.write(area)
</script>

</head>
<body>
</body>
</html>

ファイルをconstant.htmlとして任意の場所に保存します。 Internet Explorer でファイルを開くと、画面は次のようになります。

VBScript 定数

よくあるご質問

VBScript は、代入と比較の両方に単一の等号 (=) を使用します。C や Javaスクリプトには == 演算子はありません。ステートメントのコンテキストによって、= が代入を意味するのか比較を意味するのかが VBScript に伝えられます。

& 演算子は常に値を連結して文字列にします。+ 演算子は数値を加算しますが、文字列を連結することもあるため、曖昧さが生じる可能性があります。予期しない数値結果を避けるため、テキストの結合には & を使用してください。

modは、ある数を別の数で割った余りを返します。例えば、10 mod 3は1になります。これは、数が偶数か奇数か、割り切れるかを判定するためによく使われます。

はい。AIは、タスクに適した演算子を説明し、文字列における+と&の違いを警告し、適切な優先順位を持つ正しい式を生成できます。結果は必ずサンプル値でテストしてください。

はい。AIは数式を段階的に処理し、算術演算、比較演算、論理的な優先順位を適用し、括弧によって結果が変わる箇所を示すことができます。これにより、初心者でも自信を持って出力を予測できるようになります。