저는 8 진수로 변환 한 다음 16 진수로 변환하는 프로그램을 코딩하려고했지만 잘못된 대답을 얻고 있습니다. 다음과 같이 실제로 변환하는 코드는 다음과 같습니다8 진수를 16 진수로 잘못 변환합니다.
user_input=user_input.replace("0", "00");
user_input=user_input.replace("1", "01");
user_input=user_input.replace("2", "10");
user_input=user_input.replace("3", "11");
user_input=user_input.replace("4", "100");
user_input=user_input.replace("5", "101");
user_input=user_input.replace("6", "110");
user_input=user_input.replace("7", "111");
if (!(user_input.length()-1 % 4 ==0)){
user_input = "00" + user_input; }
user_input=user_input.replace("0000", "0");
user_input=user_input.replace("0001", "1");
user_input=user_input.replace("0010", "2");
user_input=user_input.replace("0011", "3");
user_input=user_input.replace("0100", "4");
user_input=user_input.replace("0101", "5");
user_input=user_input.replace("0110", "6");
user_input=user_input.replace("0111", "7");
user_input=user_input.replace("1000", "8");
user_input=user_input.replace("1001", "9");
user_input=user_input.replace("1010", "A");
user_input=user_input.replace("1011", "B");
user_input=user_input.replace("1100", "C");
user_input=user_input.replace("1101", "D");
user_input=user_input.replace("1110", "E");
user_input=user_input.replace("1111", "F");
내 키 (22F)로 변환한다 숫자 1057을 사용하지만, 내가 뭘하는지에 대해 어떤 생각 12F
의 출력을 받고 있어요 잘못된?
중간 결과를 인쇄하여 예상 한 것과 비교하지 않는 이유는 무엇입니까? –
때때로 8 진수 입력을 2 자리 2 진 문자열로 변환하기도하고 때로는 3 자리 2 진 문자열로 변환하기도합니다. 그게 관련이있을 것 같아요. –
또한 두 번째 부분에 "원치 않는"대체 항목이있을 수 있습니다. –