Задача "Заем". Программа на языке C

Обновлено: 28.09.2025

Задача. Исходя из суммы кредита, количества лет и процента, под который берется кредит, вычислить ежемесячную выплату, а также суммарную за все годы.

Месячные выплаты находятся по формуле


    m
    =
    
        
            n
            
            p
            
            
                
                    (
                    1
                    +
                    p
                    )
                
                y
            
        
        
            12
            
            (
                
                    
                        (
                            1
                            +
                            p
                        )
                    
                    y
                
                -
                1
            )
        
    

, где n - сумма кредита;
y - количество лет, на которые берется кредит;
p - процент, под который берется кредит (выражается в долях единицы);
m - ежемесячная выплата по кредиту.

Суммарная выплата (s) представляет собой выплаты за все месяцы каждого года:


    s
    =
    (
    m
    
    12
    )
    
    y

Пояснение. Для возведения в степень понадобится функции pow() библиотеки math.h. При этом в ваше ОС при компиляции с помощью gcc необходимо в конце команды указать ключ -lm.

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

int main() {
    int n, y;
    float p, m, s;

    printf("Сумма кредита (руб.): ");
    scanf("%d", &n);

    printf("Период (количество лет): ");
    scanf("%d", &y);

    printf("Процент: ");
    scanf("%f", &p);
    p = p / 100;

    m = (n * p * pow((1+p), y)) /
          (12 * (pow(1+p, y) - 1));
    s = m * 12 * y;

    printf("Ежемесячно: %.0f руб.\n", m);
    printf("Общая сумма: %.0f руб.\n", s);
}

Пример выполнения:

Сумма кредита (руб.): 1000000
Период (количество лет): 10
Процент: 12
Ежемесячно: 14749 руб.
Общая сумма: 1769842 руб.