5.1.N88BASICの演算
数値定数・変数と文字定数・変数との混合演算はできない
演算の優先順位は以下のとおり。また各演算は上の方の実行が優先する。
演算子 | 内容 | 例 |
---|---|---|
^ | 指数(べき乗)演算 | 2^16 |
- | 負号 | -5 |
*,/ | 乗算,実数の除算 | A*5,A/5 |
\ | 整数の除算 | A\10 |
MOD | 整数の剰余(余り) | A MOD 2 |
+,- | 加算,減算 | A+5,A-5 |
演算子 | 内容 | 例 |
---|---|---|
= | 等しい | X=Y |
<>,>< | 等しくない | X<>Y,X><Y |
< | 小さい | X<Y |
> | 大きい | X>Y |
<=,=< | 小さいか等しい | X<=Y,X=<Y |
>=,=> | 大きいか等しい | X>=Y,X=>Y |
演算子 | 内容 | 例 |
---|---|---|
NOT | 否定 | NOT X |
AND | 論理積 | X AND Y |
OR | 論理和 | X OR Y |
XOR | 排他的論理和 | X XOR Y |
IMP | 包含 | X IMP Y |
EQV | 同値 | X EQV X |
文字列の連結は(+)を使います。
1000 A$="abcd":B$="1234" 1010 C$=A$+B$ 1020 PRINT C$ abcd1234
5.2.perlの演算
数値と文字との混合演算はできる(後述)
演算子 | 内容 | 例 |
---|---|---|
++,-- | インクリメント,デクリメント | $a++,$a-- |
- | 負号 | -5 |
** | 指数(べき乗)演算 | 2**16 |
*,/,% | 乗算,実数の除算,整数の剰余(余り) | $a * 5,$a / 5,$a % 2 |
+,- | 加算,減算 | $a + 5,$a - 5 |
数値演算子 | 文字演算子 | 内容 | 例 |
---|---|---|---|
== | eq | 等しい | $x == $y,$x eq $y |
!= | ne | 等しくない | $x != $y,$x ne $y |
< | lt | 小さい | $x < $y,$x lt $y |
> | gt | 大きい | $x > $y,$x gt $y |
<= | le | 小さいか等しい | $x <= $y,$x le $y |
>= | ge | 大きいか等しい | $x >= $y,$x ge $y |
演算子 | 内容 | 例 |
---|---|---|
!,~ | 論理否定,ビット否定 | !$x,~$x |
<<,>> | ビットシフト | <<$x,>>$x |
& | ビット論理積 | $x & $y |
|,^ | ビット論理和,ビット排他的論理和 | $x | $y,$x ^ $y |
&& | 論理積 | $x && $y |
|| | 論理和 | $x || $y |
文字列の連結はピリオド(.)を使います。
文字列の繰り返しはxを使います。
$a = "abcd"; $b = "1234"; $c = $a . $b; #$c = "$a$b";と同じ print "$c\n"; $a = "123" x 3; print "$a\n"; abcd1234 123123123
"123" | 123 |
" 123" | 123 |
"12.3abcd" | 12.3 |
"abcd" | 0 |
"abcd123" | 0 |
"1abcd123" | 1 |
"00005"などを"5"に換えるには,0を加えます。
$a = "00005"; print "$a\n"; $a = $a + 0; #$a += 0; print "$a\n"; 00005 5
5.3.標準入出力
N88BASICでは,入力はINPUTとLINE INPUT文,出力はPRINT文です。
1000 INPUT A$,B,C$ 1010 PRINT A$,B,C$ 1020 LINE INPUT A$ 1030 PRINT A$ abc,10,xyz abc 10 xyz Hamamatsu, Japan Hamamatsu, Japan
perlでは,入力は<STDIN>,出力はPRINT文です。
$x = <STDIN>; chop($x); #$xの最後の(0A)を除く ($a,$b,$c) = split(/,/, $x); #,で分離する print "$a*$b*$c\n"; abc,10,xyz abc*10*xyz
Copyright (c)1996 GOMASUKE
Since 09/14/1996, Last Updated 09/18/1996