を予測する私は、下記の式を使用してC#で潮を予測しようとしています:タイムスパンArithematicsは潮
プログラムがすでにC#のにそれを変換するときしかし、私はいくつかの問題に遭遇しています、Excelで行われていました。
これはExcelの式である:
=PI()*((C18)/(C19)+1)
セルC18及びC19はちょうど私がトラブルAを見つけることを有しています2つの日付のセルC#の各
の減算を含みます
Aを見つけるのに2つの問題があります。
問題1:私が(t - t1)/(t2 - t1)
を実行すると、C#の答えは0ですが、答えは1です。
問題2:式の最後に+1。どのように(彼らはdatetime値としてそれを解析多分ので、Excelでこの作品、?)のtimeSpanに番号を追加する
ここに私のコードは次のとおりです。
DateTime t = new DateTime(2016, 6, 21, 13, 41, 00);
DateTime t1 = new DateTime(2016, 6, 21, 7, 13, 00);
DateTime t2 = new DateTime(2016, 6, 21, 13, 57, 00);
double h1 = 1.421;
double h2 = 2.337;
double h2_minus_h1 = h2 - h1;
TimeSpan t_minus_t1 = TimeSpan.FromTicks(t.Subtract(t1).Ticks);
TimeSpan t2_minus_t1 = TimeSpan.FromTicks(t2.Subtract(t1).Ticks);
TimeSpan MainCalculationForA = TimeSpan.FromTicks((t.Subtract(t1).Ticks)/(t2.Subtract(t1).Ticks));
MessageBox.Show(MainCalculationForA.ToString());
ための答え(t - t1)/(t2 - t1)
である、これは次のとおりです。00:00:00
、Excelでそれだけで1
注意されながら:式が tide prediction pdf
注:(t - t1)
と(t2 - t1)
は、両方ともC#とExcelの両方でまったく同じ回答を持っています。だから分裂の答えの違いは?
問題2、Addメソッドを使用してTimeSpanに追加できます。あなたが望む期間の新しいタイムパンを作成して、この方法で追加することができます。 –
問題1、私はあなたが整数であるティックを分割しているので、整数で分数結果を得ることができないので、0を得るだろうと思います。 –
ありがとう、問題1はニヨコの謝罪から解決されました。今私は問題2への解決策が必要です –