Вычисление одного шага амортизации кредита на C

CBeginner
Практиковаться сейчас

Введение

В этом лабораторном практикуме вы научитесь вычислять один шаг амортизации кредита на языке C. Практикум охватывает основные этапы расчета амортизации кредита, включая чтение значения основного долга, процентной ставки и суммы платежа, а также вычисление процентной и основной частей платежа. К концу этого практикума вы получите более глубокое понимание финансовой математики и расчетов процентов с использованием программирования на языке C.

Чтение Основного Долга, Ставки и Платежа

В этом шаге вы узнаете, как вводить и считывать основные параметры, необходимые для расчета амортизации кредита на языке C: сумму основного долга, процентную ставку и сумму платежа.

Сначала создадим файл исходного кода C для нашей программы расчета амортизации кредита:

cd ~/project
nano loan_amortization.c

Теперь добавьте следующий код в файл:

#include <stdio.h>

int main() {
    double principal, rate, payment;

    // Ввод суммы основного долга
    printf("Введите сумму основного долга: ");
    scanf("%lf", &principal);

    // Ввод годовой процентной ставки
    printf("Введите годовую процентную ставку (в процентах): ");
    scanf("%lf", &rate);

    // Ввод ежемесячной суммы платежа
    printf("Введите ежемесячную сумму платежа: ");
    scanf("%lf", &payment);

    // Вывод введенных значений
    printf("\nДетали кредита:\n");
    printf("Основной долг: $%.2f\n", principal);
    printf("Годовая процентная ставка: %.2f%%\n", rate);
    printf("Ежемесячный платеж: $%.2f\n", payment);

    return 0;
}

Компилируем и запускаем программу:

gcc loan_amortization.c -o loan_amortization
./loan_amortization

Пример вывода:

Введите сумму основного долга: 10000
Введите годовую процентную ставку (в процентах): 5.5
Введите ежемесячную сумму платежа: 200

Детали кредита:
Основной долг: $10000.00
Годовая процентная ставка: 5.50%
Ежемесячный платеж: $200.00

Вычисление Процентной и Основной Частей Платежа

В этом шаге вы научитесь вычислять процентную и основную части платежа по кредиту, используя формулы финансовой математики.

Откройте предыдущий файл loan_amortization.c и измените его, включив логику расчета:

cd ~/project
nano loan_amortization.c

Обновите код с функциями расчета:

#include <stdio.h>

// Функция для расчета ежемесячных процентов
double calculateMonthlyInterest(double principal, double annualRate) {
    double monthlyRate = annualRate / 12 / 100;
    return principal * monthlyRate;
}

// Функция для расчета основной части платежа
double calculatePrincipalPortion(double payment, double monthlyInterest) {
    return payment - monthlyInterest;
}

int main() {
    double principal, rate, payment;
    double monthlyInterest, principalPortion;

    // Предыдущий код ввода остается без изменений
    printf("Введите сумму основного долга: ");
    scanf("%lf", &principal);

    printf("Введите годовую процентную ставку (в процентах): ");
    scanf("%lf", &rate);

    printf("Введите ежемесячную сумму платежа: ");
    scanf("%lf", &payment);

    // Вычисление процентной и основной частей платежа
    monthlyInterest = calculateMonthlyInterest(principal, rate);
    principalPortion = calculatePrincipalPortion(payment, monthlyInterest);

    // Вывод результатов расчета
    printf("\nДетали платежа по кредиту:\n");
    printf("Ежемесячные проценты: $%.2f\n", monthlyInterest);
    printf("Основная часть платежа: $%.2f\n", principalPortion);
    printf("Остаток основного долга: $%.2f\n", principal - principalPortion);

    return 0;
}

Компилируем и запускаем обновленную программу:

gcc loan_amortization.c -o loan_amortization
./loan_amortization

Пример вывода:

Введите сумму основного долга: 10000
Введите годовую процентную ставку (в процентах): 5.5
Введите ежемесячную сумму платежа: 200

Детали платежа по кредиту:
Ежемесячные проценты: $45.83
Основная часть платежа: $154.17
Остаток основного долга: $9845.83

Вывод Обновленного Основного Долга

В этом шаге вы узнаете, как отслеживать и выводить обновленный остаток основного долга после каждого платежа по кредиту, демонстрируя процесс амортизации кредита.

Откройте предыдущий файл loan_amortization.c и измените его, включив итерации по нескольким платежам:

cd ~/project
nano loan_amortization.c

Обновите код для моделирования нескольких платежей по кредиту:

#include <stdio.h>

// Предыдущие функции остаются без изменений
double calculateMonthlyInterest(double principal, double annualRate) {
    double monthlyRate = annualRate / 12 / 100;
    return principal * monthlyRate;
}

double calculatePrincipalPortion(double payment, double monthlyInterest) {
    return payment - monthlyInterest;
}

int main() {
    double principal, rate, payment;
    int totalPayments;

    // Ввод данных по кредиту
    printf("Введите сумму основного долга: ");
    scanf("%lf", &principal);

    printf("Введите годовую процентную ставку (в процентах): ");
    scanf("%lf", &rate);

    printf("Введите ежемесячную сумму платежа: ");
    scanf("%lf", &payment);

    printf("Введите общее количество платежей: ");
    scanf("%d", &totalPayments);

    // Вывод начальных данных по кредиту
    printf("\nНачальные данные по кредиту:\n");
    printf("Основной долг: $%.2f\n", principal);
    printf("Годовая процентная ставка: %.2f%%\n", rate);
    printf("Ежемесячный платеж: $%.2f\n\n", payment);

    // Моделирование амортизации кредита
    for (int month = 1; month <= totalPayments; month++) {
        double monthlyInterest = calculateMonthlyInterest(principal, rate);
        double principalPortion = calculatePrincipalPortion(payment, monthlyInterest);

        // Обновление основного долга
        principal -= principalPortion;

        // Вывод ежемесячного разбиения
        printf("Платеж %d:\n", month);
        printf("Ежемесячные проценты: $%.2f\n", monthlyInterest);
        printf("Основная часть платежа: $%.2f\n", principalPortion);
        printf("Остаток основного долга: $%.2f\n\n", principal);
    }

    return 0;
}

Компилируем и запускаем обновленную программу:

gcc loan_amortization.c -o loan_amortization
./loan_amortization

Пример вывода:

Введите сумму основного долга: 10000
Введите годовую процентную ставку (в процентах): 5.5
Введите ежемесячную сумму платежа: 200
Введите общее количество платежей: 3

Начальные данные по кредиту:
Основной долг: $10000.00
Годовая процентная ставка: 5.50%
Ежемесячный платеж: $200.00

Платеж 1:
Ежемесячные проценты: $45.83
Основная часть платежа: $154.17
Остаток основного долга: $9845.83

Платеж 2:
Ежемесячные проценты: $45.04
Основная часть платежа: $154.96
Остаток основного долга: $9690.87

Платеж 3:
Ежемесячные проценты: $44.25
Основная часть платежа: $155.75
Остаток основного долга: $9535.12

Резюме

В этом лабораторном практикуме вы научитесь читать основные параметры, необходимые для расчета амортизации кредита на C, включая сумму основного долга, процентную ставку и сумму платежа. Вы также изучите, как вычислять процентную и основную части платежа по кредиту, используя формулы финансовой математики. По окончании этого практикума вы получите базовое понимание шагов, вовлеченных в вычисление одного шага амортизации кредита на языке C.