こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

単位換算係数の換算は可能でしょうか?

あるシステム(A)から、別のシステム(B)に
単位換算係数のインターフェースを行いたいと考えています。

たとえば、
システムAでは 単位a:単位b
システムBでは 単位b:単位c の比率を保持する状態を作り、
システムAからBへ何らかの数量のインターフェースを行ったとき、
単位a→単位cの換算を簡易に行いたいのです。

各システムのテーブル構造は以下のようになっています。

--------------------------------------------
<<システムA 品目単位換算マスタ>> ●=key
●品目コード
●代替単位
 分子
 分母
 システムA基本数量単位
--------------------------------------------

--------------------------------------------
<<システムB 品目単位換算マスタ>> ●=key
●品目コード
●代替単位
 分子
 分母
 システムB基本数量単位
--------------------------------------------

システムAでは基本数量単位に対して考えられうるすべての
換算分母、分子を持っています。
システムBはそれを利用して、自システムの数量単位を正とする
換算分母、分子を持ちたいと考えています。
このようなインターフェースは可能でしょうか?
コンピュータで比率を計算しようとすると小数が出てきますので、
分母、分子といった項目どうやって格納してよいか検討がつきません。。
言語はC#です。

いくら考えてもわからないので、お聞きすることにいたしました。
どなたかお知恵をお貸し願えませんか?
よろしくお願いいたします。

投稿日時 - 2007-04-06 11:34:40

QNo.2898520

すぐに回答ほしいです

質問者が選んだベストアンサー

変換係数は全て分子・分母とも整数の分数で保持しているということですか。
システムA基本数量単位からシステムB基本数量単位への変換係数(分数)はあるんですよね。

それだと分数(有理数)計算用のライブラリを作れば済むことでは? 分数の掛け算なんて分子同士、分母同士で掛ければ良いだけだし、割り算も分子分母を入れ替えるだけで同様だしね。
後は約分だけ作れば質問の用途には十分でしょう。約分は分子分母を公約数で割るだけです。公約数は互除法で求まります。
# 通分も実装すれば四則演算が可能です

投稿日時 - 2007-04-06 14:29:37

お礼

ご回答ありがとうございました。

ライブラリを作れば確かに済むのですが、これ以上テーブルを増やしたくない
(らしい)のです。。。
もう少し検討してみます。ありがとうございました。

投稿日時 - 2007-04-06 19:06:15

ANo.1

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

-広告-
-広告-

回答(1)

-広告-
-広告-

あなたにオススメの質問

-広告-
-広告-