반응형
뇌를자극하는 C#.md

뇌를 자극하는 C# 5.0 프로그래밍 Chapter13 연습문제


1. 출력 결과가 다음과 같이 나오도록 아래의 코드에 익명 메소드를 추가하여 완성하세요.

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
using System;
 
namespace Ex13_1
{
    delegate int MyDelegate(int a, int b);
 
    class MainApp
    {
        static void Main(string[] args)
        {
            MyDelegate Callback;
 
            /* 익명 메소드 선언 1 */
            Callback = delegate (int a, int b)
            {
                return a + b;
            };
 
            Console.WriteLine(Callback(34));
 
            /* 익명 메소드 선언 2 */
            Callback = delegate (int a, int b)
            {
                return a - b;
            };
 
            Console.WriteLine(Callback(75));
        }
    }
}
cs


출력결과






2. 출력 결과가 다음과 같이 나오도록 다음 코드에 이벤트 처리기를 추가하세요.

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
using System;
 
namespace Ex13_2
{
    delegate void MyDelegate(int a);
 
    class Market
    {
        public event MyDelegate CustomerEvent;
 
        public void BuySomething(int CustomerNo)
        {
            if (CustomerNo == 30)
                CustomerEvent(CustomerNo);
        }
    }
 
    class MainApp
    {
        /* 이벤트 핸들러 작성 */
        static public void PrintMessage(int CustomerNo)
        {
            Console.WriteLine("축하합니다! {0}번째 고객 이벤트에 당첨되셨습니다.", CustomerNo);
        }
 
        static void Main(string[] args)
        {
            Market market = new Market();
            market.CustomerEvent += new MyDelegate(PrintMessage);
 
            for (int customerNo = 0; customerNo < 100; customerNo += 10)
                market.BuySomething(customerNo);
        }
    }
}
 
cs


출력결과


반응형

+ Recent posts