名前 | 形式 | 機能説明 | 使用法 | オプション | オペランド | 使用例 | 環境 | 終了ステータス | ファイル | 属性 | 関連項目 | 注意事項
bc ユーティリティは、任意の精度の電卓機能を実装します。このユーティリティは、指定したファイルから入力を読み取り、次に標準入力から読み取ります。bc の標準入力と標準出力が端末に接続されている場合、bc は対話形式で実行され、以下の項で説明する動作上の制約を受けます。bc は、C に似た言語を処理します。bc は、計算プログラム dc のプリプロセッサであり、-c オプションが指定されていない場合は自動的に dc を呼び出します。この場合、dc への入力は、標準出力に送られます。
bc プログラムの構文は次のとおりです。
a 〜 z の文字を表します。
式を表します。算術値または論理値、値をとるオペランド、または値に評価されるオペランドと演算子の組み合わせです。
文を表します。
オプションの符号および小数点付きの任意の桁数の数字。BC_STRING_MAX 文字より少ない、二重引用符 (") で囲まれた文字列(E)
立方根
10 進数の有効桁数
小数点の右側の桁数
正弦関数
余弦関数
指数関数
対数関数
逆正接関数
ベッセル関数
すべての関数の引数は、値で渡されます。
式である文の値は、主演算子が代入演算子でない限り出力されます。セミコロンまたは復帰改行のいずれかで文を区切ることができます。scale への数の代入は、dc 方式の演算において保存される桁数に影響を与えます。ibase または obase への代入により、入力と出力の基数がそれぞれ設定されます。
同じ文字を、同時に配列、関数、および単純変数に使用することができます。すべての変数はプログラムに対してグローバルです。auto 変数は、関数呼び出し中はスタックされます。配列を関数の引数、または自動変数の定義に使用する場合は、空の角括弧を配列名の後に続ける必要があります。
次のオプションを指定できます。
コンパイルだけを行います。出力は、標準出力に送られる dc コマンドです。
数字関数を定義して、scale を 0 (デフォルト) ではなく 20 に初期化します。
シェルにおいて、次のコードは、n の最初の 10 桁の近似値を変数 x に代入します。
x=$(printf "%s\n" 'scale = 10; 104348/33215' | bc) |
関数を定義して、指数関数の近似値を計算します。
scale = 20 define e(x){ auto a, b, c, i, s a = 1 b = 1 s = 1 for(i=1; 1==1; i++){ a = a*x b = b*i c = a/b if(c == 0) return(s) s = s+c } } |
最初の 10個の整数の、指数関数の近似値を出力します。
for(i=1; i<=10; i++) e(i) |
または
for (i = 1; i <= 10; ++i) { e(i) } |
bc の実行に影響を与える環境変数 LC_CTYPE、 LC_CTYPE、 LC_CTYPE については、environ(5) のマニュアルページを参照してください。
次の属性については、attributes(5) のマニュアルページを参照してください。
属性タイプ | 属性値 |
---|---|
使用条件 | SUNWesu |
bc コマンドは、論理演算子 && および || を認識しません。
for 文には 3 つの式 (E) のすべてが必要です。
名前 | 形式 | 機能説明 | 使用法 | オプション | オペランド | 使用例 | 環境 | 終了ステータス | ファイル | 属性 | 関連項目 | 注意事項