본문 바로가기

코딩 하루 1문제 프로젝트

백준 10430번 문제. 나머지 연산자 %

반응형

(A+B)%C는 ((A%C) + (B%C))%C 와 같을까?

(A×B)%C는 ((A%C) × (B%C))%C 와 같을까?

세 수 A, B, C가 주어졌을 때, 위의 네 가지 값을 구하는 프로그램을 작성하시오. 

 

첫째 줄에 A, B, C가 순서대로 주어진다. (2 ≤ A, B, C ≤ 10000)

 

첫째 줄에 (A+B)%C, 둘째 줄에 ((A%C) + (B%C))%C, 셋째 줄에 (A×B)%C, 넷째 줄에 ((A%C) × (B%C))%C를 출력한다.


알아야 하는 개념 : 나머지 연산자 - % 

- 나누기한 나머지를 반환한다. 

- 홀수, 짝수 등 배수검사에 주로 사용된다. 

int share = 10 / 8;

int remain = 10% / 8;

10 % 8 = 2 


문제 풀이

import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		
		Scanner sc = new Scanner(System.in);
		
		int A = sc.nextInt();
		int B = sc.nextInt();
		int C = sc.nextInt();
		
		int result1 = (A+B)%C;
		int result2 = ((A%C) + (B%C))%C;
		int result3 = (A*B)%C;
		int result4 = ((A%C) * (B%C))%C;
		
		System.out.println(result1);
		System.out.println(result2);
		System.out.println(result3);
		System.out.println(result4);
		
	}
}

화면에서 입력받는 Scanner 객체를 호출한다.

기본형 int 변수 A, B, C에다가 입력받은 값을 저장한다.  

A, B, C를 이용하여 연산을 진행한다. 그 값을 다시 result1, 2, 3, 4에 저장하고 출력한다. 

출력된 값 

문제의 첫번째 질문에 답할 수 있다.

(A+B)%C는 ((A%C) + (B%C))%C 와 같을까?

(A×B)%C는 ((A%C) × (B%C))%C 와 같을까?

 

그렇다. 같은 값이 출력된다. 

 

반응형