3D回転体プログラム

Similar documents
3D回転体プログラム

回文作成支援プログラム

回文作成支援プログラム

通信対戦プログラム

万年暦プログラム

ルーレットプログラム

万年暦プログラム

相性占いプログラム

3D回転体プログラム

ブロック パニック

通信対戦プログラム

ブロック崩し風テニス

回文作成支援プログラム

sinfI2005_VBA.doc

データベース1

BASICとVisual Basic

インベーダープログラム

画像閲覧プログラム

占領双六ゲーム

相性占いプログラム

VB.NET解説

わにわにパニックプログラム

C#の基本

回文作成支援プログラム

パラパラ漫画

グラフィックス

Microsoft PowerPoint - VBA解説1.ppt [互換モード]

データベース1

ExcelVBA

平成 30 年度 プログラミング研修講座 岩手県立総合教育センター

Userコントロール

構造体

MS-ExcelVBA 基礎 (Visual Basic for Application)

Prog2_12th

Microsoft Word - VB.doc

アプリケーション

ファイル操作-インターネットキャッシュ

Microsoft Word - VBA基礎(3).docx

PowerPoint プレゼンテーション

回文作成支援プログラム

VB実用⑦ エクセル操作Ⅰ

パラパラ漫画

スライド 1

Microsoft Word _VBAProg1.docx

通信対戦プログラム

Microsoft Word -

PowerPoint プレゼンテーション

草競馬プログラム

PowerPoint プレゼンテーション

画像閲覧プログラム

ファイル操作

神経衰弱ゲーム

ICONファイルフォーマット

プログラミング入門1

Microsoft Word - VBA基礎(6).docx

Prog2_15th

連立方程式の解法

プレポスト【問題】

.NETプログラマー早期育成ドリル ~VB編 付録 文法早見表~

PowerPoint プレゼンテーション

CodeGear Developer Camp

データアダプタ概要

プログラミング基礎

印刷

GUIプログラムⅣ

Microsoft Word - Grspes…~…j…}…j…–…A…‰6.0.doc

データベース1

Javaプログラムの実行手順

Processingをはじめよう

Visual Basic 資料 電脳梁山泊烏賊塾 コレクション初期化子 コレクション初期化子 初めに.NET 版の Visual Basic では 其れ迄の Visual Basic 6.0 とは異なり 下記の例の様に変数宣言の構文に 初期値を代入する式が書ける様に成った 其の際 1 の様に単一の値

テキストファイルの入出力1

Microsoft Word - サンプル _図面編集_.doc

< F2D D E6A7464>

JavaScriptプログラミング入門 2.JavaScriptの概要

untitled

回文作成支援プログラム

VB実用Ⅲ⑩ フリーデータベースⅡ

方程式の解法

Java講座

基本作図・編集

PowerPoint プレゼンテーション

基本作図・編集

