Рассмотрим простейшую схему кредитования (и самую невыгодную для заёмщика), когда за каждый год отдается фиксированный процент p от первоначальной суммы кредита k без учета того, что часть кредита уже погашена за предыдущие годы. В этом случае ежегодная сумма процентов по кредиту составит Sk=k×p%/100%. За n лет будет отдано n×Sk. И еще нужно вернуть саму сумму кредита k. Итого нужно вернуть k+n×Sk. Доход за это время составит n×r и получаем неравенство n×r ≥ n×Sk+k n×(r-Sk) ≥ k → n ≥ k/(r-Sk) с округлением до целых в большую сторону.
// PascalABC.NET 3.3, сборка 1583 от 25.11.2017 // Внимание! Если программа не работает, обновите версию!
begin var (k,p):=ReadReal2('Сумма кредита и процент годовых:'); var r:=ReadReal('Предполагаемый годовой доход:'); var Sk:=k*p/100; if r<=Sk then Writeln('Рассчитаться за кредит невозможно') else Writeln('Количество лет на погашение кредита: ',Floor(k/(r-Sk))) end.
Пример Сумма кредита и процент годовых:10 0000 16 Предполагаемый годовой доход: 24000 Количество лет на погашение кредита: 12
Трехразрядное число содержит вторую степень основания. Это дает возможность сделать оценку верхнего значения основания системы счисления. 9² < √(73) < 8², поэтому система счисления не может иметь основание, большее 8. Четырехразрядное число содержит третью степень основания. Это дает возможность сделать оценку нижнего значения основания системы счисления. 5³ < ∛(73) < 4³, поэтому система счисления не может иметь основание, меньшее 5. Итак, у нас четыре претендента: натуральное n∈[5;8]
Для системы счисления по основанию n получаем уравнение an²+bn+c=73
Для n=8 получим 64a+8b+c=73; a,b,c<8 Понятно, что a=1, тогда 8b+c=9. И тут понятно, что b=1 и тогда с=1. Проверим. 111₈ = 1×8²+1×8+1=64+8+1=73
Нет смысла проверять n=7 и т.д., поскольку нам нужно наибольшее возможное основание.
В этом случае ежегодная сумма процентов по кредиту составит Sk=k×p%/100%.
За n лет будет отдано n×Sk. И еще нужно вернуть саму сумму кредита k.
Итого нужно вернуть k+n×Sk.
Доход за это время составит n×r и получаем неравенство
n×r ≥ n×Sk+k
n×(r-Sk) ≥ k → n ≥ k/(r-Sk) с округлением до целых в большую сторону.
// PascalABC.NET 3.3, сборка 1583 от 25.11.2017
// Внимание! Если программа не работает, обновите версию!
begin
var (k,p):=ReadReal2('Сумма кредита и процент годовых:');
var r:=ReadReal('Предполагаемый годовой доход:');
var Sk:=k*p/100;
if r<=Sk then Writeln('Рассчитаться за кредит невозможно')
else Writeln('Количество лет на погашение кредита: ',Floor(k/(r-Sk)))
end.
Пример
Сумма кредита и процент годовых:10 0000 16
Предполагаемый годовой доход: 24000
Количество лет на погашение кредита: 12
Это дает возможность сделать оценку верхнего значения основания системы счисления.
9² < √(73) < 8², поэтому система счисления не может иметь основание, большее 8.
Четырехразрядное число содержит третью степень основания. Это дает возможность сделать оценку нижнего значения основания системы счисления.
5³ < ∛(73) < 4³, поэтому система счисления не может иметь основание, меньшее 5.
Итак, у нас четыре претендента: натуральное n∈[5;8]
Для системы счисления по основанию n получаем уравнение
an²+bn+c=73
Для n=8 получим 64a+8b+c=73; a,b,c<8
Понятно, что a=1, тогда 8b+c=9. И тут понятно, что b=1 и тогда с=1.
Проверим. 111₈ = 1×8²+1×8+1=64+8+1=73
Нет смысла проверять n=7 и т.д., поскольку нам нужно наибольшее возможное основание.
ответ: 8