
No.3ベストアンサー
- 回答日時:
★最初に
>関数を一切使わず計算式と場合分けのみで計算する方法ありますか?
↑
あります。というか関数で記述することを記述すればよいだけ。
汎用性も考えれば専用の関数か、日付操作ライブラリを自作して使いまわした方が
良いと思いますよ。
>今考えている方法は、地道に、ある基準1970年1月1日をシリアル値で0としそこから、
>今日までの日数を1月は31、2月は28にちなどを考えてを足していき、シリアル値を算出。
>そのシリアル値に+10した値を再び年月日曜日の形に戻す方法しか無いのかと考えています。
↑
私もこの方法しか思い浮かびません。
このときの注意点として『閏年』の判定、扱いをきちんと考えないと正確になりません。
表計算で有名な Excel について興味深い記事を見つけましたので読んで見て下さい。
http://pc.nikkeibp.co.jp/article/NPC/20070530/27 …→『DATEDIF関数の“受難” (第1回)』
↑
3ページ目です。
>10日ではなくて10000日だったらどんな感じになりますか?
↑
加減算する日付を西暦1年1月1日を1としたシリアル値に変換して加算、減算とするしかないかな。
・開始日を Y1/M1/D1 とすると
days = ((Y1 * 365) + (Y1 / 4) - (Y1 / 400 * 3)) + FuncGetDays(Y1,M1,D1);
days += 10000; ←加算
days -= 10000; ←減算
この days のシリアル値を年、月、日に変換します。
※FuncGetDays() 関数は年月日から1月1日の日数を計算する関数です。
※この関数の詳しい内容は下の『参考URL』をどうぞ。回答者No.2です。
※そのたも参考になります。
・以上。
参考URL:http://oshiete1.goo.ne.jp/qa3085731.html
No.2
- 回答日時:
10000日でも処理方法は変わりません。
1)単純に「日」に 10000を足す
2)その「日」の結果は、「月」に対して妥当か?
妥当ならそれが答
3)「日」から、その月の日数を引く
「月」をひとつ増やす
4)その「月」は妥当か?
妥当ならそれが答
5)月を1にして、年をひとつ増やす
7)2に戻る
8)終わり。

No.1
- 回答日時:
曜日が入力されるのであれば、曜日の処理は簡単ですね。
(そもそも、入力値は7種類しかない)
日付は
1)単純に「日」に 10を足す
2)その「日」の結果は、「月」に対して妥当か?
(ここで、「その月は何日あるか」がわかっている*はず*であることに注意)
妥当ならそれが答
3)「日」から、その月の日数を引く
「月」をひとつ増やす
4)その「月」は妥当か? 妥当ならそれが答
5)月を1にして、年をひとつ増やす
6)終わり。
この回答への補足
ありがとうございます。曜日は簡単ですね。
2月25日の場合、年によってうるう年かどうか判定すればよいってことですね。
10日ではなくて10000日だったらどんな感じになりますか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
65536は2の何乗なのでしょうか?
-
VBAの再計算が反映されない件に...
-
構文解析を利用した計算プログ...
-
エクセルで特定のセルのみを任...
-
EXCELなどで「返す」という表現
-
傾いた四角形内の範囲の条件式
-
タクシー料金の問題です
-
モジュラス103の計算とは何でし...
-
C言語の課題で、1年の秒数を計...
-
C# C1FlexGrid SUBTOTAL で計算式
-
【fortran77】データ行数のカウ...
-
整数aを入力し、aの2乗、3乗...
-
C言語の勉強をしていて、for文...
-
y=(x^2 +3x+1)^4を微分の定義を...
-
排他的論理和 BCC(水平パリテ...
-
数値計算の高速化 (cos, sin, exp)
-
パソコン
-
VB6.0で時間の計算方法
-
matlabで計算終了
-
パチンコゲームを作りたいので...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
65536は2の何乗なのでしょうか?
-
VBAの再計算が反映されない件に...
-
EXCELなどで「返す」という表現
-
matlabで計算終了
-
変化させるセルが変化しない
-
排他的論理和 BCC(水平パリテ...
-
モジュラス103の計算とは何でし...
-
傾いた四角形内の範囲の条件式
-
VBAで関数をつくる
-
[急募]Pythonについてです。
-
数値計算の高速化 (cos, sin, exp)
-
切り上げたい
-
C言語についての質問です。 ル...
-
DLL(VC++で作った)で稼動中の...
-
CとFORTRANの計算速度はどちら...
-
CGIの実行権限(ディスク容...
-
趣味で「乗換案内」みたいなソ...
-
エクセルで特定のセルのみを任...
-
functionを含んだプログラムを...
-
単価や利率などを設定画面を設...
おすすめ情報