PYTHON 資料 電脳梁山泊烏賊塾 PYTHON 入門 関数とメソッド 関数とメソッド Python には関数 (function) とメソッド (method) が有る モジュール内に def で定義されて居る物が関数 クラス内に def で定義されて居る物がメソッドに成る ( 正確にはクラスが

占領双六ゲーム

Scilab 勉強会 ( 第 3 回 ) 高橋一馬, 十文字俊裕, 柏倉守 平成 17 年 11 月 15 日 関数 ファイルはエディタを用いて作成する.Scilab にはエディタ SciPad が附属している.SciPad では なく他のエディタを利用してもよい. 作成した関数は Scilab に

JavaプログラミングⅠ

バスケットボール

Mapmakerfor の手順下絵を準備 作者の設定した大きさで作成する場合 下絵にする地図を挿入 トリミングと大きさの調整 大きさを調整した画像を保存 下絵を背景に設定 作成画面の大きさを調整 1 自分で用意した下絵を背景にする場合 下絵を背景に設定 作成画面の大きさを調整 画像が大きい場合シート

クリッピング領域

プログラミング演習

図 2 Excel スプレッドシートの世界 のウィンドウ 図 3 Visual Basic の世界 のウィンドウ 図 3 の VBA ウィンドウは 図 2 の Excel ウィンドウのメニューの ツール をクリックし 開か れるプルダウンメニューで マクロ /Visual Basic Editor

コンピュータ概論

チャットプログラム

Prog1_3rd

基本作図・編集

Section1_入力用テンプレートの作成

NotifyIconコントロール

プログラミング基礎

Prog2_2nd

Visual Studio2008 C# で JAN13 バーコードイメージを作成 xbase 言語をご利用の現場でバーコードの出力が必要なことが多々あります xbase 言語製品によっては 標準でバーコード描画機能が付加されているものもあるようで す C# では バーコードフォントを利用したりバー

Transcription:

3D 回転体プログラム VB4 プログラムの概要 入力画面で マウスを用いて 側面より見た平面図を描きます マウスの左ボタンをクリックする事で連続線を描き 右ボタンをクリックすると新しい線を描く事が出来る 側面図が完成すると 回転の基本角度を設定して 確定ボタンをクリックすると 平面図を立体図に座標変換する 各軸の回転角度を設定して 表示ボタンをクリックすると 立体図が表示される 各軸の回転角度を変更して 表示ボタンをクリックすると色々な角度から立体図を見る事が出来る 今回の課題項目 単純変数の宣言 (Private Dim) 配列変数の宣言 (Private) 定数の宣言 (Public Const) 標準コントロールの利用 (Picture Frame Option Label Text Command) プロパティの値の取得と設定 (Visible Text Value Caption Enabled) イベントの利用 (Load Click MouseDown) 組込関数の利用 (Sin Cos Val Int RGB MsgBox) 演算子 ( 代入演算子 算術演算子 比較演算子 結合演算子 ) 制御構造構文 ( 条件分岐 ループ処理 ) サブルーチン ( 新規プロシージャ 引数 ) 今回の重点項目 マウスイベントに依るマウス座標の取得 (MouseDown) 描画メソッドに依るグラフィックスの描画 (PSet Line Cls) 今回の応用項目 視点と物体 物体と表示面の距離を自由に設定出来る様にする 作成した立体画像をファイルに記録出来る様にする -1-

オブジェクト プロパティ一覧 ピクチャーボックスの 1 と 2 は同じ場所に重 ねて貼り付ける チェックボックス コントロール配列 (0~7) ピクチャーボックス 1 ピクチャーボックス 2 テキスト 1 テキスト 2 テキスト 3 ラベル 1 ラベル 2 ラベル 3 フレーム 1 フレーム 2 コマンドボタン 1 コマンドボタン 2 コマンドボタン 3 コマンドボタン 4 コントロールの種類 プロパティ プロパティの設定値 フォーム オブジェクト名 Form1 ScaleMode 3 ピクセル ピクチャーボックス1 オブジェクト名 picinput BackColor &H00FFFFFF& ScaleMode 3 ピクセル Height 400 Width 640 ピクチャーボックス2 オブジェクト名 picdisp BackColor &H00FFFFFF& ScaleMode 3 ピクセル Height 400 Width 640 フレーム1 オブジェクト名 frabasedegree Caption Font 回転の基本角度 (MSゴシック, 標準,8) フレーム2 オブジェクト名 fraaxisdegree Caption Font 各軸の回転角度 (MSゴシック, 標準,8) オプションボタン オブジェクト名 optbasedegree Caption 10,20,30,40,45,60,90,120 Index 0~7( コントロール配列 ) Value True(Index=2 だけ ) -2-

コントロールの種類 プロパティ プロパティの設定値 ラベル1 オブジェクト名 lblaxisdegreex Caption X 軸 ラベル2 オブジェクト名 lblaxisdegreey Caption Y 軸 ラベル3 オブジェクト名 lblaxisdegreez Caption Z 軸 テキストボックス1 オブジェクト名 txtaxisdegreex Alignment 1 右揃え Text 30 テキストボックス2 オブジェクト名 txtaxisdegreey Alignment 1 右揃え Text 0 テキストボックス3 オブジェクト名 txtaxisdegreez Alignment 1 右揃え Text 0 コマンドボタン1 オブジェクト名 cmdinput Caption Font 入力 (MSゴシック, 太字,14) コマンドボタン2 オブジェクト名 cmdfix Caption Font 確定 (MSゴシック, 太字,14) コマンドボタン3 オブジェクト名 cmddisp Caption Font 表示 (MSゴシック, 太字,14) コマンドボタン4 オブジェクト名 cmdfinish Caption Font 終了 (MSゴシック, 太字,14) ピクチャーボックスビットマップ アイコン メタファイル JPEG ファイル GIF フィル等の画像を表示するコントロール 描画メソッドを用いて 円や直線等のグラフィックを描画する事も出来る 亦 他のコントロールを内包するコンテナに成る事も出来る フレーム他のコントロールをグループ化するコントロール 通常 チェックボックスやオプションボタンと共に使用し フレーム自体は 特定の機能を持たない オプションボタン複数の選択肢の中から 1 個だけを選択するコントロール チェックボックスとは異なり 1 個のグループの中で選択出来るオプションボタンは 1 個だけで有る ラベルテキストを表示するコントロール 此のテキストは ユーザーが直接入力したり変更したりする事は出来ない テキストボックステキストの入力や表示を行うコントロール 此のテキストは ユーザーが直接入力したり変更したりする事が出来る コマンドボタンユーザーが選択したコマンド ( 命令 ) や操作を実行するコントロール OK ボタンや実行ボタン等 処理の開始や中断 終了の合図に用いられ 最も良く利用されるコントロールです -3-

プログラムリスト ( フォームモジュール部分 ) Option Explicit ' コマンドボタン ( 表示 ) がクリックされた時の処理 Private Sub cmddisp_click() ' 表示画面を表示して初期化する picinput.visible = False picdisp.visible = True picdisp.cls ' 表示ジェネラルサブプロシージャを呼び出す Call Display ' コマンドボタン ( 終了 ) がクリックされた時の処理 Private Sub cmdfinish_click() ' プログラムをメモリから消去して終了する Unload Me End ' コマンドボタン ( 確定 ) がクリックされた時の処理 Private Sub cmdfix_click() ' 計算ジェネラルサブプロシージャを呼び出す Call Calculation ' 使用出来るコマンドボタンを制限する cmdfix.enabled = False cmddisp.enabled = True ' コマンドボタン ( 入力 ) がクリックされた時の処理 Private Sub cmdinput_click() ' 入力画面を表示して初期化する picdisp.visible = False picinput.visible = True picinput.cls picinput.line (0, 200)-(639, 200), RGB(0, 0, 255) picinput.line (320, 0)-(320, 399), RGB(0, 0, 255) Flag = False Cnt = 0 ' 使用出来るコマンドボタンを制限する cmdfix.enabled = False cmddisp.enabled = False 同じ位置に 2 枚重ねたピクチャーボックスを Visible プロパティに依り 表示するピクチャーボックスを切り替えて居る Call は Sub プロシージャ等に制御を渡すステートメント 此のジェネラルサブプロシージャは 標準モジュールで定義されて居る アプリケーションを終了する場合 正しくプログラムをメモリから消去して終了する事が望ましい 其の時点で使用出来るコマンドボタンを Enabled プロパティに依り使用可と使用不可に切り替える事に依り誤操作を防ぐ事が出来る 同じ位置に 2 枚重ねたピクチャーボックスを Visible プロパティに依り 表示するピクチャーボックスを切り替えて居る ピクチャーボックスには グラフィックスメソッドを利用して 図形を描画する事が出来る グラフィックスメソッドを利用して図形を描画する事が出来るのは ピクチャーボックスの他には Form と Printer オブジェクトが有る -4-

' フォームが読み込まれた時の処理 Private Sub Form_Load() ' 視点 ~ 物体 ~ 表示面の距離を設定する D2D = 500 D2E = 500 ' 使用出来るコマンドボタンを制限する cmdfix.enabled = False cmddisp.enabled = False 此の値を変更する事に依り拡大率等を変更する事が出来る 左右孰れかのマウスボタンを押すと MouseDown イベントが発生する ' 入力画面でマウスボタンが押し下げられた時の処理 Private Sub picinput_mousedown(button As Integer, Shift As Integer, X As Single, Y As Single) ' 左ボタンが押し下げられた場合 If Button = 1 Then If Flag = False Then Xa = X: Ya = Y picinput.pset (Xa, Ya), RGB(255, 0, 0) Flag = True Else Xb = X: Yb = Y picinput.line (Xa, Ya)-(Xb, Yb), RGB(255, 0, 0) X1(Cnt) = Xa - 320: Y1(Cnt) = -(Ya - 200): Z1(Cnt) = 0 X2(Cnt) = Xb - 320: Y2(Cnt) = -(Yb - 200): Z2(Cnt) = 0 Cnt = Cnt + 1 Xa = Xb: Ya = Yb If cmdfix.enabled = False Then cmdfix.enabled = True ' 右ボタンが押し下げられた場合 ElseIf Button = 2 Then Flag = False 左のマウスボタンが押された場合には 引数 Button に 1 が格納されて MouseDown イベントが発生する 此の時 マウスの当該オブジェクト内での座標は 引数 X と Y に格納されて居る 右のマウスボタンが押された場合には 引数 Button に 2 が格納されて居る 描画モードと移動モードを変数 Flag で区別して居る 変数 Flag はブール型の変数で True か False の孰れかの値を取る 此処では マウスイベントに依るマウス座標の取得と描画メソッドに依るグラフィックスの描画を主題として居る為 平面座標を立体座標に変換する等の部分は 標準モジュール kaitentai.bas に既に入力された物を組み込んで使用する 標準モジュールをプロジェクトに追加するには メニューバーの プロジェクト より 標準モジュール の追加を選択し ダイアログボックスの 既存のファイル タブから当該ファイルを指定する 標準モジュールは 通常 アプリケーションの他のモジュールで共通に使う為の宣言やプロシージャを記述する為に使用する -5-

プログラムリスト ( 標準モジュール部分 ) Option Explicit ' 標準モジュールレベルでグローバルな定数の宣言 Public Const MAX As Integer = 1000 Public Const DEG As Single = 3.14159 / 180 ' 標準モジュールレベルでグローバルな変数の宣言 Public X1(MAX) As Single Public X2(MAX) As Single Public Y1(MAX) As Single Public Y2(MAX) As Single Public Z1(MAX) As Single Public Z2(MAX) As Single Public CosX As Single Public CosY As Single Public CosZ As Single Public SinX As Single Public SinY As Single Public SinZ As Single Public Xa As Integer Public Xb As Integer Public Xn As Integer Public Ya As Integer Public Yb As Integer Public Yn As Integer Public Cnt As Integer Public D2D As Integer Public D2E As Integer Public Flag As Boolean 此処で宣言した定数は同じフォーム内の総てのサブプロシージャで参照する事が出来る 此処で宣言した変数は同じフォーム内の総てのサブプロシージャで値の参照と設定を行う事が出来る 配列の要素数は 将来の変更に備えて 定数や変数で指定する事が望ましい 此の場合定数 MAX の値を変更するだけで 簡単に総ての要素数を変更する事が出来る 此処で宣言した変数は宣言したサブプロシージャ内でしか値の参照と設定を行う事が出来ない ' 3D 回転体を表示するジェネラルサブプロシージャ Public Sub Display() ' サブプロシージャレベルでローカルな変数を宣言する Dim I As Integer ' 各軸の回転角度の基本値を計算する CosX = Cos(Val(Form1.txtAxisDegreeX.Text) * DEG) CosY = Cos(Val(Form1.txtAxisDegreeY.Text) * DEG) CosZ = Cos(Val(Form1.txtAxisDegreeZ.Text) * DEG) SinX = Sin(Val(Form1.txtAxisDegreeX.Text) * DEG) SinY = Sin(Val(Form1.txtAxisDegreeY.Text) * DEG) SinZ = Sin(Val(Form1.txtAxisDegreeZ.Text) * DEG) 何度も使用される値は 其の都度計算するのではなく 予め計算した結果を変数に格納して置くと実行速度を上げる事が出来る 特に ループ内で複雑な計算を行うと実行速度が下がるので 注意を要する -6-

' 各座標を変換して表示する For I = 0 To Cnt Call Convert(X1(I), Y1(I), Z1(I)): Xa = Xn: Ya = Yn Call Convert(X2(I), Y2(I), Z2(I)): Xb = Xn: Yb = Yn Form1.picDisp.Line (Xa, Ya)-(Xb, Yb), RGB(0, 0, 255) Next I Call は Sub プロシージャ等に制御を渡すステートメント 引数が必要なプロシージャを呼び出す場合は 引数リストを括弧で囲む必要が有る ' 平面座標を立体座標に変換するジェネラルサブプロシージャ Public Sub Calculation() ' サブプロシージャレベルでローカルな変数を宣言する Dim C As Single, S As Single Dim D As Integer, I As Integer Dim J As Integer, K As Integer Dim N As Integer, T As Integer ' 平面座標を立体座標に変換する T = Cnt For I = 0 To 7 If Form1.optBaseDegree(I).Value = True Then K = Val(Form1.optBaseDegree(I).Caption) Exit For Next I For I = 1 To (360 / K - 1) D = K * I: S = Sin(D * DEG): C = Cos(D * DEG) For J = 0 To (T - 1) N = T * I + J If N > MAX Then MsgBox " データが大き過ぎます!" & vbcrlf & _ " 回転の基本角度を変えて遣り直して下さい " Exit Sub X1(N) = Z1(J) * S + X1(J) * C Y1(N) = Y1(J) Z1(N) = Z1(J) * C - X1(J) * S X2(N) = Z2(J) * S + X2(J) * C Y2(N) = Y2(J) Z2(N) = Z2(J) * C - X2(J) * S Next J Next I Cnt = N + 1 For I = 0 To (360 / K - 1) For J = 0 To T N = (T + 1) * I + J + Cnt If J = T Then X1(N) = X2(T * I + J - 1) Y1(N) = Y2(T * I + J - 1) 標準モジュールからフォームのオブジェクトを操作する場合 必ず所属するフォームを指定する 此の様に 変数の宣言は カンマ (,) で区切り, 複数並べて指定する事も出来る 此処では, どのオプションボタンが選択されて居るかを判定して居るが 判定が付けば 残りの判定は不要なので Exit For でループから強制脱出して居る 長いステートメントは 行継続文字 ( スペースとアンダースコアの組み合わせ ) を使用して 複数行に分割して入力する事が出来る 此処では 2 種類の算術演算子が使用されて居る +: 加算 ( 足す ) *: 乗算 ( 掛ける ) 優先順位は 数学と同じく乗算が加算よりも高く 先に計算される 此の場合のイコール (=) 記号は 比較演算子で有る A=B : AとBは等しい 配列の要素番号 ( 添字 ) には変数だけでなく 変数を含む計算式も指定出来る -7-

Z1(N) = Z2(T * I + J - 1) If I = 360 / K 1 Then X2(N) = X2(J - 1): Y2(N) = Y2(J - 1): Z2(N) = Z2(J - 1) Else X2(N) = X2(T * (I + 1) + J - 1) Y2(N) = Y2(T * (I + 1) + J - 1) Z2(N) = Z2(T * (I + 1) + J - 1) Else X1(N) = X1(T * I + J) Y1(N) = Y1(T * I + J) Z1(N) = Z1(T * I + J) X2(N) = X1(T * (I + 1) + J) Y2(N) = Y1(T * (I + 1) + J) Z2(N) = Z1(T * (I + 1) + J) Next J Next I Cnt = N ' 座標を変換するジェネラルサブプロシージャ Public Sub Convert(X As Single, Y As Single, Z As Single) ' サブプロシージャレベルでローカルな変数を宣言する Dim X3 As Single Dim X4 As Single Dim Y3 As Single Dim Y4 As Single Dim Z3 As Single Dim Z4 As Single Dim TT As Single ' 各座標を変換する X3 = (Y * SinX + Z * CosX) * SinY + X * CosY Y3 = (Y * CosX - Z * SinX) Z3 = (Y * SinX + Z * CosX) * CosY - X * SinY X4 = X3 * CosZ - Y3 * SinZ Y4 = X3 * SinZ + Y3 * CosZ Z4 = Z3 TT = (D2D - Z4) / (Z4 - D2D - D2E) Xn = Int((TT + 1) * X4 + 0.5): Yn = Int((TT + 1) * Y4 + 0.5) Xn = 320 + Xn: Yn = 200 - Yn 此の様に 複数のステートメントをコロン (:) で区切り 1 行に複数記述する事も出来る 此の場合のイコール (=) 記号は 代入演算子で有り 右辺の値を左辺に代入する働きをする 点 P(x,y,z) を X 軸の周りに角度 α だけ回転させた時の点 P (x,y,z ) は三角関数を用いて下記の様に表す事が出来る x = x y = ycosα - zsinα z = ysinα + zcosα Int 関数は 引数を超えない最大の整数を返す関数で有るが 正の値を指定する時には 単に整数部分を返す関数と考えて差し支え無い -8-

Cls メソッドに依る画面の消去 機能 書式 解説 実行時に作成したグラフィックやテキストをクリアするメソッド Object.Cls 実行時にグラフィックス関連のステートメント 又は 出力関連のステートメントで作成された フォーム 又は ピクチャーボックス上のテキストとグラフィックスをクリア ( 消去 ) する 但し Picture プロパティで設定した背景のビットマップや デザイン時にフォームに配置したコントロールは Cls メソッドではクリアされない 亦 Cls メソッドを実行する前に AutoRedraw プロパティを偽 (False) に設定すると AutoRedraw プロパティが真 (True) の間にフォーム 又は ピクチャーボックスコントロールの上に配置したグラフィックスやテキストも Cls メソッドではクリアされない 此の様に フォーム ピクチャーボックスコントロール等の AutoRedraw プロパティを操作して グラフィックスやテキストを保持する事が出来る Cls メソッドを実行すると オブジェクトの CurrentX プロパティと CurrentY プロパティが 0 に再設定される PSet メソッドに依る点の描画 機能 書式 解説 点を描画するメソッド Object.PSet Step ( 引数 1, 引数 2), 引数 3 フォーム ピクチャーボックス プリンタの各オブジェクトに対して 指定した位置に点を描く 引数 1 には 点が描画されるオブジェクト内の X 座標を指定し 必ず指定する 引数 2 には 点が描画されるオブジェクト内の Y 座標を指定し 必ず指定する 引数 3 には 描画色を指定し 省略する事が出来る Step は 描画位置を相対位置で指定する場合に使用し 省略する事が出来る 描画色を省略する場合は 前のカンマ (,) も省略する 此の場合, オブジェクトの ForeColor プロパティで設定した色で点が描画される グラフィックメソッド Cls グラフィックのクリア PSet 点の描画 ( ピクセル単位での色の設定 ) Point 色の取得 ( 指定したピクセルの色の値の取得 ) Line 線の描画 ( 線 矩形 塗り潰し矩形の描画 ) Circle 円の描画 ( 円 楕円 円弧の描画 ) PaintPicture 任意位置へのグラフィックの描画 ) -9-

