디시인사이드 갤러리

갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

형님들 java 이것좀 봐주셔요..

형님들(175.127) 2011.08.19 19:30:54
조회 103 추천 0 댓글 5

java구요 if ~ for ~ switch ~ do while 을 이용해서 년도와 달을 입력받아 달력 출력시키는 프로그램입니다.
처음 이 문제를 보고 어떻게짜지 도저히 생각이안나 예시답안 코드를 보는데요. 코드를 봐도 이해가 안가는 부분이있어서요..
2부분(글씨찐하고큰부분)인데 이부분이 뭘 정의한 부분인거죠..?


import java.io.*;
public class Test0 {
 public static void main(String[] ar) throws IOException {
  BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
  int year = 0, month = 0;
  int start = 0, end = 0;
  boolean bool = false; //윤년 여부 ture : 윤년
  int base = 2006; // 2006년 1월 1일은 일요일 --> 기준
  int pos = 0;
  
  do {
   System.out.print("1. 연도를 입력하세요(예 : 2004) => ");
   year = Integer.parseInt(in.readLine());
  }while (year < 0 || year > 9999);
  System.out.println();
  do {
   System.out.print("2. 월을 입력하세요(예 : 6) => ");
   month = Integer.parseInt(in.readLine());
  }while(month < 1 || month > 12);
  
  if(year % 4 == 0 && year % 100 != 0 || year % 400 == 0)
   bool = true;  
  
  switch(month) {
  case 1: case 3: case 5: case 7: case 8:
  case 10: case 12: end = 31; break;
  case 4: case 6: case 9: case 11: end = 30; break;
  case 2: if(bool) end = 29; else end = 28;
  }

  if(year < base) {
   start = base - year;
   for(int i = year; i < base; ++i)
    if(i % 4 == 0 && i % 100 != 0 || i % 400 == 0)
     start++;   
   start = 7 - start % 7;
   if(start == 7) start = 0;
  }
  else {
   start = year - base;
   for(int i = base; i < year; ++i)
    if(i % 4 == 0 && i % 100 != 0 || i % 400 == 0)
     start++;   
   start %= 7;
  }
  
  for(int i = 1; i < month; ++i) {
   switch(i) {
   case 1: case 3: case 5: case 7: case 8:
   case 10: case 12: start += 31; break;
   case 4: case 6: case 9: case 11: start += 30; break;
   case 2: if(bool) start += 29; else start += 28;
   }
  }
  start %= 7;
  
  System.out.println();
  System.out.print("================= < ");
  if(year < 10) System.out.print("000");
  else if(year < 100) System.out.print("00");
  else if(year < 1000) System.out.print("0");
  System.out.print(year + "년 ");
  if(month < 10) System.out.print("0");
  System.out.println(month + "월 > =================");
  System.out.println("일\\t월\\t화\\t수\\t목\\t금\\t토");

  for(int i = 0; i < start; ++i, ++pos) System.out.print("\\t");
  for(int i = 1; i <= end; ++i) {
   if(i < 10) System.out.print(\' \');
   System.out.print(i);
   ++pos;
   if(pos % 7 == 0) System.out.println();
   else System.out.print("\\t");
  }
  if(pos % 7 != 0) System.out.println();

  
System.out.println("==================================================");
 }
}

추천 비추천

0

고정닉 0

0

댓글 영역

전체 댓글 0
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 끝까지 다 본 걸 후회하게 만든 용두사미 드라마는? 운영자 25/07/07 - -
AD 디지털 액세서리 기간한정 세일! 운영자 25/07/11 - -
265229 나는 범죄자닷! [3] 분당살람갤로그로 이동합니다. 11.08.21 105 0
265228 형들 오늘 정보처리기사 필기 답좀 올려줘 제발 [1] 꽃피는저녁갤로그로 이동합니다. 11.08.21 84 0
265227 fm2011설치 [1] 삼산팸갤로그로 이동합니다. 11.08.21 338 0
265225 여자랑 영화보는거 캔슬하고 문명한다.. [4] 꿀레(112.186) 11.08.21 109 0
265224 C,C++ 중에서 어떤걸 더 많이 쓰죠? [1] 아날로그맨(218.153) 11.08.21 77 0
265223 치킨집 치킨집 하니까... 예전에 싸질러 놨던 글이 생각나네 [3] 쿄스케갤로그로 이동합니다. 11.08.21 103 0
265222 삼성이 주식 반토막은 나도, 망하지는 않을 것 같다. [1] ㅇㅇ(121.133) 11.08.21 83 0
265221 잊혀질만 하면 생각나는 놈 [2] 우ㅈ갤로그로 이동합니다. 11.08.21 104 0
265219 아는 형이 자꾸 치킨집 드립하는데... [1] ㅇㅇ(61.33) 11.08.21 107 0
265217 또 날샛다... [2] 카페엠갤로그로 이동합니다. 11.08.21 60 0
265216 java님 이거 정상인가요?.... [1] 둑마갤로그로 이동합니다. 11.08.21 67 0
265215 [C++] reinterpret_cast의 위험성 궁금한궁금이(121.129) 11.08.21 53 0
265213 방금 글 쌋던 프로그램 말인데요 [5] 삼웹갤로그로 이동합니다. 11.08.21 93 0
265211 exe파일 열어보는 프로그램 뭐 없음?? [4] 삼웹갤로그로 이동합니다. 11.08.21 148 0
265209 진지하게 생각해본건데 업계 종사자들 [2] dijkstra(222.233) 11.08.21 106 0
265206 아파치 서버 써보신분 [1] 나나(219.241) 11.08.21 83 0
265205 *.asp 에 질문에 대답해주실분 [1] minsu갤로그로 이동합니다. 11.08.21 38 0
265204 리눅스(backtrack5) 랑 윈도우7이랑 멀티부팅하는 법 좀 알려주세요 [5] 핫뜨거갤로그로 이동합니다. 11.08.21 653 0
265203 c++ 문법으로만 따지면 어느정도 하면 마스터임 [2] rrww(124.80) 11.08.21 94 0
265198 님들아 프로그래머는 회사에서 쉴떄 어떻해쉼? [4] rrww(124.80) 11.08.21 224 0
265197 님들아 궁금한게있는데여 [5] rrww(124.80) 11.08.21 82 0
265196 그래도 프로그래머가 낫지않삼? [8] YesMan갤로그로 이동합니다. 11.08.21 344 0
265195 해커는 프로그래밍갤가야하냐? 아니면 네트워크갤가야하냐 [3] 리플청년갤로그로 이동합니다. 11.08.21 142 0
265194 혹시 갤러들 중에 치질걸려본 횽 있음...? [1] mercedes㉦benz갤로그로 이동합니다. 11.08.21 60 0
265193 문과가 학원가서 프로그래밍 배우면 어떰 [2] ㅇㅇ(61.77) 11.08.21 115 0
265192 학원 전공자 그만좀하자 [1] 망함그냥갤로그로 이동합니다. 11.08.20 106 0
265189 컴공 대부분이 상ㅄ들이다.. [2] 징징(219.251) 11.08.20 207 0
265188 학원생 vs 전공생. mercedes㉦benz갤로그로 이동합니다. 11.08.20 69 0
265187 혹시 이랜드 시스템에 대해서 아는 형 있어? [4] 좋은아버지갤로그로 이동합니다. 11.08.20 485 0
265186 LG 파견글을 보고 [3] 좋은아버지갤로그로 이동합니다. 11.08.20 133 0
265185 프로그래밍 배울때 visual assist 안쓰면 괜한 허세인가요? [6] SuCo갤로그로 이동합니다. 11.08.20 180 0
265184 스피커랑 광마우스 쌋떠영!!! 막장갤신학생갤로그로 이동합니다. 11.08.20 38 0
265183 LG파견 흐엏흐헣 [3] rd(58.141) 11.08.20 155 0
265181 아이피 네이트온 아이디로 비밀번호 알수잇음? 1233(110.12) 11.08.20 69 0
265180 GUI프로그래밍 [4] 금오공대가고싶어갤로그로 이동합니다. 11.08.20 135 0
265179 학원생 vs 전공생 [1] 좋은아버지갤로그로 이동합니다. 11.08.20 106 0
265178 2440 암보드 팔아요~ [3] ㅇㄹ(119.197) 11.08.20 113 0
265177 왜 한국 C책에서는 Calling Convention에 대한 설명이없을까 [7] SuCo갤로그로 이동합니다. 11.08.20 99 0
265174 프로젝트에대한 정의좀 三didas갤로그로 이동합니다. 11.08.20 45 0
265173 프로젝트에대한 정의좀 [3] 三didas갤로그로 이동합니다. 11.08.20 60 0
265172 해마책 보는데 정신이 분리될것만 같다. [6] SuCo갤로그로 이동합니다. 11.08.20 190 0
265171 Java 님 ㅇ님 감사합니다. [2] 강군님갤로그로 이동합니다. 11.08.20 50 0
265169 쇼셜네트워크 본횽들 대답쫌 [1] 할마마갤로그로 이동합니다. 11.08.20 51 0
265165 학원생은 [9] +어게인갤로그로 이동합니다. 11.08.20 139 0
265164 java 님 o 님 ( 수정2- 벤치마크) [14] 강군님갤로그로 이동합니다. 11.08.20 137 0
265163 CS5 렌더링 두번째... 분당살람갤로그로 이동합니다. 11.08.20 43 0
265159 6개월동안 프로그래밍 공부한다면 [6] 치킨마루(210.91) 11.08.20 145 0
265157 아래 컴퓨터 느려진다고 글쓴 사람입니다. 작업관리자 스샷 [14] 강군님갤로그로 이동합니다. 11.08.20 197 0
265155 소설같은 자바 어떤가요? 귀차니즘 ┓━갤로그로 이동합니다. 11.08.20 155 0
265154 주말인데 다들 쉬나염 [1] +어게인갤로그로 이동합니다. 11.08.20 49 0
뉴스 손담비♥이규혁, 딩크족 계획했지만 남편의 아기 욕심에 출산 결심...딩크보다 행복한 일상 디시트렌드 07.10
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

뉴스

디시미디어

디시이슈

1/2