문제 번호 1089 --[기초-논리/비트연산]네트워크 주소를 구해보자

1089: [기초-논리/비트연산]네트워크 주소를 구해보자

시간 제한: 1 Sec  메모리 제한: 128 MB
제출: 595  해결 문제 수: 462
[제출][채점상황][게시판][:]

문제 설명

GT혹성에서도 인터넷망이 존재하고 우리와 동일한 ip를 가지고 통신을 하게 된다.

보통 네트워크 정보에 필요한 정보를 입력할 때 ip주소, 서브넷마스트, 게이트웨이 정보를 입력한다.

이때 ip주소와 서브넷 마스크를 이용해 네트워크 주소를 구할 수 있다.

예를 들어 ip주소가 10.10.1.30이고  서브넷 마스크가 255.255.255.0이면

이를 비트표현으로(이진값)으로 변경하면

한자리의 최대 값은 0부터 255가 되어 8비트가 된다.

ip주소는 0000 1010. 0000 1010. 0000 0001. 0001 1110가 된다.

마스크는 1111 1111. 1111 1111. 1111 1111.0000 0000 가 된다.

이를 두개를 and(&)연산을 하게 되면 최종적으로 10.10.1.0 이 출력되고 이것이 네트워크 주소가 된다.

실제 이것의 보다 많은 지식은 기타 문헌들을 참고하면 된다.

여러분들은 ip주소와 마스크 주소가 주어질때 네트워크 주소를 출력하면 된다.

단) 현실상에 존재하지 않는 입출력 범위에 해당하는 데이터가 입력될 수 있음.

이 문제는 비트연산자의 개념을 위한 것이다.

입력

첫줄에 .(점)으로 구분되는 4자리 ip주소가 입력된다.(단, 0~255)

둘째줄에 동일하게 서브넷마스크가 입력된다.

출력

네트워크 주소를 출력한다.

이때 .(점)으로 구분하여 출력한다.

입력예시

10.10.1.30
255.255.255.0

출력예시

10.10.1.0

도움말

출처

[제출][채점상황]