imported>novaman |
imported>novaman |
| Line 1: |
Line 1: |
| Describe AnEasyProblem here / 권순의
| |
|
| |
|
| === Source ===
| |
| #include <IOStream>
| |
| #include <cmath>
| |
|
| |
| using namespace std;
| |
|
| |
| int main()
| |
| {
| |
| int getNum = -1;
| |
| int getBinary[21];
| |
| int min = 0;
| |
| int output = 0;
| |
|
| |
| while(getNum != 0)
| |
| {
| |
| cin >> getNum;
| |
|
| |
| for(int i = 0; i < 21; i++)
| |
| {
| |
| getBinary[i] = 0;
| |
| }
| |
|
| |
| if((getNum > 0) && (getNum <= 1000000))
| |
| {
| |
| for(int i = 0; i < 21; i++)
| |
| {
| |
| getBinary[i] = getNum % 2;
| |
| getNum /= 2;
| |
| cout << getBinary[i];
| |
| }
| |
|
| |
| cout << endl;
| |
|
| |
| getNum = 1;
| |
|
| |
| for(int i = 0; i < 21; i++)
| |
| {
| |
| if(getBinary[i] == 1)
| |
| {
| |
| if(getBinary[i + 1] == 0)
| |
| {
| |
| getBinary[i + 1] = 1;
| |
| getBinary[i] = 0;
| |
| i++;
| |
| }else{
| |
| getBinary[i] = 0;
| |
| getBinary[min++] = 1;
| |
| }
| |
| }
| |
|
| |
| cout << getBinary[i];
| |
|
| |
| output += (int)(getBinary[i] * pow(2.0, i));
| |
| }
| |
|
| |
| cout << endl << output << endl;
| |
| }else if(getNum == 0){
| |
| break;
| |
| }else{
| |
| cout << "잘못된 입력입니다." << endl;
| |
| break;
| |
| }
| |
| }
| |
|
| |
| return 0;
| |
| }
| |
|
| |
|