본문 바로가기

문자 비트변환 후 켜진비트셈, 소수판별,로또번호

반응형

1. 1바이트는 8개의 비트로 이루어집니다. 255는 8개 비트 전체가 1인 경우이고, 1은 최하위 1비트만 1인 경우입니다. 문자 ch의 켜진 비트 개수는 몇 개입니까? 켜진 비트는 1로 설정된 비트의 다른 표현입니다.

대문자 'A'의 값은 65이고 6번째와 1번째 비트가 켜져 있습니다.

출력)    문자 입력 : A

    켜진 비트의 개수 : 2

    값 : 65

 

#include <iostream>

 

using namespace std;

 

int main(void)

{

 

    

    char a;

    int b;

    int count = 0;

 

    int bit[8] = { 0 , 1, 2, 3 ,4 ,5 ,6, 7};

    int zero, one, two ,three ,four ,five, six, seven;

 

    

    cout << "문자 입력: \n";

    cin>> a;

    

    b=a;

 

    

    seven = (a%2);

    six = (a/2)%2;

    five = ((a/2)/2)%2;

    four = (((a/2)/2)/2)%2;

    three = ((((a/2)/2)/2)/2)%2;

    two = (((((a/2)/2)/2)/2)/2)%2;

    one = ((((((a/2)/2)/2)/2)/2)/2)%2;

    zero = (((((((a/2)/2)/2)/2)/2)/2)/2)%2;

    

    if(seven == 1)

    {    

        count++;

    }

    

    if(six == 1)

    {    

        count++;

    }

    

    if(five == 1)

    {    

        count++;

    }

 

    if(four == 1)

    {    

        count++;

    }

 

    if(three == 1)

    {    

        count++;

    }

 

    if(two == 1)

    {    

        count++;

    }

 

    if(one == 1)

    {    

        count++;

    }

 

    if(zero == 1)

    {    

        count++;

    }

 

        

    cout << "켜진비트의 개수:" << count<<"\n";

    cout<< "값: " <<b;

    

}

 

 

 

 

 

2. 정수 N이 소수입니까?

출력)    정수 입력 : 97

    결과 : 소수

 

    정수 입력: 91

    결과 : 합성수[7]

 

 

 

 

3. 로또 번호 생성 프로그램

  • 사용자에게 로또 게임 수를 입력받아 게임의 횟수별로 임의로 6개의 수(1~45)를 자동 생성하는 프로그램을 작성하시오. 단, 생성된 난수는 모두 다른 값이어야 한다.
  • 로또 번호는 정수형 배열을 선언하여 설정한다.
  • 프로그램의 주요한 부분에 주석을 명시하시오.

 

반응형

'About 프로그래밍!!! > C++' 카테고리의 다른 글

[C++]정적멤버  (0) 2010.06.18
[C++]접근제어  (0) 2010.06.17
  (0) 2010.06.16
소멸자  (0) 2010.06.16
반드시 생성자가 있어야 하는 경우&생성자를 사용해 임시객체 만들기  (0) 2010.06.16
-->