2017.12.09 08:57

2진수를 8진수로

조회 수 266 추천 수 0 댓글 0

#include <stdio.h>

char num[16]={'0'};
int aa[3];
int answer[5]={0};

void put(void);
void change(void);
int result(int a);
int main(void)
{
	scanf("%s", &num);

	put();

	if(num[0]=='1')//음수일 경우 
	{
		change();
		printf("%d", result(1));
	}
	else//양수일 경우 
		printf("%d", result(0));

	return 0;
}

void put(void)
{
	int i;
	aa[2]=1;
	for(i=1; i>=0; i--)//2의 제곱수 집어넣기 
	{
		aa[i]=aa[i+1]*2;
	}
}

void change(void)//1의 보수로 바꾸기 
{
	int i;
	for(i=0; i<16; i++)
	{
		if(num[i]=='1')
			num[i]='0';
		else
			num[i]='1';
	}
}

int result(int a)
{
	int i, j, an=0, b=10000;

	for(i=0; i<5; i++)//8진수로 변환 
	{
		for(j=(i*3)+1; j<=(i*3)+3; j++)
		{
			if(num[j]=='1')
				answer[i]+=aa[(j-1)%3];
		}
		an+=answer[i]*b;
		b=b/10;
	}


	if(a==1)//음수일 경우 
		an=0-(an+1);

	return an;
}



List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 글쓰기는 하루 5개, 댓글은 10개만 가능합니다. 좋은아빠되기 2019.02.15 528
공지 키보드 화살표값 출력 좋은아빠되기 2016.11.19 1286
공지 원하는 좌표에 값 출력하기 좋은아빠되기 2016.11.19 2606
공지 Python(파이썬) 학습 자료 PDF 1 file 좋은아빠되기 2014.12.10 10594
공지 dev C++ 텍스트 색상변경 WinApi사용(textcolor 대용) 좋은아빠되기 2014.06.07 4943
공지 DEV-C++ 기본 코드 좋은아빠되기 2013.06.19 8530
공지 무료 C++ 컴파일러(윈도우용) DEV-C++ 좋은아빠되기 2013.06.18 19176
공지 이클립스 C++ 설치 파일들 좋은아빠되기 2013.06.18 38077
209 정올 - 실력키우기 - 나는 학급회장이다(투표) 조정미 2017.12.02 522
208 정올 기초다지기(구조체-자가진단5) killerjack 2014.10.11 523
207 정올 기초다지기(aF002-구조체1) killerjack 2014.10.11 524
206 정올 함수2 자가진단1 정승준 2018.12.29 531
205 100이하 가장큰수 100이상 가장작은수 구하기 (승민) 승민 2016.04.16 532
204 정올 기초다지기(포인터-자가진단5) killerjack 2014.11.15 543
203 사이정수 갯수 구하기 테스트 버전 좋은아빠되기 2014.08.02 544
202 정올 기초다지기(aG005-포인터5) killerjack 2014.11.22 548
201 홀수 짝수 for문(스민) 승민 2016.03.05 551
200 섭씨 화씨 뭐고를지 선택후 계산(승민) 승민 2016.06.11 555
199 정올 숫자야구 조정미 2017.11.18 561
198 정올 함수1 자가진단1 정승준 2018.12.08 566
197 정올 기초다지기(문자열1-자가진단7) killerjack 2014.09.20 573
196 정올 - 실력키우기 - 그릇(2604) 조정미 2017.12.27 573
195 정올 달팽이 삼각형 조정미 2017.11.18 577
194 정올 기초다지기(문자열1-자가진단4) killerjack 2014.09.20 578
193 정올 기초다지기(구조체-자가진단4) killerjack 2014.10.11 578
192 정올 - 실전대비 - 줄 세우기(1003) 조정미 2018.05.26 578
191 1부터10까지 더하기(승민) 승민 2016.03.05 579
Board Pagination Prev 1 ... 11 12 13 14 15 16 17 18 19 20 ... 26 Next
/ 26