반응형

2.6> 키보드로부터 특정 연도를 입력 받아 윤년인지 아닌지를 판별하는 프로그램을 작성하라. 연수가 4로 나누어 떨어지는 해는 우선 윤년으로 하되, 그 중에서 100으로 나누어 떨어지는 해는 평년으로 하고, 다만 400으로 나누어 떨어지는 해는 다시 윤년으로 판정한다.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
package HW1_JAVA; 
import java.util.Scanner// 스캐너 클래스의 경로 명이 java.util.Scanner
class Testing{            // Testing 클래스 선언
    void test(int year){  //test 메소드 선언 argument : int형 변수 year
        if(((year%4==0)&&(year%100!=0))||(year%400==0))
            System.out.println("윤년입니다.");
        else
            System.out.println("윤년이 아닙니다.");
    }//(4의배수 이면서 100의 배수가 아닌것) 혹은 (400의 배수) 이면 윤년입니다 출력 아니면 윤년이아닙니다 출력
}
public class YunYear {  //YunYear class 선언
    public static void main(String[] args) { 
        Scanner s=new Scanner(System.in); //레퍼런스 변수 s와 Scanner class의 객체 생성
        Testing t=new Testing(); //레퍼런스 변수 t와 Testing class 의 객체 생성
        int year=0//int 형 변수 year의 선언 및 초기화
        while(true){  // 무한 루프
            System.out.println("연도를 입력하세요(-1은 종료)>>");
            year=s.nextInt();  //year에 정수형 입력 받음
            if(year==-1break//year이 -1이면 루프 탈출
            t.test(year);;  //오브젝트 t의 메소드 test 호출
        }}}
 
cs




반응형

'컴퓨터 & 프로그래밍 & 전자공학 > JAVA' 카테고리의 다른 글

정수 오름차순 정렬기  (0) 2017.06.18
하위 문자 모두 출력하기  (0) 2017.06.18
직사각형 충돌  (0) 2017.06.18
삼각형 만들기  (0) 2017.06.18
369 게임  (0) 2017.06.18
반응형

우리는 앞에서 윤년을 구하는 알고리즘을 학습하였다. 이것을 함수 is_leap(int year)함수로 작성하고 이 함수를 사용하여서 1년이 몇 일인지를 출력하는 프로그램을 작성하여 보자.

*윤년은 4의 배수이지만 100의 배수는 제외하고 400의 배수는 무조건 추가하면 구할 수 있다.

이것을 벤다이어그램과 부울대수로 나타내면 위와 같이 된다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <stdio.h>
int is_leap(int year);
int main(void)
{
    int year;
    printf("연도를 입력하시오: ");
    scanf("%d"&year);
    printf("%d년은 %d일입니다.\n", year, is_leap(year));
    return 0;
}
int is_leap(int year)
{
    int a;
    if(((year%4==0)&&(year%100!=0))||year%400==0)
        a=366;
    else
        a=365;
    return a;
}
cs


반응형

'컴퓨터 & 프로그래밍 & 전자공학 > C언어' 카테고리의 다른 글

부동 소수점 수 일치 판별  (0) 2016.07.29
반올림 함수  (0) 2016.07.29
오일러의 수e 구하기  (0) 2016.07.28
소수 검사  (0) 2016.07.28
두 점 사이의 거리  (0) 2016.07.27

+ Recent posts