ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • C언어 삼항,비트연산자의 기초와 응용. (카카오테치 비밀지도 의문 풀이 최적화) [N.하나하나] 좋은정보
    카테고리 없음 2020. 2. 11. 06:37

    안녕하세요. 금하나운 전문으로 예고한 대로 비트 연산자와 덤 삼항 연산자까지 다뤄보겠습니다.​ 비트 연산은 컴퓨터 상에서 연산을 할 때 컴퓨터가 이용한 가장 보편적인(사실상 보통의 전부다)연산 방법인 0과 1을 이용하는 2진 법의 생물(?)을 그대로 이용하기 위한 연산자입니다. 이러한 비트 연산자는 주로 하드웨어의 무엇인가 onoff를 그때그때 다루어야 하는 경우에 많이 이용됩니다. 아두이노 같은 키트 같은 게 스토리죠그 외에도 2진 법상 뭔가 연산을 할 10진 법상에서 다루기보다 편할 때도 사용할 수 있습니다.'삼황연산자'는 스토리대로 덤입니다. 쓸 줄 알고 배워야 하고. if문 정도라면 재현할 수 없는 것은 없습니다.​ ​ 아무튼 금지하는 나의 목표는 이전 글의 의문(KaKao Tech 2018 1번 비밀지 의문)을 비트 연산자와 삼항 연산자를 통해서 해결하는 것입니다.​


    ​ 1. 비트 연산자 ​


    ​ 기본적으로 비트 연산자는 2진법 숫자를 다루는 연산자로&,|,^는 양쪽에 2개의 숫자를 비교하는 연산자이며,<<>>는 일의 숫자를 변형시키는 연산자입니다.https://blog.naver.com/smbo의 2/22일 486203949


    여기서 본인은 논리연산자와는 명확하게 구분되는 개념을 가지면서도 그 형태 본인에게 사용되는 것이 매우 유사하기 때문에 판단되어서는 안됩니다. 예. 이것만 봐도 정확하게 알기 어렵기 때문에 직접 예시를 들 수 있습니다.


    >


    예로, 43(하나 0하나 0하나 하나)이 5개(하나하나 00하나)를 들어 직접 실행해서 보도록 하겠습니다.


    >


    >


    >


    위에 있는것은 간단하고...중요한 것은 ~입니다. 하나 0하나 0(나하가 반전시키면 왜-44이 본인의 왔습니다.이것은 컴퓨터의 숫자 인식과 저장 방식에 의한 것입니다. ​ byte단위 숫자 체계는 부호를 자결하는 자리 하봉잉와 본인 멀리 7석으로 구성됩니다. 또 소음 수는 숫자 0을 존재하는 것으로 취급해서 읽어야 합니다. 만약(하나)하나하나 00는 하나 2가 아니라-3이 되는 형식입니다. 괄호 안에 하 나운 부호를 자결할 것으로 하 나운 소음 수, 0은 양수가 됩니다.즉 하나 0하나 0하나 하나 은 사실은 00하나 0하나 0의 하나하나의 것이며 이를 반전시키고 일일이 0하나 0하나 00이 되어 이를 읽고-44이 되었습니다.


    >


    ​ ​ ​ 2. 삼항 연산자 ​ 삼항 연산자는 조건 정말 거짓말을 판별하고 그를 따르고 행동을 하도록 하는 기능을 갖고 있습니다.1종의 if문을 통해서 실현하는 것을 간략화하는 기능을 할 것으로 볼 수도 있겠네요.형태는 조건?옵션 1:옵션 2입니다.조건은 예기대로 삼항 연산자의 조건에 해당합니다. 이 조건에 만족할 경우, 즉 진정한 경우에 옵션 1을 발동하고, 거짓인 경우 옵션 2를 발동합니다. 이는 on/off과인 true/false를 구분하는 이진법의 1과 0으로도 발동시킬 수 있습니까. 와: 는 삼항 연산자 형식입니다. 그저 형식일 뿐 의미는 없습니다.


    이런식으로 사용할수 있어요...


    그럼 아까 직접 사용해 보도록 하죠. 목표한 대로 2018, 카카오 블라인드 코딩 시험 1차 1번 뭉지에 비밀의 지도를 풀게 해겟슴니다. 이거는앞문장과연결이되기도하기때문에간단히설명을해드리도록하겠습니다.​​


    >


    >


    >


    >


    >


    정 그룹에서 이야기한 결과대로 30분 정도 걸리면 선전하는 글입니다. 또한 문재해설에서 알 수 있듯이 비트연산자를 이용하는 것이 정석이기도 한 문재입니다.​​


    출력하는 화면 자체가 중요하기 때문에 특정 메모리를 지정하여 저장하지 않고 즉시 과인하도록 설계하였습니다.문자 k을 지정하고 비트 연산자와 삼항 연산자를 통해서 2진 법의 변형으로 해당 자리 수의 숫자 비교를 동시에 진행하고 이왕 하는 김에 아스키 코드를 이용하고 공백 이과의#이 표홍하고 주옷슴니다.K가 char형태로 정의되었기 때문에 숫자를 넣으면 아스키표에 따라 문자를 출력한 것입니다.


    >


    >


    >


    정상적으로 출력되는 것을 확인할 수 있습니다.와 이렇게 간단한 걸 if-else 글만 쓰고 비트연산은 안 하는 거 의견으로 보니까-. 실수도 많이 봐서 골치 아프던데 스토리죠. #C언어 #비트연산자 #상항연산자 #카카오테치 #kakaotech #비밀지도


    댓글

Designed by Tistory.