Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- GetX #CustomScrollView #Flutter
- 플레이스토어 앱등록
- 복권번호예측기 #Flutter #adMob #광고배너 #리워드형광고
- 유니티게임 #상점만들기 #뽑기구현 #케이디리듬게임
- 앱번들
- AAB
- 초성게임앱 #플러터앱 #플러터카운트다운
- Flutter #플러터 #모바일앱만들기 #GetX
- flutter #android #androidstudio
- 복권번호예측 #Flutter #플러터 #Provider
- 플러터 #Flutter #파이어베이스 #firebase #firestore #파이어스토어
- Flutter #플러터 #프로젝트 #파이어베이스 #파이어스토어 #Firebase #FireStore
Archives
- Today
- Total
이코노딩
Dart: 년도를 입력받아 '윤년' 판정 프로그램 본문
Dart 공부를 시작하며, 처음으로 받은 문제이다.
Q. 년도를 입력 받아 '윤년'인지 아닌지를 판정하는 프로그램을 만들어라
▶윤년이란?
윤년(閏年, leap year)은 과년(夥年)이라고도 하며, 역법인 태음력이나 태양력에서, 자연의 흐름에 대해서 생길 수 있는 오차를 보정하기 위해 삽입하는 날이나 주, 달이 들어가는 해를 말한다. 삽입하는 달을 정하는 방법을 치윤법(置閏法)이라고 한다. 출처 - https://namu.wiki/w/%EC%9C%A4%EB%85%84 |
이라고 하는데 코딩에 필요한 부분은 규칙을 알아야한다.
윤년 추가 규칙은 다음과 같다.
그레고리력에는 다음과 같은 예외 규칙이 있다.
|
#1 Code
import 'dart:io';
void main() {
///년도를 입력받기
print("년도:");
int? n = int.parse(stdin.readLineSync()!);
///그레고리력조건을 추가한 조건식
if(n%4 == 0 && n%100 == 0 && n%400 != 0){
print("$n년은 윤년입니다.");
}
else{
print("$n년은 윤년이 아닙니다");
}
}
#실행결과
윤년인 2012년도와 2008년까지 '윤년'이 아니라고 출력이 된다.
조건식 문제인 것 같아 좀 더 조건을 생각해보기로 하였다.
#2 Code
import 'dart:io';
void main() {
///년도를 입력받기
print("년도:");
int? n = int.parse(stdin.readLineSync()!);
///그레고리력조건을 추가한 조건식
if (n % 4 == 0 || n % 100 == 0 && n % 400 != 0) {
print("$n년은 윤년입니다.");
}
else{
print("$n년은 윤년이 아닙니다");
}
}
#실행결과
생각해보니 100으로 나누어 떨어지는 수는 4로도 무조건 나누어 떨어지는데 100으로 나누어 떨어지는 조건은 필요 없다고 판단되 코드를 더 간결하게 조건문을 손 봐주었다.
#3 Code
import 'dart:io';
void main() {
///년도를 입력받기
print("년도:");
int? n = int.parse(stdin.readLineSync()!);
///그레고리력조건을 추가한 조건식
if (n % 4 == 0 && n % 400 != 0) {
print("$n년은 윤년입니다.");
}
else{
print("$n년은 윤년이 아닙니다");
}
}
결과는 #2 Code와 똑같이 동작 하였다.
'언어 > Dart & Flutter' 카테고리의 다른 글
Flutter Project : 오프라인 게임 지원앱 만들기 -2 (0) | 2022.06.06 |
---|---|
Flutter Project : 오프라인 게임 지원 앱 만들어보기 (0) | 2022.06.05 |
Flutter Project : 오프라인 게임 지원 앱 만들어보기(기획) (0) | 2022.06.05 |
Dart: 피보나치 수열(재귀함수 호출) (0) | 2022.03.26 |
Dart 환경설정(Android Studio) (0) | 2022.03.26 |