lcl-saito / intern-training

0 stars 0 forks source link

年と月を引数から日付を表示する #2

Open lcl-yamashita opened 6 years ago

lcl-yamashita commented 6 years ago

問題

年と月を引数として取り、その月の日付を全て画面に表示するメソッドを作成してください。

以下の条件を満たすこと。

手順

エビデンス

lcl-yamashita commented 6 years ago

@lcl-saito 着手する際は一番初めに手順の項目を埋めてから、その手順で問題ないかレビューを受けてください! 又、着手する際はPull Requestを作成してリンクを双方に貼ってください。

lcl-saito commented 6 years ago

@lcl-yamashita 承知しました。 まずは手順から進めていきたいと思います。

lcl-saito commented 6 years ago

@lcl-yamashita

入力 引数は個別に入力

こちらは、年と月を個別に入力するという理解で良いでしょうか?

lcl-yamashita commented 6 years ago

@lcl-saito はい

lcl-saito commented 6 years ago

手順

注意 通常年 ・31日まであるのは1、3、5、7、8、10、12月。  残りの2、4、6、9、11月は2月を除き全て30日まで。 ・うるう年は2月が1日増えるので、注意すること

1.  条件式で通常年と閏年で処理を分けるように記述する。 うるう年を判定するには、 4で割り切れ、かつ100で割れなければ「閏年」 4で割り切れ、かつ400で割れれば「閏年」 1と2に該当しなければ、「平年(not閏年)」

通常年 条件分岐で31日までの月と30日までの月というように2通り分岐させて、月を表示させる。 閏年の時は、 3パターン条件分岐を作る。 2パターンは上記と同じだが、 2月のみ29日まで表示されるようにする。 それ以外の月は通常時と同じ

lcl-saito commented 6 years ago

@lcl-yamashita @lcl-kawabe 大まかですが、手順を考えましたので、ご確認をお願いします。

手順 1 .通常年の月日を表示するメソッドと閏年の月日を表示するメソッドを用意 (20XX年XX月XX日の表示フォーマットにする)&&(改行する) 2.入力された引数を通常年か閏年か判断する条件式を記述し、条件によって、呼び出すメソッドを変更する。

  1. 呼び出す月の引数を用意し、引数で呼び出す月を決める。
lcl-yamashita commented 6 years ago

@lcl-saito

内容に触れる前に書き方について、以下のことを意識してください

lcl-saito commented 6 years ago

@lcl-yamashita 承知しました。 上記を踏まえ、再度手順を修正します。

lcl-saito commented 6 years ago

@lcl-yamashita 手順を再考しましたので、ご確認をお願いします。

1 一つメソッドを定義する。引数に(year,month)と二つ設定する。 2 if文で閏年と通常年の場合の2パターンの処理を作る。 3 閏年の条件は、引数(year)が4で割り切れ、かつ100で割れなければ閏年、もしくは引数(year)が4で割り切れ、かつ400で割れれば閏年とする。それ以外は通常年にする。 4 ちゃんと条件分岐できているか確認の為に、各条件式にputs ~ と処理を書き、引数に数字を入れて処理を実行してみる。正常に表示されるなら、次の手順へ   5 閏年の処理を書く。 6 if文を用いて、1.3.5.7.8.10.12月 == 引数(month)なら31日まで表示する。 7 出力は puts year年month月~日として、1日から31日まで表示する。 8 4.6.9.11月 == 引数(month) なら30日まで表示する。 9 出力は puts year年month月~日として、1日から30日まで表示する。 10 2月 == 引数(month)なら、29日まで表示するように処理を書く。 11 出力は puts year年month月~日として、1日から29日まで表示する。 12 yearに閏年を書き、monthに上記各パターンの月を書き、正常に表示されるか確認する。 13 通常年の処理も上記同様に書く。 14 if文を用いて、1.3.5.7.8.10.12月 == 引数(month) なら31日まで表示する。 15 出力は puts year年month月~日として、1日から31日まで表示する。 16 4.6.9.11月 == 引数(month) なら30日まで表示する。 17 出力は puts year年month月~日として、1日から30日まで表示する。 18 2月 == 引数(month) なら、28日まで表示するように処理を書く。 19 通常年の動作確認も行う。yearに通常年、monthに上記3パターンの月を入れ、それぞれ正常に表示される事を確認したら完成。

lcl-yamashita commented 6 years ago

@lcl-saito ありがとうございます。手順は大丈夫そうなのでブランチを切って実装を始めてください! 手順の準備が万全であれば、その通りに進めることでスムーズに作業が終わると思います。

ロジックの正しさについては判断していませんので、実装しながら確認していってください。 もし、手順通りではいかない事象が発生した際は都度Pull Requestにコメントを残してください。

lcl-saito commented 6 years ago

@lcl-yamashita レビューありがとうございます。 ブランチを切るという言葉が分からなかったので、調べた所、現行バージョンから枝分かれをさせるという意味である事を確認しました。 しかし、もう一点分からない事があり、それはどのプロジェクトからブランチを切れば良いでしょうか? 申し訳ありませんが、ご回答していただけると幸いです。

lcl-yamashita commented 6 years ago

@lcl-saito

まず、このリポジトリにはソースがまだないのでそこからですね。 ローカルにフォルダを作って、このリポジトリに追加してみてください。 フォルダ名はリポジトリ名と同じでいいです。

参考: GitHubリポジトリをMacのターミナルから新規ファイル追加する方法 - Qiita https://qiita.com/14ta98/items/9b7c9c0e12cf39caa286

lcl-yamashita commented 6 years ago

上の作業が終わり、gitの準備ができたら現在のブランチを確認してみてください。

lcl-saito commented 6 years ago

@lcl-yamashita image ここまで進めたのですが、5番目の手順のgithubで作ったリポジトリというのが、分かりません。 ローカルでフォルダを作成し、その下にファイルを作成して、ローカルのgitリポジトリにコミットしたのですが。。。

lcl-yamashita commented 6 years ago

@lcl-saito

gitとgithubは全くの別物です。 簡単に言うとgithubはgitをweb上で管理しやすくするためのサービスです。

ローカルでフォルダを作成し、その下にファイルを作成して、ローカルのgitリポジトリにコミットしたのですが。。。

gitでコミットまでできたということは、gitの環境は作れたようですね。 あとはそれをgithubにアップロードします。

それをやっているのが$ git remote ~~で、この参考ページでわからなかったらもっとわかりやすい参考ページがないか調べてみてください!

検索キーワードとしては、ここまでででてきた言葉を使って以下の感じになりますね。

lcl-yamashita commented 6 years ago

あとは参考ページで上げられている参考ページを見るのもありですね

lcl-saito commented 6 years ago

@lcl-yamashita 記述完了しました。 ご確認お願いします。

プルリクエスト https://github.com/lcl-saito/intern-training/pull/4/files