- ベストアンサー
閏年
2000年は、閏年ですか。高等学校の地学の教師が2000年は、4と400で割れるから閏年だけど2000年は、オリンピックがあったから閏年ではない。と、言ってました。どうなんでしょ~
- 地学
- 回答数4
- ありがとう数5
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
って~か「オリンピックがあったから閏年ではない」って謎だなぁ. むしろ「オリンピックがあったから閏年」の方が (間違ってるけど) 納得はできる. .... しかし, 「カレンダーを見よう」とは思わなかったの?
その他の回答 (3)
- mazeran
- ベストアンサー率42% (221/518)
私の持っている資料を載せます。 >うるう年の決め方 >西暦年数が400で割り切れるならうるう年。 >さもなくば西暦年数が100で割り切れるなら平年。 >さもなくば西暦年数が4で割り切れるならうるう年。 だそうです。 ・・・結構ややこしいもんですね。
お礼
有り難う御座いました。
- trajaa
- ベストアンサー率22% (2662/11921)
>2000年は、オリンピックがあったから閏年ではない。 かなり古い状況の知識で固定化されてしまった模様ですね。 昔は、冬季大会も夏季大会も同一の年に開催されていましたが、どうしても夏季大会にばかり注目があつまり冬季大会が霞んでしまう。 その結果・・・・(お金がゴニョゴニョ・・・・) 色々な大人の事情があって、1994年のリレハンメル大会からは、夏季大会と冬季大会が二年おきに開催されるようになりました。 だから「オリンピックがあったから閏年ではない」というのは成立しない定義です。 また、閏年だからオリンピックを実施するのではありません。 オリンピックの開催周期が四年ごとで、それが(昔は)閏年の年に開催されていたと言うだけ。 閏年の定義は、この辺で確認して。 http://ja.wikipedia.org/wiki/%E9%96%8F%E5%B9%B4
お礼
有り難う御座いました。
- ironironQ
- ベストアンサー率28% (20/70)
閏年は、基本4年に一度ですが、100で割れる年は、閏年ではありません。 その中でも、400で割れる年は、閏年です。 つまり、2000年は100で割れるけれども、400でも割れるので、閏年です。
お礼
有り難う御座いました。
関連するQ&A
- うるう年を求めるプログラム
1900から2100年のうるう年を求めるプログラムが作りたいのですが どうしたらよいでしょうか? forを使って1900から2100までかぞえる。 4で割り切れるものは閏年 しかし100で割り切れるものは閏年でない。 400で割り切れるものは閏年である。 最後の条件の分岐から閏年のみを表示させたいのですがわかりません 。
- ベストアンサー
- C・C++・C#
- 閏年の意味を知らないのは面接で落とされるほど非常識でしょうか?
二月が二十九日あるのは四年に一度。オリンピックがあるのが四年に一度。二つの年が同じ年。それは知っているし、特別な呼び名があったよな、程度のことは覚えていました。ですが、閏年といわれて「なんだっけか?」と思ってしまいました。で、それを正直に口にしたとたん、「そんなことだからもう四年最後だっていうのに面接で合格できないのよ・・・」と愚痴られました。閏年というのは聞いたことありますし、覚えていましたがとっさに二つが結びつかなかったのです。 私は人間が生活したり社会人として生活をするためにはある程度の良識といいますか、他人に迷惑をかけず、法的社会的倫理的なものに反しなければ大丈夫だと思っています。実際、倫理的に問題のある人たちが平気な顔で社会生活を送っています。 閏年を知らない外人だってしっかり働いてるし。
- ベストアンサー
- その他(生活・暮らし)
- 閏年について
Excelで「1900/2/29」と入力すると、閏年でないのに、日付として認知され、標準表示形式では「60」と表示されます。1900年は閏年として認識しているのでしょうか?Visual Basicで西暦と和暦のプログラムを作成(1900年未満)している途中で計算が合わなくなり、この疑問にぶつかりました。回答をよろしくお願いします。
- ベストアンサー
- その他MS Office製品
- VBAで、うるう年の計算
4年に一回うるう年がありますが、そのうち100年に1回はうるう年に当ってもうるう年になりません。またこの100年周期のうち、400年に1回はうるう年にります。 これをVBAで書くとどうなるんでしょうか? 頭が混乱してきました。
- ベストアンサー
- オフィス系ソフト
- 閏年のプログラム
C言語(閏年)の質問です。 任意の範囲の年から閏年の表示とその数をカウントして次の実行結果のように表示するプログラムの作成で途中まではわかって修正・追加する箇所があったら一緒に教えてください。(ここでは2つの年をmain関数内で入力し、その範囲の西暦を引数とする関数checkYearを使用するものとする。int型の関数checkYearは、引数に西暦をとり、その西暦が閏年であれば、1を返し、閏年でない場合は0を返す。) なお、閏年の判定方法は以下のとおりである。 条件1 西暦年が4で割り切れる年は閏年である 条件2 条件1を満たしていても、西暦年が100で割り切れるときは閏年でない 条件3 条件2を満たしていても、西暦年が400で割り切れるならば閏年である 実行例1 西暦を入力:2000 西暦を入力:2009 2000年 2004年 2008年 閏年は3回あります。 実行例2 西暦を入力:2100 西暦を入力:2000 2000年 2004年 2008年 2012年 2016年 2020年 (省略) 2096年 閏年は25回あります。 実行例3 西暦を入力:2090 西暦を入力:2110 2092年 2096年 2104年 2108年 閏年は4回あります。 #include <iostream> bool checkYear(int year); int main() { int year; int year2; printf("西暦を入力:"); scanf("%d",year); printf("西暦を入力:"); scanf("%d",year2); int count = 0; for (int i = year; i < year2; i++) { if (checkYear(i)) { printf("%d年\n"); count++; } } printf("閏年は%d回です。\n"); return 0; } bool checkYear(int year) { return (((year % 4) == 0) && ((year % 100) != 0)) || ((year % 400) == 0); }
- ベストアンサー
- C・C++・C#
お礼
有り難う御座いました。