No.1ベストアンサー
- 回答日時:
変数の宣言と問題の式の間には別の処理が有るものとします。
括弧の中は、条件判断をしています。結果として「True」か「False」が返るのですがVBの場合、
True=-1
False=0
だったと思います。
なので、intAが3以下の時はintBは0、intAが3より大きいときはintBは1になります。
intB=1+(intA<=3)
↓
If intA<=3 Then
intB=0
Else
intB=1
End If
と同じ事だと思いますよ。
No.2
- 回答日時:
<=みたいな比較の不等号は、プログラム言語では「比較演算子」と言って、左右の項を比較した結果、その条件が成立っていたら(a<=bなら aがb以下だったら)「真」を表わす値、そうでないなら(a<=bなら aがbより大きかったら)「偽」を表わす値になります。
一応、VB6ではBoolean型のtureとfalseという値になるのですが、これを数値を使う式の中で使うと、trueが-1,falseが0として扱われます。
その例ですと
intA≦3の場合、 intA<=3はtrueなので
intB= 1+ (-1) → intB =0
intA>3の場合、 intA<=3はfalseなので
intB= 1+ (0) → intB =1
となります。
比較演算子がどんな値になるか、true/falseがどんな値になるか、は言語によって違います。
C言語ではtrueのときは1になります。このプログラムをそのまま移植するなら intB= 1-(intA<=3); にしないと値が変わってしまいます。
また、True/Falseと数値とはまったく別の値で、単純に相互変換できないものもあります。
昔のインタプリタ型Basicとかだと
if intA<=3 then intB=0 else intB=1
とかするより格段に速かったので、有効なやり方でしたが、最近では、CPUの高速化やコンパイルの最適化でほとんど差が無い上に、プログラムがわかりにくくなるので、あんまり使わないテクニックですね
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 入力ボックスが繰り返しポップアップして止まらない。 下記コードでファイル名の変更をしたいのですが、変 1 2022/09/08 11:27
- Visual Basic(VBA) VBAが止まります。 2 2022/09/02 14:02
- Visual Basic(VBA) Accessフォームで全レコードを指定のExcelのセルへ転送し印刷する方法について 2 2022/09/08 18:23
- Visual Basic(VBA) 3つの条件を指定してVBAで行を削除したい 条件1:分類1が重複 条件2:分類2が重複 条件3:個数 6 2022/06/24 11:07
- その他(プログラミング・Web制作) seleniumbasic chrome操作について 1 2023/03/29 15:40
- Visual Basic(VBA) VBA シート間の転記で、条件の追加コードの書き方について教えて下さい。 13 2023/02/26 09:31
- Visual Basic(VBA) VBAで時間(00:00形式)を積算(足し算)したい 1 2022/11/15 17:04
- Visual Basic(VBA) セルの値からファイルを複数作りたい2 3 2022/10/07 15:54
- Visual Basic(VBA) VBA This Workbookモジュールを別ファイルにコピーする方法 1 2022/09/14 01:51
- Visual Basic(VBA) 稀に1円合いません? Sheet1から金額と個数を貼り付ける下記コードで、金額を切り上げるコードを何 3 2022/09/05 15:11
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
C言語 exitの使い方
-
フォームを開くときに、コンボ...
-
Excel-vba 文字列と変数を...
-
10進数をアスキーコードに変換
-
フリーランタイマーの時間差分...
-
C言語でCLAMP(a,b,c)
-
数字の位ごとの値を表示するプ...
-
足して100になるような乱数のア...
-
VBAで配列のNULL判定
-
VB6.0-整数と余りを求める
-
相関係数p値の出し方
-
DataGridView 複数行同時変更...
-
大きな数の乱数を作るには
-
Nullってどういう意味ですか?
-
C#で動的にコントロールを取得...
-
VBAのチェックボックス結果を集...
-
C#でのIF文 時間比較のやり方
-
Access2003 オートナンバーの現...
-
データ構造のmapとは?
-
ラジオボタンの値の取得につい...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
フォームを開くときに、コンボ...
-
足して100になるような乱数のア...
-
Excel-vba 文字列と変数を...
-
C言語 exitの使い方
-
VB6.0-整数と余りを求める
-
VBAで配列のNULL判定
-
数字の位ごとの値を表示するプ...
-
VBAの定数の使い方で、計算値を...
-
フリーランタイマーの時間差分...
-
C#で動的にコントロールを取得...
-
10進数をアスキーコードに変換
-
コンボボックスの名前を変数に...
-
1つ前の値を変数に保存する方法
-
ラジオボタンの値の取得につい...
-
スピンボタンで小数点
-
相関係数p値の出し方
-
C言語でCLAMP(a,b,c)
-
DataGridView 複数行同時変更...
-
VBAのチェックボックス結果を集...
-
データ構造のmapとは?
おすすめ情報