投資の現在価値、または将来/支払い、期間数、利率、B / C分析、現在価値分析、債券などを見つけるなど、エンジニアリング経済の問題を解決するプログラムをc#で作成しました.
私が今抱えている問題は、Microsoft Word ファイルで行った操作を保存し、Microsoft Word の数式エディターで適切にフォーマットされた数式を持ちたいということです。
現在、このような方法で情報をテキスト ファイルに保存しているだけです。
public async void LogFV(decimal i, decimal n, decimal p, decimal pmt, decimal res)
{
using (var writer = new StreamWriter(FileName, true))
{
var sb = new StringBuilder();
sb.AppendLine("Given Data: ");
sb.AppendLine(String.Format("i = {0:P}", i));
sb.AppendLine(String.Format("n = {0}", n));
sb.AppendLine(String.Format("A = {0:C}", pmt));
sb.AppendLine(String.Format("P = {0:C}", p));
sb.AppendLine("Resolution: ");
sb.AppendLine(String.Format("F = {0} * (F/P, {1:P}, {2}) + {3} * (F/A, {1:P}, {2})", p, i, n, pmt));
sb.AppendLine(String.Format("F = {0:C}", res));
await writer.WriteLineAsync(sb.ToString());
}
}
車輪の再発明はしたくありません。これは宿題ではありません。今は、オンラインの LaTeX 数式エディターを使用することを考えていましたが、Microsoft Word のエディターの方が好きです。
私が聞きたい設計パターンの質問は、Logger をどのように実装すればよいかということです。数式の実装と混同したくないので、特定の数式 (FV、PV など) に委任し、パラメーターを使用してログ タスクを実行する Logger クラスを作成することを考えました。しかし、これを行うにはもっと良い方法があるはずだと思います。