# 연습문제 B - 메소드와 조건문
## 04 타입과 형변환
---
![클라우드스터딩-자바-타입과-형변환-요약](https://i.imgur.com/U8O3Y9L.png)
#### 이론 요약
- int 와 int의 연산 => int
- 타입 불일치(type mismatch)란, 값과 변수의 타입이 달라 생기는 에러다.
- 타입은 때때로 자동 변환(implicit conversion)되기도 한다.
- 필요 시 타입을 직접 변환(explicit conversion)할 수 있다.
- double은 int로 캐스팅(casting) 가능하다.
#### 실습 리뷰
반지름이 3인 원의 넓이 구하기
```
public class CircleAreaCalculator {
public static void main(String[] args) {
/* 1. 입력값 받기 */
int r = Integer.parseInt(args[0]);
/* 2. 원의 넓이 계산 */
double area = Math.PI * r * r;
/* 3. 결과 출력 */
System.out.printf("반지름이 %d인 원의 넓이 => %.3f", r, area);
}
}
```
## 05 메소드 호출과 정의
---
![클라우드스터딩-자바-메소드-요약](https://i.imgur.com/Cmooiyi.png)
#### 이론 요약
- 메소드는 일련의 코드를 단순화한다.
- 메소드는 입력에 따른 결과를 반환한다.
- 메소드는 호출부와 정의부로 나뉜다.
- 메소드의 구성 요소는 이름 / 입력 변수 / 반환 값 / 반환 타입이다.
#### 실습 리뷰
삽겹살 3인분의 칼로리 계산하기
```
public class Pork {
public static void main(String[] args) {
// 변수 생성
int n = 3;
// 계산
double kcal = calcPorkCalories(n);
// 출력
System.out.printf("삼겹살 %d인분: %.2f kcal", n, kcal);
}
public static double calcPorkCalories(int n) {
return (180 * n) * 5.179;
}
}
```
## 06 조건문
---
![클라우드스터딩-자바-조건문-비교-논리-연산자-요약](https://i.imgur.com/cpoG4ar.png)
#### 이론 요약
- 조건문은 상황에 따라 실행 흐름을 나눈다.
- 조건문은 if 문, else 문, else-if 문 등이 있다.
- 비교 연산자와 논리 연산자를 통해, 풍부한 조건식 작성이 가능하다.
#### 실습 리뷰
윤년 여부 판별하기
```
public class LeapYear {
public static void main(String[] args) {
int input = Integer.parseInt(args[0]); // "1988" => 1988
boolean ouput = isLeapYear(input); // 1988 => true
System.out.printf("%d년은 윤년입니까? %s", input, ouput);
}
public static boolean isLeapYear(int year) {
boolean result = false;
if ((year % 4) == 0) { // 기본적으로 년수가 4의 배수이면 윤년O
result = true;
if ((year % 100) == 0) { // 그러나 100으로 나누어지는 떨어지면 윤년X
result = false;
if ((year % 1000) == 0) { // 특별히 1000의 배수이면 윤년O
result = true;
}
}
}
return result; // 결과값 반환
}
}
```
## 확인하기
---
<div class="interact_responsive_padding" style="padding:100% 0 0 0;position:relative;margin-bottom:5px;"><div class="interact_responsive_wrapper" style="height:100%;left:0;position:absolute;top:0;width:100%;"><iframe id="interactApp5cbdad20f0ef010014f30029" width="100%" height="100%" style="border:none;max-width:100%;margin:0;" allowTransparency="true" frameborder="0" src="https://quiz.tryinteract.com/#/5cbdad20f0ef010014f30029/q/1?method=iframe"></iframe></div></div>
## 도서구매
<a href="http://www.yes24.com/Product/Goods/104740689"><img src="http://image.yes24.com/goods/104740689/XL" width="50%" /></a>