CnUnix

[알림판목록 I] [알림판목록 II] [글목록][이 전][다 음]
[ CnUnix ] in KIDS
글 쓴 이(By): blmarket (Neonsign)
날 짜 (Date): 2007년 10월 18일 목요일 오후 03시 35분 26초
제 목(Title): Re: 모듈로 문제 2


3항 연산자를 쓰면 뭔가 구려보이므로, 전 다음과 같이 해보겠습니다.

printf("%6d.%1d%%\n",a/10,abs(a%10));

일반적인 abs의 구현은 abs(a) = ((a<0)?-a:a) 이므로 3항 연산자를 사용합니다만, 이 경우엔

입력의 범위가 -9~9 까지이므로 다음 트릭을 써서

abs(a) = (a*(((a+10)/10)*2-1))  해결할 수 있습니다. 뭔가 욕나오네요.



[알림판목록 I] [알림판목록 II] [글 목록][이 전][다 음]
키 즈 는 열 린 사 람 들 의 모 임 입 니 다.