27eee

알고리즘 사상은 이' 12 진수' 숫자 eee 를 10 진수 (변환 결과 1727) 로 변환한 다음 1727 의 제곱 (제곱은 2982529) 을 계산한 다음 2982529 를' 12 진수' 로 변환하고 출력하는 것이다.

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

12 진수:

Eet001

계산에 사용되는 c 절차는 다음과 같습니다.

//------------------

# includelt; Stdio.hgt;;

# includelt; Math.hgt;;

Void fun1(long int a) /* a 를' 12 진수' 숫자로 변환하고 */

를 출력합니다

{

If (a) {

팬 1 (a/12);

스위치 (a12) {

기본값:

Printf("d ",a12); 브레크;

Case10: putchar ('t'); 브레크;

Case11: putchar ('e'); 브레크;

}

}

}

Long int fun2(char *s, int n) /* s 가 가리키는 문자열에 저장된' 12 진수' 숫자를 10 진수로 변환합니다. n 은 s 문자열의 길이 */

입니다

{

Int i;;

Longint a = 0;

For (i = 0;; Ilt;; N; I++) {

스위치 (s [n-I-1]) {

Default: a+= (s [n-I-1]-'0') * (long int) floor (pow (12, i));); 브레크;

Case' t': a+= 10 * (long int) floor (pow (12, i));); 브레크;

Case' e': a+= 11 * (long int) floor (pow (12, i));); 브레크;

}

}

Return a;;

}

인트메인 (void)

{

Long int a=fun2("eee ",3); /*' 12 진수' 숫자 eee 를 10 진수로 변환 */

Fun1 (a * a); /* 출력 a 의 제곱에 대한 12 진수 형식 */

Return 0;;

}

//------------------