Line メソッドに依る直線の描画 機能 書式 解説 直線 又は, 矩形を描画するメソッド Line Step( 引数 1, 引数 2)- Step( 引数 3, 引数 4), 引数 5, 引数 6 フォーム, ピクチャーボックス, プリンタの各オブジェクトに対して, 指定した 2 点間を結ぶ直線 又は, 矩形 ( 四角形 ) を描く 引数 1 には 直線 / 矩形が描画されるオブジェクト内の始点の X 座標を指定し 省略する事が出来る 引数 2 には 直線 / 矩形が描画されるオブジェクト内の始点の Y 座標を指定し 省略する事が出来る 引数 3 には 直線 / 矩形が描画されるオブジェクト内の終点の X 座標を指定し 必ず指定する 引数 4 には 直線 / 矩形が描画されるオブジェクト内の終点の Y 座標を指定し 必ず指定する 引数 6 には 描画色を指定し 省略する事が出来る 引数 7 には オプション ( 矩形 :B 塗り潰し矩形 :BF) を指定し 省略する事が出来る Step は 描画位置を相対位置で指定する場合に使用し 省略する事が出来る 始点を省略した場合は CurrentX 及び CurrentY に依り示される位置が描画の開始点に成る Line メソッドが実行されると CurrentX 及び CurrentY プロパティは 引数に依り指定された終点に設定される 此れを利用して 始点を省略し 連続線を描く事が出来る 描画用プロパティ DrawWidth グラフィックメソッドで描画する線の太さや点の大きさを設定する DrawStyle グラフィックメソッドで描画する線のパターンを設定する DrawMode グラフィックを重ねる時の描画方法を設定する BorderWidth ラインコントロールやシェイプコントロールの外形線の太さを設定する BorderStyle ラインコントロールやシェイプコントロールの外形線のパターンを設定する 算術演算子 比較演算子 論理演算子 1.^ 冪乗 1.= 等しい 1.Not 否定 2.- 負数 2.<> 等しくない 2.And 論理積 3.* / 乗算と除算 3.< より小さい 3.Or 論理和 4. 整数除算 4.> より大きい 4.Xor 排他的論理和 5.Mod 剰余 5.<= 以下 5.Eqv 同値 6.+ - 加算と減算 6.>= 以上 6.Imp 包合 算術演算子と論理演算子では 複数の演算子が使用されて居る場合には 頭に付けた番号の順序で演算が行われる ( 上に書かれて居る演算子程優先順位が高い ) -10-