[C#] 내가 태어난지 얼마나 됐을까? 생일맞이 일 수, 개월 수 구하기 (내 나이가 아기인지 판별법 ^^)

2024. 1. 17. 20:32·Language/C#
반응형

원래도 집중력이 좋지않던 나는 백준을 풀다가 곧 내 생일을 맞아 내가 태어난지 얼마나 됐는지 궁금해졌다.

그래서 내가 태어난 일 수와 개월 수를 구현해봤다.

 

[ 코드 ]

using System.Globalization;

Console.Write("이름: ");
string name = Console.ReadLine();

Console.Write("생일 (예시 2000-01-01): ");
string birth = Console.ReadLine();

if (DateTime.TryParseExact(birth, "yyyy-MM-dd", null, DateTimeStyles.None, out DateTime birthDate))
{
    TimeSpan age = DateTime.Now - birthDate;
    int totalDays = (int)age.TotalDays;

    int years = totalDays / 365;
    int months = (int)Math.Floor((double)totalDays / 30.5); // 달이 대부분 30일에서 31일이고 대략 중간쯤 값인 30.5로 나눠준다.

    Console.WriteLine($"-> {name}님은 현재까지 {totalDays}일을 살고있고,");
    Console.WriteLine($"   약 {months}개월을 살고 있으며,");
    Console.WriteLine($"   {years}살 입니다.");

    string dayOfWeek = birthDate.ToString("dddd");
    Console.WriteLine($"-> {name}님이 태어난 날의 요일은 {dayOfWeek} 입니다.");

    if (years < 1)
    {
        Console.WriteLine("   아직 세포상태 입니다.");
    }
    else if (years < 40) 
    {
        Console.WriteLine("   어제 태어났나요?");
    }
    else
    {
        Console.WriteLine("   쪼꼼 어른이네요! 건강하세요!");
    }
}
else
{
    Console.Write("올바른 날짜 형식으로 입력해주세요.");
}

 

[ 추가 ]

 

> DataTime은 날짜와 시간을 나타내는 구조체

https://learn.microsoft.com/ko-kr/dotnet/api/system.datetime?view=net-8.0

 

DateTime 구조체 (System)

일반적으로 날짜와 시간으로 표현된 시간의 한 순간을 나타냅니다.

learn.microsoft.com

 

> TimeSpan은 일(day), 시(hour), 분(minute), 초(second), 밀리초(millisecond) 등의 시간 단위를 포함하는 구조체

https://learn.microsoft.com/ko-kr/dotnet/api/system.timespan?view=net-8.0

 

TimeSpan 구조체 (System)

시간 간격을 나타냅니다.

learn.microsoft.com

 

[ 실행화면 ]

 

양심 어디갔는지 묻지도 따지지도 말기.

그러니 조금 나이 많다고 무서워하지말고 모두 하고싶은일 도전하기로 합시다....... !!!!!!!!!!!!!!!!!!!!!!!!

반응형
저작자표시 (새창열림)

'Language > C#' 카테고리의 다른 글

[C#] 컴공이 생일 축하하는 방법 (ps. 콘솔 케이크)  (2) 2024.01.19
[C#] 백준 5597번 과제 안 내신 분..? (차집합 Except 이용하기, 1로 만들어서 풀기)  (0) 2024.01.18
[C#] 백준 2438번, 2439번 별찍기  (0) 2024.01.16
[C#] 백준 15552번 빠른 A+B  (0) 2024.01.14
[C#] 백준 25304번 영수증  (0) 2024.01.14
'Language/C#' 카테고리의 다른 글
  • [C#] 컴공이 생일 축하하는 방법 (ps. 콘솔 케이크)
  • [C#] 백준 5597번 과제 안 내신 분..? (차집합 Except 이용하기, 1로 만들어서 풀기)
  • [C#] 백준 2438번, 2439번 별찍기
  • [C#] 백준 15552번 빠른 A+B
석영
석영
관심 분야는 AR, VR, 게임이고 유니티 공부 중 입니다. (정보처리기사,컴퓨터그래픽스운용기능사 취득)
반응형
석영
유석영의 개발공부
석영
전체
오늘
어제
  • 분류 전체보기
    • Unity
      • Project
      • Tip
      • Assets
    • Record
      • TIL
      • Game
    • Language
      • C#
      • Node.js
      • HTML, JS
    • Study
      • Linear Algebra

인기 글

최근 글

hELLO· Designed By정상우.v4.5.2
석영
[C#] 내가 태어난지 얼마나 됐을까? 생일맞이 일 수, 개월 수 구하기 (내 나이가 아기인지 판별법 ^^)

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.