【ブルーブリッジカップ/基礎練習】16進数8進数

1267 ワード

タイトル


問題は、与えられたn個の16進数の正の整数を記述し、対応する8進数を出力する.
入力フォーマット入力の第1の動作は、正の整数n(1<=n<=10)である.次のn行は、1行あたり0~9、大文字A~Fからなる文字列で、変換する16進数の正の整数を表し、各16進数の長さは100000を超えない.
出力フォーマットはn行を出力し、動作ごとに対応する8進正整数を入力します.
【注意】入力された16進数には、012 Aなどのプリアンブル0はありません.出力される8進数にも先頭0はありません.
サンプル入力2 39 123 ABC
サンプル出力71 4435274
【ヒント】16進数をある進数に変換し、ある進数から8進数に変換します.

プログラム

#include 
#include
using namespace std;
int main()
{
       //freopen("data.txt","r",stdin);        //   
    string six,oct[10],bin;   //six ,oct ,bin  
    int n;
    cin>>n;
    int binlen=bin.size();
    int flagbin=0;
    for(int i=0;i>six;
        bin.erase(0,binlen);          // bin 
        for(int j=0;j

ライタで発生したエラー


1.8進数変換バイナリの場合、「0」を減らして「0」を減らすのを忘れたのは、文字形式の数字をint型に変換して計算し、tempnumを算出してからswitch文型を文字形式の8進数に変換するためです.2.bin使用後文字列をクリアするのを忘れた、すなわち、各ラウンド入力binを使用してバイナリを格納してから再使用する場合はクリアを忘れ、各ラウンド開始前に初期化すればよい