KnigaRead.com/
KnigaRead.com » Разная литература » Прочее » Герберт Шилдт - C# 4.0 полное руководство - 2011

Герберт Шилдт - C# 4.0 полное руководство - 2011

На нашем сайте KnigaRead.com Вы можете абсолютно бесплатно читать книгу онлайн "Герберт Шилдт - C# 4.0 полное руководство - 2011". Жанр: Прочее издательство неизвестно, год неизвестен.
Перейти на страницу:

первоначальные капиталовложения =

будущая стоимость / (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 {

ftitVal = 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;

}

initlnvest =

futVal / (decimal) Math.Pow(intRate+1.0, numYears);

Console.WriteLine("Необходимые первоначальные капиталовложения: {0:C}", initlnvest);

}

}

Ниже приведен один из возможных результатов выполнения этой программы.

Введите будущую стоимость: 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. Тип

I Format Provide г вкратце описывается далее в этой главе, а тип NumberStyles представляет собой перечисление из пространства имен System.Globalization. Вопросы форматирования подробнее рассматриваются в главе 22.

Структуры целочисленных типов данных

Ниже перечислены структуры целочисленных типов данных.

Byte

SByte

I n 116

Uintl6

Int32

UInt32

Int64

Uint64

Каждая из этих структур содержит одинаковое количество членов. В табл. 21.2 для примера перечислены члены структуры Int32. Аналогичные члены в виде методов имеются и у других структур, за исключением целочисленного типа, который они представляют.

Помимо перечисленных выше методов, в структурах целочисленных типов данных определены следующие поля типа const.

MaxValue

MinValue

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

Во всех структурах целочисленных типов данных реализуются следующие интерфейсы: IComparable, IComparable<T>, IConvertible, IFormattable

и IEquatable<T>, где параметр обобщенного типа Т заменяется соответствующим типом данных. Например, в структуре Int32 вместо Т подставляется тип int.

Метод

Назначение

public int

Сравнивает числовое значение вызывающего объекта со

CompareTo(object value)

значением value. Возвращает нуль, если сравниваемые значения равны; отрицательное значение, если вызывающий объект имеет меньшее значение; и, наконец, положительное значение, если вызывающий объект имеет большее значение

public int CompareTo(int

Сравнивает числовое значение вызывающего объекта со

value)

значением value. Возвращает нуль, если сравниваемые значения равны; отрицательное значение, если вызывающий объект имеет меньшее значение; и, наконец, положительное значение, если вызывающий объект имеет большее значение

public override bool

Возвращает логическое значение true, если значе

Equals(object obj)

ние вызывающего объекта равно значению параметра

obj

public bool Equals(int

Возвращает логическое значение true, если значе

obj)

ние вызывающего объекта равно значению параметра

obj

public override int

Возвращает хеш-код для вызывающего объекта

GetHashCode()

public TypeCode

Возвращает значение перечисления TypeCode для экви

GetTypeCode()

валентного типа. Например, для структуры Int32 возвращается значение TypeCode. Int32

public static int

Возвращает двоичный эквивалент числа, заданного

Parse(string s)

в виде символьной строки s. Если числовое значение не представлено в строке так, как определено в структуре данного типа, то генерируется исключение

public static int

Возвращает двоичный эквивалент числа, заданного

Parse(string s,

в виде символьной строки s, с использованием фор

IformatProvider

матов данных, характерных для конкретной культурной

provi der)

среды и определяемых параметром provider. Если числовое значение не представлено в строке так, как определено в структуре данного типа, то генерируется исключение

public static int

Возвращает двоичный эквивалент числа, заданного

Parse(string s,

в виде символьной строки s, с использованием дан

NumberStyles styles)

ных о стилях, определяемых параметром styles. Если числовое значение не представлено в строке так, как определено в структуре данного типа, то генерируется исключение

Метод

Назначение

public static int

Возвращает двоичный эквивалент числа, заданного в виде

Parse(string s,

строки символьной s, с использованием данных о стилях,

NumberStyles styles,

определяемых параметром styles, а также форматов

IformatProvider

данных, характерных для конкретной культурной среды

provi der)

и определяемых параметром provider. Если числовое значение не представлено в строке так, как определено в структуре данного типа, то генерируется исключение

public override

string

Возвращает строковое представление значения вызы

ToString()

вающего объекта

public string

Возвращает строковое представление значения вызы

ToString(string

format)

Перейти на страницу:
Прокомментировать
Подтвердите что вы не робот:*