[알고리즘]/CodeUp

[CodeUp/C++] 1031번~1037번 8진수,16진수,10진수,아스키 코드 변환

우당탕탕 개발 일지 2024. 5. 30. 11:26

안녕하세요. 우당탕탕 개발일지입니다.  외부 활동에서 코딩테스트를 보는 곳이 있어 준비를 시작하게 되었습니다. 처음 풀어 보는 거라 CodeUp에 기초 100제를 먼저 풀고 있습니다. 꾸준하게 매일매일 푸는 걸 목표로 하고 있습니다!

 

10진수를 입력받아 8진수(octal)로 출력해보자.

10진수를 입력받아 16진수(hexadecimal)로 출력해보자.

 

 1. 8진수,16진수,10진수로 바꿔서 출력하기 

8진수(octal)->std::oct

16진수(hexadecimal) ->std::hex

10진수(decimal) ->std::dec

#include<iostream>

int main(){

int n;
std::cin>>n; 

std::cout<<std::oct<<n; //입력한 정수를 8진수로 출력
std::cout<<std::hex<<n; //입력한 정수를 16진수로 출력
std::cout<<std::dec<<n; //입력한 정수를 10진수로 출력

}

 

※일부러 using namespace std;를 std를 네임스페이스로 안써주고 범위 지정 연산자(::)를 사용했습니다.

 

 


2. 아스키 코드로 변환 

:사용자가 문자열 입력-> 컴퓨터 내부(문자열을 아스키 코드로 변환-> 아스키 코드를 2진수로 변환해 저장)

 

2-1 static_cast를 사용하면 원하는 타입으로 쉽게 변환할 수 있습니다. 

static_cast<변환할 타입>(변수);

2-2 문제 1026번 

영문자 1개를 입력받아 아스키 코드표의 10진수 값으로 출력해보자.

#include<iostream>
using namespace std;

int main(){
    
    char t;
    cin>>t;
    int T= static_cast<int>(t);
    cout<<dec<<T;
}

 

728x90