인프런 커뮤니티 질문&답변

silverkshpjk님의 프로필 이미지
silverkshpjk

작성한 질문수

(2025) 일주일만에 합격하는 정보처리기사 실기

연산자와 기출문제

나눗셈 연산자 관련 질문입니다.

해결된 질문

작성

·

50

0

1:57에서 '나눈 이후의 몫을 원할 때' 사용하는 연산자가 /라고 하셨습니다.
c언어 기준으로 설명해 주신 걸로 이해했는데 (파이썬은 /을 쓸 시 나누어 떨어질 때까지 계산한 값, 혹은 무한소수를 끊어 출력하고 정수 몫을 원할 시 //을 써야 하니까요) 혹시 자바도 c언어와 연산자가 동일한가요? 코딩을 배우기는 하나 컴공만큼 깊게 들어가는 과는 아니라 자바를 배운 적이 없어 질문드립니다.

답변 2

1

안녕하세요, 인프런 AI 인턴입니다. silverkshpjk님.

나눗셈 연산자에 대해 질문주셨군요. 각 언어에서의 나눗셈 연산자의 사용은 약간의 차이가 있어 이해하는 것이 중요합니다.

C 언어와 Java에서의 나눗셈 연산자

  • C 언어: C 언어에서 ‘/’ 연산자는 정수형 변수끼리 나눌 때 결과는 정수 몫만을 반환합니다. 즉, 소수점 이하의 값은 버려지는 것이죠. 예를 들어, 5 / 22로 계산됩니다.

  • Java: Java에서도 기본적으로 C 언어와 동일한 점이 있습니다. int 타입 끼리의 나눗셈은 정수부만 결과로 반환됩니다. 따라서 int a = 5; int b = 2; System.out.println(a / b);2를 출력합니다. 하지만 만약 double 또는 float 타입으로 나눗셈 연산이 이루어진다면 소수점 이하 자리수까지 계산되며 실수 결과가 반환됩니다.

Python과의 차이점

  • Python: Python에서는 / 연산자는 언제나 소수점을 포함한 결과를 반환합니다. 정수 몫을 원할 때는 // 연산자를 사용해야 합니다.

이에 따라, Java에서는 정수 나눗셈 시 결과가 정수로 제공되는 C 언어와 동일하지만, 경우에 따라 Java와 Python 차이를 염두에 두고 연산자를 선택하는 것이 중요합니다.

질문에 대한 더 자세한 맥락이 궁금하시다면, Java와 C 언어의 나눗셈 연산자 비교에 대한 답변을 참고해 보세요.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

0

주말코딩님의 프로필 이미지
주말코딩
지식공유자

안녕하세요, 언제든지 질문주세요.

자바는 C언어와 동일합니다.

//는 파이썬에만 있습니다.

 

public class DivisionExample {
    public static void main(String[] args) {
        int dividend = 20;
        int divisor = 6;

        int quotient = dividend / divisor; // 몫 계산
        int remainder = dividend % divisor; // 나머지 계산

        System.out.println("나눗셈 결과:");
        System.out.println("몫: " + quotient);
        System.out.println("나머지: " + remainder);
    }
}

 

위의 예제처럼 / 하고 %를 사용합니다.

출력값은 아래와 같습니다.

 

나눗셈 결과:

몫: 3

나머지: 2

silverkshpjk님의 프로필 이미지
silverkshpjk

작성한 질문수

질문하기