CalcKit 8.6.0
See the version list below for details.
dotnet add package CalcKit --version 8.6.0
NuGet\Install-Package CalcKit -Version 8.6.0
<PackageReference Include="CalcKit" Version="8.6.0" />
<PackageVersion Include="CalcKit" Version="8.6.0" />
<PackageReference Include="CalcKit" />
paket add CalcKit --version 8.6.0
#r "nuget: CalcKit, 8.6.0"
#:package CalcKit@8.6.0
#addin nuget:?package=CalcKit&version=8.6.0
#tool nuget:?package=CalcKit&version=8.6.0
CalcKit
Библиотека бизнес-калькуляторов для типовых финансовых расчётов: кредиты, вклады, налоги, наценки, ROI, точка безубыточности и многое другое.
Все методы статические, без зависимостей — просто вызывайте BizCalc.Method(...).
Установка
dotnet add package CalcKit
Или через NuGet Package Manager:
Install-Package CalcKit
Пространство имён
using CalcKit;
Полный справочник API
Все методы находятся в статическом классе BizCalc.
BizCalc.CreditMonthlyPayment
Рассчитывает ежемесячный аннуитетный платёж по кредиту.
decimal CreditMonthlyPayment(decimal amount, int months, decimal annualRate)
| Параметр | Тип | Описание |
|---|---|---|
amount |
decimal |
Сумма кредита |
months |
int |
Количество месяцев |
annualRate |
decimal |
Годовая процентная ставка (в процентах) |
Возвращает: decimal — сумма ежемесячного платежа, округлённая до 2 знаков.
BizCalc.CreditSchedule
Генерирует график платежей по кредиту в виде DataTable.
DataTable CreditSchedule(decimal amount, int months, decimal annualRate)
| Параметр | Тип | Описание |
|---|---|---|
amount |
decimal |
Сумма кредита |
months |
int |
Количество месяцев |
annualRate |
decimal |
Годовая процентная ставка |
Возвращает: DataTable со столбцами: Месяц, Платёж, Основной долг, Проценты, Остаток.
BizCalc.DepositTotal
Рассчитывает итоговую сумму вклада с капитализацией процентов (ежемесячная капитализация).
decimal DepositTotal(decimal amount, int months, decimal annualRate)
| Параметр | Тип | Описание |
|---|---|---|
amount |
decimal |
Начальная сумма вклада |
months |
int |
Количество месяцев |
annualRate |
decimal |
Годовая процентная ставка |
Возвращает: decimal — итоговая сумма вклада.
BizCalc.UnemploymentBenefit
Рассчитывает пособие по безработице на основе предыдущей зарплаты и стажа. Первые 3 месяца: 80%, следующие 3 месяца: 70%, далее: 50%.
decimal UnemploymentBenefit(decimal previousSalary, int monthsOnRecord)
| Параметр | Тип | Описание |
|---|---|---|
previousSalary |
decimal |
Предыдущая зарплата |
monthsOnRecord |
int |
Количество месяцев на учёте |
Возвращает: decimal — размер пособия.
BizCalc.Discount
Рассчитывает цену со скидкой.
decimal Discount(decimal price, decimal discountPercent)
| Параметр | Тип | Описание |
|---|---|---|
price |
decimal |
Исходная цена |
discountPercent |
decimal |
Процент скидки |
Возвращает: decimal — цена после скидки.
BizCalc.IncomeTax
Рассчитывает подоходный налог (НДФЛ).
decimal IncomeTax(decimal salary, decimal rate = 13m)
| Параметр | Тип | Описание |
|---|---|---|
salary |
decimal |
Сумма дохода |
rate |
decimal |
Ставка налога в процентах (по умолчанию 13%) |
Возвращает: decimal — сумма налога.
BizCalc.NetSalary
Рассчитывает чистую зарплату после удержания НДФЛ (13%).
decimal NetSalary(decimal salary)
| Параметр | Тип | Описание |
|---|---|---|
salary |
decimal |
Зарплата до вычета |
Возвращает: decimal — зарплата после вычета НДФЛ.
BizCalc.DeliveryCost
Рассчитывает стоимость доставки: базовая цена + тариф за км + тариф за кг.
decimal DeliveryCost(decimal distanceKm, decimal weightKg, decimal basePrice = 300m, decimal perKm = 10m, decimal perKg = 5m)
| Параметр | Тип | Описание |
|---|---|---|
distanceKm |
decimal |
Расстояние в километрах |
weightKg |
decimal |
Вес в килограммах |
basePrice |
decimal |
Базовая стоимость (по умолчанию 300) |
perKm |
decimal |
Тариф за километр (по умолчанию 10) |
perKg |
decimal |
Тариф за килограмм (по умолчанию 5) |
Возвращает: decimal — итоговая стоимость доставки.
BizCalc.HotelCost
Рассчитывает стоимость проживания в отеле с учётом скидки.
decimal HotelCost(decimal pricePerNight, int nights, decimal discountPercent = 0m)
| Параметр | Тип | Описание |
|---|---|---|
pricePerNight |
decimal |
Стоимость за ночь |
nights |
int |
Количество ночей |
discountPercent |
decimal |
Процент скидки (по умолчанию 0) |
Возвращает: decimal — итоговая стоимость проживания.
BizCalc.TicketPrice
Рассчитывает стоимость билета: базовая цена * множитель класса + доплата за багаж.
decimal TicketPrice(decimal basePrice, decimal classMultiplier = 1m, decimal luggageKg = 0m, decimal luggagePricePerKg = 0m)
| Параметр | Тип | Описание |
|---|---|---|
basePrice |
decimal |
Базовая цена билета |
classMultiplier |
decimal |
Множитель класса (по умолчанию 1) |
luggageKg |
decimal |
Вес багажа в кг (по умолчанию 0) |
luggagePricePerKg |
decimal |
Цена за кг багажа (по умолчанию 0) |
Возвращает: decimal — итоговая стоимость билета.
BizCalc.LatePenalty
Рассчитывает пеню за просрочку платежа.
decimal LatePenalty(decimal amount, int daysLate, decimal dailyRate = 0.1m)
| Параметр | Тип | Описание |
|---|---|---|
amount |
decimal |
Сумма задолженности |
daysLate |
int |
Количество дней просрочки |
dailyRate |
decimal |
Дневная ставка в процентах (по умолчанию 0.1%) |
Возвращает: decimal — сумма пени.
BizCalc.Percent
Вычисляет процент от суммы.
decimal Percent(decimal amount, decimal percent)
| Параметр | Тип | Описание |
|---|---|---|
amount |
decimal |
Исходная сумма |
percent |
decimal |
Процент |
Возвращает: decimal — результат вычисления.
BizCalc.Markup
Рассчитывает цену с наценкой.
decimal Markup(decimal cost, decimal markupPercent)
| Параметр | Тип | Описание |
|---|---|---|
cost |
decimal |
Себестоимость |
markupPercent |
decimal |
Процент наценки |
Возвращает: decimal — цена с наценкой.
BizCalc.ROI
Рассчитывает рентабельность инвестиций (ROI) в процентах. Формула: (выручка - инвестиции) / инвестиции * 100.
decimal ROI(decimal investment, decimal revenue)
| Параметр | Тип | Описание |
|---|---|---|
investment |
decimal |
Сумма инвестиций |
revenue |
decimal |
Выручка |
Возвращает: decimal — ROI в процентах.
BizCalc.BreakEven
Рассчитывает точку безубыточности в единицах продукции. Формула: постоянные затраты / (цена за единицу - себестоимость за единицу).
decimal BreakEven(decimal fixedCosts, decimal pricePerUnit, decimal costPerUnit)
| Параметр | Тип | Описание |
|---|---|---|
fixedCosts |
decimal |
Постоянные затраты |
pricePerUnit |
decimal |
Цена за единицу продукции |
costPerUnit |
decimal |
Себестоимость единицы продукции |
Возвращает: decimal — количество единиц для выхода на безубыточность.
BizCalc.CompoundInterest
Рассчитывает итоговую сумму со сложным процентом. Формула: principal * (1 + annualRate / 100) ^ years.
decimal CompoundInterest(decimal principal, decimal annualRate, int years)
| Параметр | Тип | Описание |
|---|---|---|
principal |
decimal |
Начальная сумма |
annualRate |
decimal |
Годовая процентная ставка |
years |
int |
Количество лет |
Возвращает: decimal — итоговая сумма с учётом сложного процента.
BizCalc.MonthlyBudget
Рассчитывает месячный доход после уплаты налога. Формула: income * (1 - taxRate / 100).
decimal MonthlyBudget(decimal income, decimal taxRate = 13m)
| Параметр | Тип | Описание |
|---|---|---|
income |
decimal |
Доход до вычета налога |
taxRate |
decimal |
Ставка налога в процентах (по умолчанию 13%) |
Возвращает: decimal — чистый месячный доход.
BizCalc.PaybackPeriod
Рассчитывает срок окупаемости инвестиций в месяцах. Формула: investment / monthlyProfit.
decimal PaybackPeriod(decimal investment, decimal monthlyProfit)
| Параметр | Тип | Описание |
|---|---|---|
investment |
decimal |
Сумма инвестиций |
monthlyProfit |
decimal |
Ежемесячная прибыль |
Возвращает: decimal — количество месяцев до окупаемости.
BizCalc.ProfitMargin
Рассчитывает маржу прибыли в процентах. Формула: (revenue - costs) / revenue * 100.
decimal ProfitMargin(decimal revenue, decimal costs)
| Параметр | Тип | Описание |
|---|---|---|
revenue |
decimal |
Выручка |
costs |
decimal |
Затраты |
Возвращает: decimal — маржа прибыли в процентах.
BizCalc.SalaryPerHour
Конвертирует месячную зарплату в почасовую ставку. Расчёт: monthlySalary / (hoursPerWeek * 4.33).
decimal SalaryPerHour(decimal monthlySalary, int hoursPerWeek = 40)
| Параметр | Тип | Описание |
|---|---|---|
monthlySalary |
decimal |
Месячная зарплата |
hoursPerWeek |
int |
Рабочих часов в неделю (по умолчанию 40) |
Возвращает: decimal — почасовая ставка.
Сводная таблица методов
| Метод | Область | Описание |
|---|---|---|
CreditMonthlyPayment |
Банк | Ежемесячный платёж по кредиту |
CreditSchedule |
Банк | График платежей (DataTable) |
DepositTotal |
Банк | Сумма вклада с процентами |
UnemploymentBenefit |
Занятость | Пособие по безработице |
Discount |
Магазин | Цена со скидкой |
IncomeTax |
Налоги | Расчёт НДФЛ |
NetSalary |
Зарплата | Зарплата на руки |
Markup |
Магазин | Наценка на товар |
Percent |
Общее | Процент от суммы |
DeliveryCost |
Доставка | Стоимость доставки |
HotelCost |
Гостиница | Стоимость проживания |
TicketPrice |
Транспорт | Стоимость билета |
LatePenalty |
Штрафы | Пени за просрочку |
ROI |
Инвестиции | Рентабельность инвестиций |
BreakEven |
Инвестиции | Точка безубыточности |
CompoundInterest |
Финансы | Сложный процент |
MonthlyBudget |
Бюджет | Доход после налога |
PaybackPeriod |
Инвестиции | Срок окупаемости |
ProfitMargin |
Инвестиции | Маржа прибыли |
SalaryPerHour |
Зарплата | Почасовая ставка |
Примеры использования
Пример 1. Расчёт кредита и графика платежей
using CalcKit;
using System.Data;
// Кредит 500 000 руб. на 12 месяцев под 15% годовых
decimal payment = BizCalc.CreditMonthlyPayment(500_000m, 12, 15m);
Console.WriteLine($"Ежемесячный платёж: {payment} руб.");
DataTable schedule = BizCalc.CreditSchedule(500_000m, 12, 15m);
foreach (DataRow row in schedule.Rows)
{
Console.WriteLine($"Месяц {row["Месяц"]}: платёж {row["Платёж"]}, остаток {row["Остаток"]}");
}
Пример 2. Анализ инвестиций и бизнес-планирование
using CalcKit;
// Рентабельность инвестиций
decimal roi = BizCalc.ROI(1_000_000m, 1_350_000m);
Console.WriteLine($"ROI: {roi}%");
// Точка безубыточности: постоянные затраты 500 000, цена 1500, себестоимость 800
decimal breakEven = BizCalc.BreakEven(500_000m, 1500m, 800m);
Console.WriteLine($"Точка безубыточности: {breakEven} единиц");
// Срок окупаемости при прибыли 120 000 в месяц
decimal payback = BizCalc.PaybackPeriod(1_000_000m, 120_000m);
Console.WriteLine($"Срок окупаемости: {payback} месяцев");
// Маржа прибыли
decimal margin = BizCalc.ProfitMargin(1_350_000m, 1_000_000m);
Console.WriteLine($"Маржа прибыли: {margin}%");
// Сложный процент: 100 000 под 10% на 5 лет
decimal compound = BizCalc.CompoundInterest(100_000m, 10m, 5);
Console.WriteLine($"Сумма через 5 лет: {compound} руб.");
Пример 3. Расчёт зарплаты, налогов и бюджета
using CalcKit;
// Чистая зарплата после НДФЛ
decimal net = BizCalc.NetSalary(100_000m);
Console.WriteLine($"Чистая зарплата: {net} руб.");
// Почасовая ставка при 40-часовой рабочей неделе
decimal hourly = BizCalc.SalaryPerHour(100_000m);
Console.WriteLine($"Почасовая ставка: {hourly} руб.");
// Месячный бюджет после уплаты налога
decimal budget = BizCalc.MonthlyBudget(150_000m, 13m);
Console.WriteLine($"Бюджет после налога: {budget} руб.");
// Пособие по безработице (4-й месяц на учёте, 70% от зарплаты)
decimal benefit = BizCalc.UnemploymentBenefit(70_000m, 4);
Console.WriteLine($"Пособие: {benefit} руб.");
Лицензия
MIT
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net8.0
- No dependencies.
NuGet packages (1)
Showing the top 1 NuGet packages that depend on CalcKit:
| Package | Downloads |
|---|---|
|
ISBuilder
Information System Builder — full toolkit for building .NET 8 WinForms applications with EF Core, SQL Server. Export, CRUD, forms, charts, auth, reports, validation, themes. |
GitHub repositories
This package is not used by any popular GitHub repositories.