이 튜토리얼에서는 길이가 'k'인 모든 부분 문자열을 밑수 'b'에서 10진수로 변환하는 프로그램에 대해 논의할 것입니다.
이를 위해 특정 길이의 문자열이 제공됩니다. 우리의 임무는 'k' 크기의 주어진 문자열에서 부분 문자열을 가져와 기본 'b'에 있는 십진수로 변환하는 것입니다.
예시
#include <bits/stdc++.h> using namespace std; //converting the substrings to decimals int convert_substrings(string str, int k, int b){ for (int i=0; i + k <= str.size(); i++){ //getting the substring string sub = str.substr(i, k); //calculating the decimal equivalent int sum = 0, counter = 0; for (int i = sub.size() - 1; i >= 0; i--){ sum = sum + ((sub.at(i) - '0') * pow(b, counter)); counter++; } cout << sum << " "; } } int main(){ string str = "12212"; int b = 3, k = 3; convert_substrings(str, b, k); return 0; }
출력
17 25 23