2012/04/30 7

대화형 모드의 진법(radix) 변환 예제 with Objective-C

다음은 대화형 모드(interactive mode)에서 진법 변환(radix conversion)하는 Objective-C 소스 코드이다. 이 소스는 C 언어 용으로 만들어 두었던 것을 아주 조금 수정한 것이다. 19쩨 줄의 enum { FALSE, TRUE }; 부분은 주석 처리하였는데. Objective-C에서는 TRUE와 FALSE가 이미 정의되어 있기 때문이다. 메뉴는 주메뉴 Command: (S)et radix, (A)bout, (Q)uit or E(x)it 와 부메뉴 SubCommand: 'main()' to goto Main menu, 'exit()' or 'quit()' to exit 로 구성되어 있으며, 진법 변환을 하는 핵심 함수 convertAtoI()와 convertItoA()의 소..

황금비율(golden ratio) 구하기 with Objective-C

다음은 이차방정식 x^2 - x - 1 = 0 의 양의 근 즉 황금비율(golden ratio)을 구하는 C 애플리케이션 소스이다. 황금비율을 구하는 비례방정식은 1 : x = x : (x+1) 이며, 이를 이차방정식으로 표현한 것이 x^2 - x - 1 = 0 이다. See: Golden ratio - Sajun.org 아래의 소스파일은 C 언어용으로 민들어 두었던 소스 황금비율(golden ratio) 구하기 withfC and Ch 를 아주 조금 수정한 것이다. 수정한 부분은 #include를 #import로 바꾸고, 또 #import 를 추가하고, 또 double 타입의 부동소수점수를 출력하기위한 printf 포맷에 %lf 대신 %g를 사용하역다. (만일 Foundation.h 를 수입(impor..

현재 시각 알아내기 for Objective-C

현재 시각을 컨솔에 보여주는 간단한 애플리케이션의 Objective-C 언어 소스 코드이다. UTC란 1970년 1월 1일 0시 0분 0초를 기준으로 하여 경과된 초 단위의 총 시간을 의미한다. * UTC(Universal Time Coordinated, 협정세계시, 協定世界時) 아래의 소스파일은 C 언어용으로 민들어 두었던 소스 현재 시각 알아내기 for C and Ch 를 아주 조금 수정한 것이다. 수정한 부분은 #include를 #import로 바꾸고, 또 #import 를 추가했을 뿐이다. 이 소스에서는 이 수입 구문이 없어도 된다. 컴파일은 Dev-C++ 개발 도구에서 Ctrl+F11 을 클릭한다. /* * Filename: testCTimeMain.m * * Compile: Click Ctrl..

리눅스 환경에 MPFR 설치와 테스트

우선 위키피디아에서 소개하는 MPFR의 설명을 보자 GNU MPFR (for GNU Multiple Precision Floating-Point Reliably[1]) is a portable C library for arbitrary-precision binary floating-point computation with correct rounding, based on GNU Multi-Precision Library. 또 다음은 MPFR 홈페이지에서 소개하는 MPFR의 의미이다. The main goal of MPFR is to provide a library for multiple-precision floating-point computation which is both efficient and ha..

프로그래밍/C 2012.04.30

조립제법(Horner의 방법) 예제 for Objecrive-C

다항식 p(x) 를 1차 다항식 x - a 로 나눌 때의 몫과 나머지를 구하는 조립제법을 Objectiive-C 언어로 구현해 보았다. 조립제법은 일명 Horner의 방법이라고도 불리우는데, 이는 x = a 에서 다항식 p(x)의 값 p(a)을 계산하는 가장 빠른 알고리즘이기도 하다. p(x) = (x - a)q(x) + r 여기서 r은 나머지이며 r = p(a) 이다. 또 q(x)는 몫이다. [참고] * 온라인으로 조립제법 표 만들기 손으로 계산하는 조립제법 표 * 온라인으로 구하는 다항식의 도함수: 조립제법을 이용한 다항식의 도함수 아래의 소스파일은 C 언어용으로 민들어 두었던 소스 조립제법(Horner의 방법) 예제 for C and Ch 를 아주 조금 수정한 것이다. 수정한 부분은 #include..

80컬럼 컨솔에 19단표 출력하기 예제 for Objective-C

다음은 C용으로 만들어 둔 소스파일 testForFor.c(참조: 80컬럼 컨솔에 19단표 출력하기 예제 for C )를 Objective-C용 소스로 고친 것이다. 고쳐진 내용은 #import 부근 뿐이다. 특히 #import 가 중요하다. 스트링을 처리하고 전달하기 위해 메모리 할당(allocation)과 해제(free)를 하면서 동적 메모리(dynamic memory)를 이용하고 있다. /* * Filename: testForForMain.m * * Compile: Click Ctrl+F11 on Dev-C++ * * Execute: testForFor * * Date: 2012. 4. 30. */ #import #import #import #import // 매개변수 dan으로 지정된 한 단의 결..

(최대공약수 구하기) while... 반복문 예제 for Objective-C

소스 파일명: testWhileMain.m /* * Filename: testWhileMain.cm * * Purpose: Example using the while loop syntax * while .... * * Execute: testWhile -200 300 */ #import // strtol, abs, exit 등을 위해 필요 #import #import #import // 사용법 표시 void printUsage() { printf("Using: testWhile [integer1] [integer2]\n"); printf("This finds the greatest common divisor of the given two integers.\n"); } int main(int argc, c..