C 언어로 복리 계산하기

CBeginner
지금 연습하기

소개

원금, 이율, 기간 읽기

이 단계에서는 C 프로그램에서 복리 계산을 위해 원금, 이율, 기간을 읽는 방법을 배웁니다. 이를 위해 사용자 입력을 받아 처리하는 간단한 프로그램을 만들어 보겠습니다.

먼저 프로젝트 디렉토리에 새로운 C 파일을 생성합니다.

cd ~/project
nano compound_interest.c

이제 입력 매개변수를 읽는 다음 코드를 추가합니다.

#include <stdio.h>

int main() {
    // 원금, 이율, 기간을 저장할 변수 선언
    float principal, rate, time;

    // 원금 입력
    printf("원금을 입력하세요: ");
    scanf("%f", &principal);

    // 연이율 입력 (퍼센트 단위)
    printf("연이율을 입력하세요 (퍼센트 단위): ");
    scanf("%f", &rate);

    // 기간 입력 (년 단위)
    printf("기간을 입력하세요 (년 단위): ");
    scanf("%f", &time);

    // 입력 값 확인을 위해 출력
    printf("\n입력 매개변수:\n");
    printf("원금: $%.2f\n", principal);
    printf("연이율: %.2f%%\n", rate);
    printf("기간: %.2f 년\n", time);

    return 0;
}

프로그램을 컴파일하고 실행합니다.

gcc compound_interest.c -o compound_interest
./compound_interest

예시 출력:

원금을 입력하세요: 1000
연이율을 입력하세요 (퍼센트 단위): 5
기간을 입력하세요 (년 단위): 3

입력 매개변수:
원금: $1000.00
연이율: 5.00%
기간: 3.00년
설명
  • 금융 계산을 위해 소수점 값을 저장하기 위해 float 변수를 사용합니다.
  • printf()를 사용하여 사용자에게 프롬프트와 지시사항을 표시합니다.
  • scanf()를 사용하여 사용자 입력 (원금, 이율, 기간) 을 읽습니다.
  • %.2f 형식 지정자를 사용하여 소수점 이하 두 자리까지 표시합니다.

복리 계산 (A = P * (1+R)^T)

이 단계에서는 복리 계산 공식 A = P * (1 + R)^T 를 사용하는 방법을 배웁니다. 여기서:

  • A = 최종 금액
  • P = 원금
  • R = 연이율 (소수점으로 표현)
  • T = 기간 (년 단위)

이전 프로그램을 수정하여 복리 계산을 포함시켜 보겠습니다.

cd ~/project
nano compound_interest.c

복리 계산을 포함하여 프로그램을 업데이트합니다.

#include <stdio.h>
#include <math.h>

int main() {
    // 원금, 이율, 기간, 최종 금액을 저장할 변수 선언
    float principal, rate, time, amount;

    // 원금 입력
    printf("원금을 입력하세요: ");
    scanf("%f", &principal);

    // 연이율 입력 (퍼센트 단위)
    printf("연이율을 입력하세요 (퍼센트 단위): ");
    scanf("%f", &rate);

    // 기간 입력 (년 단위)
    printf("기간을 입력하세요 (년 단위): ");
    scanf("%f", &time);

    // 이율을 소수점으로 변환
    rate = rate / 100;

    // 복리 계산
    amount = principal * pow(1 + rate, time);

    // 결과 출력
    printf("\n입력 매개변수:\n");
    printf("원금: $%.2f\n", principal);
    printf("연이율: %.2f%%\n", rate * 100);
    printf("기간: %.2f 년\n", time);
    printf("\n복리 계산 결과:\n");
    printf("최종 금액: $%.2f\n", amount);
    printf("총 이자 수익: $%.2f\n", amount - principal);

    return 0;
}

수학 라이브러리와 함께 프로그램을 컴파일합니다.

gcc compound_interest.c -o compound_interest -lm

프로그램을 실행합니다.

./compound_interest

