タグ

2008年1月18日のブックマーク (3件)

  • The page 31.(論文−万年カレンダーを作る・上)

    はじめに もともとは、新暦(グレゴリオ暦)・旧暦(和暦)・ユリウス暦(ロシア暦)・干支・曜日の変換表を作ろうといろんな文献からこつこつと対応関係を集めていたのだが、ある程度データが集まり始めると生来の凝り性から完全なものを作り上げたくなってきた。しかしデータの元ネタをネット上に頼っているとどうしても抜けが生じてしまう。抜けを埋めるためには計算で補完する必要がある。はじめのうちは手計算だったのだが、やがてはパラメーターを入力として変換するプログラムとなり、ついにはデータファイルを入力に一括して変換するプログラムにまで成長した。せっかくなので、ある程度たまったプログラムを解説かたがた公開してみることにする。 わかるかぎりのバグは潰したはずだが、プログラムの常で絶対にバグがないとは断定しかねる。もしこのプログラムを使用したことでなんらかの問題が生じてもその責には応じかねるのであらかじめご了承願い

  • グレゴリオ暦/ユリウス暦 ⇔ ユリウス日 (または一般の通算日数) 変換アルゴリズム

    ●お知らせ グレゴリオ暦/ユリウス暦計算用C言語のソースコード・ ライブラリ Calendrier を販売しています. (\1,000 (個人用ライセンス) ほか) Calendrier リファレンス (Ver.1.0) 公開しました. このページの主な更新は Blog でお知らせします. このページでは, グレゴリオ暦またはユリウス暦の日付と,ユリウス日などの通算日数 (通日) を相互変換するアルゴリズムについて説明する. これらは1989年頃に自分で考えたアルゴリズムを再度整理したものである. 一応「ユリウス日」と書いてはいるが,これは通算日数の代表として挙げているだけであり, 基準日注1 (通算日数の第0日とする日付,epoch) は自由に選択できるので,ユリウス日 (Julian Day,JD) や 修正ユリウス日 (Modified JD, MJD) 以外にもさまざまな通算日数を

  • カレンダープログラム、曜日の出力について。 - OKWAVE

    西暦、月、日(1900年1月1日以降対象)を入力して、曜日を求めるプログラムを考えています。 過去の質問なども参考にしたんですが、プログラムがうまく動かず困っています。 プログラム中コメントの日数を変える辺りに不備があるかと思い色々試しましたが、曜日がずれてしまいますし開始1900年1月1日も月曜なのに水曜と出力されます。 forやifの条件の記述がおかしいのでしょうか? なにか根的な所が欠如しているのでしょうか、回答をよろしくお願いします。 始めのgetsの所はあえてです。 #include<stdio.h> #include<stdlib.h> int main(void) { char ss[9],cop1[5],cop2[3],cop3[3]; int year,manth,day,aa,cc,i,f; gets(ss); ss[8] = 0; cop1[4] = 0; cop2

    カレンダープログラム、曜日の出力について。 - OKWAVE