|
VBとAutoLISP比較 (参考)
VBでのデータ型の宣言などは省いています。
項目 |
VB |
AutoLISP |
コメント |
'
例)
'コメント |
;
例)
;コメント |
定数 |
1 '整数
1.0 '実数
"1.0" '文字 |
1 ;整数
1.0 ;実数
"1.0" ;文字 |
代入 |
=
例)
aa = 1.0 |
setq
例)
(setq aa 1.0) |
演算 |
+,-,*,/
例)
aa = 1.0 '1.0を代入
bb = 2.0
cc = aa + bb
cc = aa - bb
cc = aa * bb
cc = aa / bb
cc = (aa + 1.0) * (bb + 1.5) |
+,-,*,/
例)
(setq aa 1.0) ;1.0を代入
(setq bb 2.0)
(setq cc (+ aa bb))
(setq cc (- aa bb))
(setq cc (* aa bb))
(setq cc (/ aa bb))
(setq cc (* (+ aa 1.0) (+ bb 1.5))) |
条件分岐1 |
>,<,>=,<=,<>,And,Or
例)
If aa > 1.0 And bb > 1.0 Then
cc = 1.5
Else
cc = 2.5
End If |
>,<,>=,<=,/=,and,or
例)
(if (and (> aa 1.0) (> bb 1.0))
(progn
(setq cc 1.5)
)
(progn
(setq cc 2.5)
)
) |
条件分岐2 |
例)
ii = 5
Select Case ii
Case 1, 3, 5
aa = 1.5
Case 2, 4
aa = 2.5
Case 6
aa = 3.5
End Select
結果は aa = 1.5 |
例)
(setq ii 5)
(cond
((or (= ii 1) (= ii 3) (= ii 5))
(setq aa 1.5)
)
((or (= ii 2) (= ii 4))
(setq aa 2.5)
)
((= ii 6)
(setq aa 3.5)
)
)
結果は aa = 1.5 |
ループ |
例)
aa = 1.0
nn = 5
For i = 1 To nn
aa = aa + 2.0
Next
結果は aa = 11.0 |
例)
(setq aa 1.0)
(setq nn 5)
(repeat nn
(setq aa (+ aa 2.0))
)
結果は (setq aa 11.0) |
配列 |
例)
aa(1) = 1.0
aa(2) = 2.0
aa(3) = 3.0
aa(4) = 4.0
aa(5) = 5.0
bb = aa(3)
結果は bb = 3.0 |
例)
(setq aa (list 1.0))
(setq aa (append aa (list 2.0)))
(setq aa (append aa (list 3.0)))
(setq aa (append aa (list 4.0)))
(setq aa (append aa (list 5.0)))
(setq bb (nth 2 aa)) '番号0から
結果は (setq bb 3.0) |
Presented By ユーザーフレンドリー
E-mail:usrfr@yk.rim.or.jp
|