A 回答 (6件)
- 最新から表示
- 回答順に表示
No.6
- 回答日時:
for文 や if文 は必要ないプログラムです。
それらを用いてコーディングしたい場合は、他の方が提案されているアルゴリズムでコーディングされた方がいいと思います。ちなみに基準日と加算日数を自由に変更できるようにする場合は、次になると思います。
import java.util.Calendar;
public class ReturnDate {
/**
* @param args
*/
public static void main(String[] args) {
String strDateOfStart =
getStringFromSystemIn("Enter the Date of Start. Format(9999/99/99) > ");
String strNumberOfDateForAdd =
getStringFromSystemIn("Enter the Number of Date for add. Format(99) > ");
Calendar objStartDate = Calendar.getInstance() ;
objStartDate.set(
(new Integer(strDateOfStart.substring(0, 4))).intValue(),
(new Integer(strDateOfStart.substring(5, 7))).intValue(),
(new Integer(strDateOfStart.substring(8, 10))).intValue());
objStartDate.add(Calendar.DATE,-1);
objStartDate.add(Calendar.DATE,
(new Integer(strNumberOfDateForAdd.trim())).intValue());
System.out.println(
objStartDate.get(Calendar.YEAR)+"年"+
objStartDate.get(Calendar.MONTH)+"月"+
objStartDate.get(Calendar.DATE)+"日");
}
private static String getStringFromSystemIn(String strMassage){
System.out.print(strMassage);
int intLength = 0;
byte bytBuffer[] = new byte[256];
try{
intLength = System.in.read(bytBuffer);
}catch(Exception ex){
System.out.println(ex);
}
return new String(bytBuffer,0,intLength);
}
}
英語の部分が間違っていたらすみません。なんとなく書いたので正しいかどうかはご自分で確かめてください。
No.5
- 回答日時:
こういう計算には公式があります。
3月1日を起点として14月まである設定とすると
3月~13月までは31日、30日と同じ繰り返しで進みます。
これを逆に利用すれば比較的簡単に日数から月日を引き出すことができます。
参考URL:http://cl.is.kyushu-u.ac.jp/Literacy/PP/H14/adp/ …
No.4
- 回答日時:
den256 と申します。
私なりの答えを考えてみました。
import java.util.Calendar;
public class ReturnDate {
/**
* @param args
*/
public static void main(String[] args) {
Calendar objStartDate = Calendar.getInstance() ;
objStartDate.set(2007,1,1);
objStartDate.add(Calendar.DATE, 72);
System.out.println(
objStartDate.get(Calendar.YEAR)+"年"+
objStartDate.get(Calendar.MONTH)+"月"+
objStartDate.get(Calendar.DATE)+"日");
}
}
結果は、
2007年3月14日
です。
これだとうるう年も対応してくれるようです。
それと計算の設定日の翌日から 72 日目を返すみたいですね。
それに対応する場合は、
objStartDate.set(2007,1,1);
objStartDate.add(Calendar.DATE, -1);
objStartDate.add(Calendar.DATE, 72);
でいいかもしれないです。
Java の Calendar クラスを使うよりも自分でアルゴリズムを考えたほうが勉強になるかも知れないですね。
No.3
- 回答日時:
1.入力した値を取得するところがわからない
2.入力した値を数値に変換するところがわからない
3.java.util.GregorianCalendarって何?
4.APIって何?
5.ifって何?
6.javaって何?
7.プログラムって何?
8.そもそも日本語がわからない。
1~8のどれでしょうか。
6以降だと「詰み」ですが…
No.1
- 回答日時:
わかるところまで作って課題を出す。
できた友人に見せてもらって課題を出す。
先生(課題を出した人)に聞く。
ここで聞くなら、「何がどうわからない。」「こうしたけどこうなった。」などを書かないとダメですよ。
ひょっとしたら
java.util.GregorianCalendarクラスのAPI
を熟読すると幸せになれるかもしれません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Java Java 年数計算 3 2023/01/28 10:52
- Excel(エクセル) EXCELピボットテーブル関数について 2 2023/04/10 20:35
- Java java 飾子を付けること(public static・・・) ・コンソールへの出力処理はmainメ 2 2022/06/16 19:34
- Java Java、配列の問題を教えて欲しいです。 ・日、月、火、水、木、金、土 ・各曜日の英語 を2次元配列 2 2023/07/10 19:14
- C言語・C++・C# C言語 3 2022/10/04 15:07
- Excel(エクセル) 最後の12個の修正平均を算出したい。 3 2022/04/30 18:24
- Excel(エクセル) エクセルシートの合計の変動 5 2022/04/05 15:56
- ふるさと納税 ふるさと納税の限度額計算 3 2022/12/16 11:01
- Excel(エクセル) エクセル/列追加時、合計行の計算式 7 2023/03/15 11:14
- その他(Microsoft Office) 従業員増減対応で当番種類の増減対応な当番表 21 2022/07/19 07:30
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
プログラミングの問題です。大...
-
変数を動的に利用するには?
-
中カッコ{}だけの記述について
-
【初心者です】javaで平均値を...
-
NoSuchMethodErrorが解決できま...
-
StringクラスのcompareToメソッド
-
初心者なので教えてほしいです。
-
インタフェイス実装と抽象クラ...
-
javaのプログラミングで作るRPG...
-
JSP/Servletのパラメータの受け...
-
Javaでlog4jを使ってログ出力を...
-
クラスの作成 オブジェクトの...
-
【java】同ディレクトリ別ファ...
-
コンストラクタの引数の中のnew?
-
DESを使用した暗号化/復号化処...
-
リフレクション 可変長引数メ...
-
javaのprivate finalメンバにつ...
-
(1)を表示するには
-
Javaの問題について
-
String s = ?(97);// get 'a'
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
変数を動的に利用するには?
-
中カッコ{}だけの記述について
-
プログラミングの問題です。大...
-
Socketの接続のタイムアウトを...
-
System.exit()の値を取得したい
-
コンストラクタの引数の中のnew?
-
インタフェイス実装と抽象クラ...
-
JSP/Servletのパラメータの受け...
-
NoSuchMethodErrorが解決できま...
-
Javaでlog4jを使ってログ出力を...
-
ArrayList でスタックを
-
コマンドライン引数の*(アフ...
-
randomで
-
javaで特定の文字列から特定の...
-
Javaで日本語の出力が文字化けする
-
【初心者です】javaで平均値を...
-
Java プログラム public class ...
-
javaのプログラミングで作るRPG...
-
クラスを使った電卓のプログラム
-
じゃんけん プログラミング
おすすめ情報