Задание 1.
Разработать unit-тесты для тестирования метода Ньютона вычисления корня n-ой степени числа
(задание предыдущего дня).
Задание 2.
Дан класс Customer, у которого есть строковые свойства Name, ContactPhone и
свойство Revenue типа decimal. Реализовать для объектов данного класса возможность
строкового представления различного вида. Например, для объекта со значениями Name =
"Jeffrey Richter", Revenue = 1000000, ContactPhone = "+1 (425) 555-0100", могут быть следующие
варианты:
Customer record: Jeffrey Richter, 1,000,000.00, +1 (425) 555-0100
Customer record: +1 (425) 555-0100
Customer record: Jeffrey Richter, 1,000,000.00
Customer record: Jeffrey Richter
Customer record: 1000000 и т.д.
Добавить для объектов данного класса дополнительную возможность форматирования (класс
при этом не менять!), не предусмотренную классом.
Разработать unit-тесты.
Задание 3.
Расширить для целых чисел возможность форматного вывода, добавив представление в
шестнадцатиричной системе счисления (класс Convert не использовать!). Разработать unit-
тесты.
Задание 4.
Разработать тип, в котором реализовать алгоритм Евклида для вычисления НОД двух целых
чисел (http://en.wikipedia.org/wiki/Euclidean_algorithm). Метод должен также определять
значение времени (https://msdn.microsoft.com/ru-
ru/library/system.diagnostics.stopwatch_methods(v=vs.110).aspx), необходимое для выполнения
расчета. Добавить к разработанному типу дополнительную функциональность в виде
перегруженных методов вычисления НОД для трех и т.д. целых чисел.
Добавить к разработанному типу метод, реализующий алгоритм Стейна (бинарный алгоритм
Эвклида) для расчета НОД двух целых чисел
(http://en.wikipedia.org/wiki/Binary_GCD_algorithm). Метод должен также определять значение
времени, необходимое для выполнения расчетов. Добавить к разработанному типу
дополнительную функциональность в виде перегруженных методов вычисления НОД для трех
и т.д. целых чисел.
Разработать unit-тесты для тестирования методов данного типа.