Далее следует пример программы, в которой метод Pow()
служит для расчета первоначальных капиталовложений, требующихся для получения предполагаемой будущей стоимости, исходя из годовой нормы прибыли и количества лет. Ниже приведена формула для расчета первоначальных капиталовложений.
первоначальные капиталовложения =
будущая стоимость / (1 + норма прибыли)количество лет
В вызове метода Pow() необходимо указывать аргументы типа double, поэтому норма прибыли и количество лет задаются в виде значений типа double
. А первоначальные капиталовложения и будущая стоимость задаются в виде значений типа decimal
.
/* Рассчитать первоначальные капиталовложения, необходимые для получения заданной будущей стоимости, исходя из годовой нормы прибыли и количества лет. */
using System;
class Initiallnvestment {
static void Main() {
decimal initInvest; // первоначальные капиталовложения
decimal futVal; // будущая стоимость
double numYears; // количество лет
double intRate; // годовая норма прибыли
string str;
Console.Write("Введите будущую стоимость: ");
str = Console.ReadLine();
try {
futVal = Decimal.Parse(str);
}
catch (FormatException exc) {
Console.WriteLine(exc.Message);
return;
}
Console.Write("Введите норму прибыли (например, 0.085): ");
str = Console.ReadLine();
try {
intRate = Double.Parse(str);
}
catch (FormatException exc) {
Console.WriteLine(exc.Message);
return;
}
Console.Write("Введите количество лет: ");
str = Console.ReadLine();
try {
numYears = Double.Parse(str);
}
catch (FormatException exc) {
Console.WriteLine(exc.Message);
return;
}
initInvest =
futVal / (decimal)Math.Pow(intRate + 1.0, numYears);
Console.WriteLine("Необходимые первоначальные капиталовложения: {0:C}", initInvest);
}
}
Ниже приведен один из возможных результатов выполнения этой программы.
Введите будущую стоимость: 10000
Введите норму прибыли (например, 0.085): 0.07
Введите количество лет: 10
Необходимые первоначальные капиталовложения: $5,083.49
Структуры .NET, соответствующие встроенным типам значений
Структуры, соответствующие встроенным в C# типам значений, были представлены в главе 14, где они упоминались в связи с преобразованием строк, содержащих числовые значения в удобочитаемой форме, в эквивалентные двоичные значения. В этом разделе структуры .NET рассматриваются более подобно.
Имена структур .NET и соответствующие им ключевые слова, обозначающие типы значений в С#, перечислены в приведенной ниже таблице.
Имя структуры в .NET
Имя типа значения в C#
System.Boolean
bool
System.Char
char
System.Decimal
decimal
System.Double
double
System.Single
float
System.Intl6
short
System.Int32
int
System.Int64
long
System.Ulntl6
ushort
System.UInt32
uint
System.UInt64
ulong
System.Byte
byte
System.Sbyte
sbyte
Используя члены, определенные в этих структурах, можно выполнять операции над значениями простых типов данных. Все перечисленные выше структуры рассматриваются далее по порядку.
---------------------------
ПРИМЕЧАНИЕ
Некоторые методы, определенные в структурах, соответствующих встроенным в C# типам значений, принимают параметры типа IFormatProvider
или NumberStyles
. Тип