본문 바로가기

국비교육/국비교육 복습

Day02_data_Test13 : 나누기 연산 + 형 변환 (★)

(Q) KH 주유소에서는 휘발유를 1L에 1920원에 판매중입니다.
50000원을 주유했을 때 주유 가능한 리터(L)를 구하여 출력

 

package data;

import java.lang.*;

public class Test13 {

	public static void main(String[] args){
    
    		int money = 50000;
    		int gasPricePerLiter = 1920;
    
    		double gasLiter = (double)money / gasPricePerLiter;
    
    		System.out.println(gasLiter);
    
    } 

}

** 변수

- money; : 주유 금액 (정수형)

- gasPricePerLiter : 1L당 휘발유의 가격 (정수형)

 

1) 나눗셈을 할 때 출력을 소수점까지 표시

- 소수점까지 정확하게 나타내기 위해서는 주유 가능한 L 수의 변수 타입을 실수로 선언한다

- 주유 금액과 1L당 휘발유의 가격을 정수형으로 선언했기 때분에  형 변환이 없을 경우 출력은 26

- 정수형 변수 money 또는 gasPricePerLiter 중 하나를 형 변환 하여 실수형으로 만들어야 한다

 

 

** 나눗셈을 할 때 출력을 소수점까지 표시

- 초기에 연산하려는 변수 타입을 실수형으로 선언

float a = 1.5f;		//반드시 숫자 뒤에 f를 붙인다

double b = 1.5;		//double은 숫자 뒤에 d를 붙이지 않아도 상관없다
double c = 1.5d;

- 나누는 수 뒤에 .0을 붙이는 방법

double d = 10 / 3.0;

- 형 변환 (casting) : 연산 중 변수의 타입을 강제로 변경하는 방법, 데이터의 유실이 발생할 수 있다

int e = 10
int f = 3

double g = (double)e / f;

//또는
double g = e / (double)f;