Читаем C# 4.0: полное руководство полностью

Косинус угла 0.1 равен 0.995004165278026

Тангенс угла 0.1 равен 0.100334672085451


Синус угла 0.2 равен 0.198669330795061

Косинус угла 0.2 равен 0.980066577841242

Тангенс угла 0.2 равен 0.202710035508673


Синус угла 0.3 равен 0.29552020666134

Косинус угла 0.3 равен 0.955336489125606

Тангенс угла 0.3 равен 0.309336249609623


Для вычисления синуса, косинуса и тангенса угла в приведенном выше примере были использованы стандартные методы Math.Sin(), Math.Cos() и Math.Tan(). Как и метод Math.Sqrt(), эти тригонометрические методы вызываются с аргументом типа double и возвращают результат того же типа. Вычисляемые углы должны быть указаны в радианах.


Десятичный тип данных

Вероятно, самым интересным среди всех числовых типов данных в C# является тип decimal, который предназначен для применения в финансовых расчетах. Этот тип имеет разрядность 128 бит для представления числовых значений в пределах от 1Е-28 до 7,9Е+28. Вам, вероятно, известно, что для обычных арифметических вычислений с плавающей точкой характерны ошибки округления десятичных значений. Эти ошибки исключаются при использовании типа decimal, который позволяет представить числа с точностью до 28 (а иногда и 29) десятичных разрядов. Благодаря тому что этот тип данных способен представлять десятичные значения без ошибок округления, он особенно удобен для расчетов, связанных с финансами.

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


// Использовать тип decimal для расчета скидки.

using System;

class UseDecimal {

  static void Main() {

    decimal price;

    decimal discount;

    decimal discounted_price;

    // Рассчитать цену со скидкой,

    price = 19.95m;

    discount = 0.15m; // норма скидки составляет 15%

    discounted_price = price - ( price * discount);

    Console.WriteLine("Цена со скидкой: $" + discounted_price);

  }

}


Результат выполнения этой программы выглядит следующим образом.


Цена со скидкой: $16.9575


Обратите внимание на то, что значения констант типа decimal в приведенном выше примере программы указываются с суффиксом m. Дело в том, что без суффикса m эти значения интерпретировались бы как стандартные константы с плавающей точкой, которые несовместимы с типом данных decimal. Тем не менее переменной типа decimal можно присвоить целое значение без суффикса т, например 10. (Подробнее о числовых константах речь пойдет далее в этой главе.)

Рассмотрим еще один пример применения типа decimal. В этом примере рассчитывается будущая стоимость капиталовложений с фиксированной нормой прибыли в течение ряда лет.


/*

Применить тип decimal для расчета будущей стоимости капиталовложений.

*/

using System;

class FutVal {

  static void Main() {

    decimal amount;

    decimal rate_of_return;

    int years, i;

    amount = 1000.0M;

    rate_of_return = 0.07M;

    years = 10;


    Console.WriteLine("Первоначальные капиталовложения: $" + amount);

    Console.WriteLine("Норма прибыли: " + rate_of_return);

    Console.WriteLine("В течение " + years + " лет");


    for(i =0; i < years; i++)

        amount = amount + (amount * rate_of_return);


    Console.WriteLine("Будущая стоимость равна $" + amount);

  }

}


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


Первоначальные капиталовложения: $1000

Норма прибыли: 0.07

В течение 10 лет

Будущая стоимость равна $1967.151357289565322490000


Перейти на страницу:

Похожие книги

1001 совет по обустройству компьютера
1001 совет по обустройству компьютера

В книге собраны и обобщены советы по решению различных проблем, которые рано или поздно возникают при эксплуатации как экономичных нетбуков, так и современных настольных моделей. Все приведенные рецепты опробованы на практике и разбиты по темам: аппаратные средства персональных компьютеров, компьютерные сети и подключение к Интернету, установка, настройка и ремонт ОС Windows, работа в Интернете, защита от вирусов. Рассмотрены не только готовые решения внезапно возникающих проблем, но и ответы на многие вопросы, которые возникают еще до покупки компьютера. Приведен необходимый минимум технических сведений, позволяющий принять осознанное решение.Компакт-диск прилагается только к печатному изданию книги.

Юрий Всеволодович Ревич

Программирование, программы, базы данных / Интернет / Компьютерное «железо» / ОС и Сети / Программное обеспечение / Книги по IT
Разработка приложений в среде Linux. Второе издание
Разработка приложений в среде Linux. Второе издание

Книга известных профессионалов в области разработки коммерческих приложений в Linux представляет СЃРѕР±РѕР№ отличный справочник для широкого круга программистов в Linux, а также тех разработчиков на языке С, которые перешли в среду Linux из РґСЂСѓРіРёС… операционных систем. РџРѕРґСЂРѕР±но рассматриваются концепции, лежащие в основе процесса создания системных приложений, а также разнообразные доступные инструменты и библиотеки. Среди рассматриваемых в книге вопросов можно выделить анализ особенностей применения лицензий GNU, использование СЃРІРѕР±одно распространяемых компиляторов и библиотек, системное программирование для Linux, а также написание и отладка собственных переносимых библиотек. Р

Майкл К. Джонсон , Эрик В. Троан

Программирование, программы, базы данных