Develop and Download Open Source Software

OpenSource Downloads

7-Zip  (4,208)  
HandBrake Japanese Language Version  (3,353)  
CrystalDiskInfo  (1,743)  
CotEditor  (1,120)  
CrystalDiskMark  (866)  
Boookends  (788)  
SMPlayer  (642)  
えこでこツール  (599)  
Tera Term  (595)  
10  FFFTP  (579)  
11  Cabos  (530)  
12  BathyScaphe  (494)  
13  ffdshow  (481)  
14  MergeDoc  (464)  
15  ギコナビ  (438)  
More >>

最近ブックマークされた記事

ちょっとした換算に便利なFrink

2008年11月18日 09:53 Ben Martin 1 2 3 4

 Frinkのコマンドライン引数では、各種オプションのあとに、読み込みと実行の対象となるFrinkコードが記述されたファイル名を指定する。ただし「-e」オプションを使えば、ファイル名の代わりに、実行すべき式を最後の引数として与えることができる。Frinkの1回の呼び出しで複数のファイルを実行する場合は、「-f filename1 -f filename2 ... 」のようにすればよい。「-k」オプションは、指定のファイルを実行したあともFrinkを入力待ち状態にしておくためのもので、「-f」オプションと組み合わせて、カスタムの変数および関数を起動ファイルから読み込んだうえで計算を実行する場合に役立つ。

 では、Frinkによる計算はどのように行われるのだろうか。ここで、ノートPC用バッテリ容量の表示単位がメーカーによってアンペア時とワット時で異なっている場合を想定する。これら2つの単位を揃えるには、次のようにすればよい。なお、Frinkでは「frink>」のようなプロンプトが出ないので、以下では入力行を太字で示す。

6.6 amp hours * 16 volts -> watt hours
105.6

6.6 amp hours * 16 volts
380160.0 m^2 s^-2 kg (energy)
105.6 watt hours
380160.0 m^2 s^-2 kg (energy)

6.6 amp hours * 16 volts -> watts
 Conformance error
   Left side is: 380160.0 m^2 s^-2 kg (energy)
  Right side is: 1 m^2 s^-3 kg (power)
     Suggestion: multiply left side by frequency
              or divide left side by time

 最初の計算では、こちらで単位を指定したので、結果の105.6という値には単位が表示されていない。換算後の単位を明示的に指定した場合でも計算結果に単位を表示させるには、指定する単位を二重引用符で囲めばよい。続く2つの計算では、基本単位のエネルギーで結果が表示されている。Frinkでは、こうした国際単位系(SI)の使用がデフォルトになっているためだ(ちなみに、この単位系の通貨単位は米ドル)。デフォルトの表示単位を変更する方法は、後述する。また、見当違いな換算を試みた最後の行では、その修正方法がFrinkによって提示されているのがわかる。

 Frinkでは、浮動小数点数、有理数、さらには区間というデータ型まで使って、計算を行うことができる。また、通常の電卓にあるような算術演算子だけでなく、単位操作用の特別な演算子も用意されている。たとえば、conforms演算子は2つのオペランドが同じ次元に属する場合に真(true)を返す。また、「square」(sq、2乗)と「cubic」(cu、3乗)というキーワードは想像どおりの意味を持ち、「3 square feet」(3平方フィート)は「3 feet^2」と同じである。

最終更新:2009年01月18日 17:07