プログラミング演習Ⅲ(2023)

【課題9-02】LINQの練習2

プロジェクトタイプC#コンソールアプリ※
プロジェクト名Prac_9_02
ソリューション名PET9
ターゲットフレームワーク.NET 6.0 (長期的なサポート)
最上位レベルのステートメントを使用しない使用しない(チェックオン)

※ 「コンソールアプリ(.NET Framework)」ではないので注意せよ!

あらかじめ用意されているDateTime型の配列から, LINQを用いて,以下の条件をすべて同時に満たす要素のみを取得せよ.

  • 条件1) その日付が火曜日の日付であること
  • 条件2) その日付の「日」と「月」の積が100以上であること
注意
  • この設問ではコンソール(黒画面)への表示処理を作る必要はない

プログラムの概形は_のようにすること(必ずこのコードをコピー&ペーストして用いること).

テンプレートコード
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
namespace Prac_9_02
{
    internal class Program
    {
        static void Main(string[] args)
        {
            // 処理対象の配列(変更してはならない)
            DateTime[] importantDays = new[]
            {
                new DateTime(2023,  2, 25), new DateTime(2023,  4, 28),
                new DateTime(2023, 12,  4), new DateTime(2023,  3,  2),
                new DateTime(2023,  4, 25), new DateTime(2023,  6, 20),
                new DateTime(2023, 10,  2), new DateTime(2023,  9,  8),
                new DateTime(2023, 10, 10), new DateTime(2023, 12,  2),
                new DateTime(2023,  2, 22), new DateTime(2023,  9,  8),
                new DateTime(2023, 11, 21), new DateTime(2023, 11, 25),
                new DateTime(2023,  8, 21), new DateTime(2023, 11, 10),
                new DateTime(2023,  6,  6), new DateTime(2023,  6, 15),
                new DateTime(2023,  7, 24), new DateTime(2023,  9,  7),
                new DateTime(2023, 12, 23), new DateTime(2023, 10, 20),
                new DateTime(2023, 12,  5), new DateTime(2023,  1, 31),
                new DateTime(2023,  5, 20),
            };
                        
            var query = /********************************************/
                        /*                                          */
                        /*                  空欄                    */
                        /*   配列 importantDays から LINQ を用いて  */
                        /*   設問に示された条件の日付を絞り込む.   */
                        /*                                          */
                        /********************************************/
                        ;

            // 表示処理(変更してはならない)
            foreach (var d in query) 
            {
                Console.WriteLine($"{d:yyyy-MM-dd}({d.DayOfWeek})");
            }//foreach            

        }// end of Main()
    }// end of class
}// end of namespace

正しく実装できた場合,実行結果は_のようになる.

2023-04-25(Tuesday)
2023-06-20(Tuesday)
2023-10-10(Tuesday)
2023-11-21(Tuesday)
実行結果

ヒント

なし

Last updated on 2023-12-11
Published on 2023-12-11

Powered by Hugo. Theme by TechDoc. Designed by Thingsym.