티스토리 뷰

반응형

여러분의 컴퓨터는 올해가 몇 년인지 알고 있다. 즉, 프로그램에 연도 정보를 넣을 수 있다는 얘기다. 여러분은 단지 사용하는 프로그래밍 언어에서 어떻게 날짜 정보를 얻을 수 있는지만 조사하면 된다. 정년까지 몇 년 남았는지, 퇴직하는 해는 몇 년이 되는지를 계산하는 프로그램을 작성하라. 이 프로그램은 현재 나이와 퇴직하고자 하는 나이를 입력 받아 다음의 출력 예와 같이 나타낸다.

#출력 예 What is your current age? 25

At what age would you like to retire? 65

You have 40 years left until you can retire.

It's 2015, so you can retire in 2055.

#제약 조건

  • (다시 언급하지만) 수학 계산에 사용하기 전에 입력 값을 꼭 숫자로 변환시킬 것
  • 올해 년도를 프로그램에 직접 넣지 말 것. 대신 프로그래밍 언어를 통해 시스템 날짜를 구해서 사용할 것

#도전 과제

  • 이미 퇴직했을 나이를 입력하면 음수 값이 출력되는 상황이 발생하는데, 이 상황을 해결하도록 프로그램을 수정해보자.




My code


static void Main(string[] args)
{
    Console.Write("What is your current age? ");
    int nage = int.Parse(Console.ReadLine());
 
    Console.Write("At what age would you like to retire? ");
    int rage = int.Parse(Console.ReadLine()) - nage;
 
    int nyear = DateTime.Now.Year; // 올해 년도
    int ryear = nyear + rage;
 
    if (rage > 0)
    {
        Console.WriteLine("You have {0} years left until you can retire.", rage);
        Console.WriteLine("It's {0}, so you can retire in {1}.", nyear, ryear);
    }
    else  
    {   // 도전과제, 음수가 나오면 이미 퇴직하였다고 출력되게 함.
        Console.WriteLine("You have been retired for {0} years.", rage.ToString().Replace("-",""));
        Console.WriteLine("It's {0}, You already retired. Thank you!", nyear);
    }
 
    Console.ReadLine();
}
cs





Result


 양수일 때,



 음수일 때,


반응형
댓글
댓글쓰기 폼