it 취업을 위한 알고리즘 문제풀이 입문 : 53. k진수 출력
🙇♀️k진수 출력
10진수 N이 입력되면 K진수로 변환하여 출력하는 프로그램을 작성하세요.
스택 자료구조를 사용하시기 바랍니다.
▣ 입력설명
첫 번째 줄에 10진수 N(10<=N<=1,000)과 K(2, 5, 8, 16)가 주어진다.
▣ 출력설명
K진수를 출력한다.
▣ 입력예제 1
11 2
▣ 출력예제 1
1011
▣ 입력예제 2
31 16
▣ 출력예제 2
1F
🚀풀이
int n, k;
stack<int> s;
char str[20] = "0123456789ABCDEF";
void solve()
{
cin >> n >> k;
while (n > 0)
{
s.push(n % k);
n /= k;
}
while (s.empty() == false)
{
cout << str[s.top()];
s.pop();
}
}
🚀전체 코드
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <string.h>
#include <ctype.h>
#include<iostream>
#include <fstream>
#include <vector>
#include <algorithm>
#include <stack>
using namespace std;
int n, k;
stack<int> s;
char str[20] = "0123456789ABCDEF";
void solve()
{
cin >> n >> k;
while (n > 0)
{
s.push(n % k);
n /= k;
}
while (s.empty() == false)
{
cout << str[s.top()];
s.pop();
}
}
int main()
{
ios_base::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
//freopen("input.txt", "rt", stdin);
solve();
return 0;
}