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

【課題1-05】リストの練習2

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

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

_のテンプレートコードでは,あらかじめDateTime型のリスト(List<DateTime>型の変数)が宣言されている. このリストに_に示す要素を,この表の順序で追加せよ(これ以外の要素を追加してはならない).

リストに追加する要素
要素
2022年 8月10日
2023年10月24日
1999年12月 8日
2056年 4月 1日
注意
  • この設問ではコンソール(黒画面)への表示処理を作る必要はない.

プログラムの概形は_のようにすること(必ず以下をコピーしProgram.cs全体を上書きすること).

テンプレートコード
 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
namespace Prac_1_05
{
    internal class Program
    {
        static void Main(string[] args)
        {
            // DateTime型のリスト
            List<DateTime> quux = new List<DateTime>();

            /**************************************************/
            /*                                                */
            /*                     空欄                       */
            /*                                                */
            /*        リスト quux に設問で指定されている     */
            /*        要素を追加する(複数行の処理でよい)      */
            /*                                                */
            /**************************************************/

            // 表示処理(ここは決して変更してはならない)
            for (int i = 0; i < quux.Count; ++i) 
            {
                Console.WriteLine($"{i} .... {quux[i]:yyyy-MM-dd}");                
            }//for

            #region チェック (ここは決して変更しないこと)
            if (!(quux != null && quux.GetType() == typeof(List<DateTime>) && quux.Count == 4))
                throw new Exception($"リスト {nameof(quux)} の型や要素数が設問の前提と異なる.");
            if (quux[0].Ticks != 637956864000000000) throw new Exception($"リスト quux の 0番目の要素の値が設問に指定されているものと異なる.");
            if (quux[1].Ticks != 638337024000000000) throw new Exception($"リスト quux の 1番目の要素の値が設問に指定されているものと異なる.");
            if (quux[2].Ticks != 630802080000000000) throw new Exception($"リスト quux の 2番目の要素の値が設問に指定されているものと異なる.");
            if (quux[3].Ticks != 648573696000000000) throw new Exception($"リスト quux の 3番目の要素の値が設問に指定されているものと異なる.");
            #endregion

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

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

0 .... 2022-08-10
1 .... 2023-10-24
2 .... 1999-12-08
3 .... 2056-04-01
実行結果

ヒント

  • リストの使用方法については以下を参照せよ.
    • プログラミング演習Ⅰ(2022) 第12回講義資料
    • 教科書「なるほどなっとくC#入門」,「12-1 Listクラス」(P.332~)
  • DateTime型の初期化(≒値の記述方法)については,データ構造とアルゴリズム(2023)第02回を参照せよ.
Last updated on 2023-10-16
Published on 2023-10-16

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