예시 출력:

원금을 입력하세요: 1000
연이율을 입력하세요 (퍼센트 단위): 5
기간을 입력하세요 (년 단위): 3

입력 매개변수:
원금: $1000.00
연이율: 5.00%
기간: 3.00년

복리 계산 결과:
최종 금액: $1157.63
총 이자 수익: $157.63
설명
  • 거듭제곱 연산을 위해 math.h 헤더 파일을 포함합니다.
  • rate = rate / 100으로 퍼센트를 소수점으로 변환합니다.
  • amount = principal * pow(1 + rate, time)으로 최종 금액을 계산합니다.
  • 컴파일 시 -lm 플래그를 사용하여 수학 라이브러리를 연결합니다.

최종 금액 출력

이 마지막 단계에서는 복리 계산 프로그램을 개선하여 서식이 지정된 출력을 추가하고 재무 결과를 더욱 명확하게 표현합니다.

이전 프로그램을 수정하여 결과 서식을 개선해 보겠습니다.

cd ~/project
nano compound_interest.c

개선된 출력 서식으로 프로그램을 업데이트합니다.

#include <stdio.h>
#include <math.h>

int main() {
    // 원금, 이율, 기간, 최종 금액, 이자를 저장할 변수 선언
    float principal, rate, time, amount, interest;

    // 원금 입력
    printf("복리 계산기\n");
    printf("----------------------------\n");
    printf("원금을 입력하세요: ");
    scanf("%f", &principal);

    // 연이율 입력 (퍼센트 단위)
    printf("연이율을 입력하세요 (퍼센트 단위): ");
    scanf("%f", &rate);

    // 기간 입력 (년 단위)
    printf("기간을 입력하세요 (년 단위): ");
    scanf("%f", &time);

    // 이율을 소수점으로 변환
    rate = rate / 100;

    // 복리 계산
    amount = principal * pow(1 + rate, time);
    interest = amount - principal;

    // 서식이 지정된 재무 결과 출력
    printf("\n===== 재무 계산 결과 =====\n");
    printf("초기 원금:     $%10.2f\n", principal);
    printf("연이율:         %10.2f%%\n", rate * 100);
    printf("투자 기간:      %10.2f 년\n", time);
    printf("-------------------------------------------\n");
    printf("최종 금액:      $%10.2f\n", amount);
    printf("총 이자 수익:  $%10.2f\n", interest);
    printf("==========================================\n");

    return 0;
}

프로그램을 컴파일합니다.

gcc compound_interest.c -o compound_interest -lm

프로그램을 실행합니다.

./compound_interest

예시 출력:

복리 계산기
----------------------------
원금을 입력하세요: 1000
연이율을 입력하세요 (퍼센트 단위): 5
기간을 입력하세요 (년 단위): 3

===== 재무 계산 결과 =====
초기 원금:     $   1000.00
연이율:         5.00%
투자 기간:      3.00년
-------------------------------------------
최종 금액:      $   1157.63
총 이자 수익:  $    157.63
==========================================
설명
  • 더욱 설명적인 헤더와 구분자를 추가했습니다.
  • 정렬되고 고정 너비의 소수점 출력을 위해 %10.2f 형식 지정자를 사용했습니다.
  • 명확한 표현을 위해 이자를 별도로 계산했습니다.
  • 제목과 구조화된 재무 결과 표시를 포함했습니다.

요약

이 실습에서는 C 프로그램에서 복리 계산을 위해 원금, 이자율, 기간을 읽는 방법을 배웠습니다. 사용자에게 이러한 재무 매개변수를 입력하도록 요청하고 입력 값을 출력하여 확인하는 간단한 프로그램을 만들었습니다. 다음으로, A = P * (1 + R)^T 라는 수학 공식을 사용하여 복리 계산을 수행하는 방법을 배울 것입니다. 여기서 A 는 최종 금액, P 는 원금, R 은 이자율, T 는 기간입니다.