|
Программирование >> Автоматически обновляемые приложения
; Листинг 3.4. Конвертируем градусы в радианы using System; public static double ConvertDegreesToRadians(double degrees) { double radians = (Math.PI / 180) * degrees; return radians; Соответственно, для обратного конвертирования значений в радианах в градусы используем обратную ей функцию (листинг 3.5). Листинг 3.5. Конвертируем радианы в градусы using System; public static double ConvertRadiansToDegrees(double radians) { double degrees = (180 / Math.PI) * radians; return degrees; Четное или нечетное число Чтобы определить, является число четным или нечетным, достаточно разделить это число на два и посмотреть на его остаток. Если он равен О, то число четное, если остаток равен 1, то число нечетное. Можно использовать следующие два метода (листинг 3.6) для решения этой задачи. : Листинг 3.6. Определение четности числа public static bool IsEven(int intValue) { return ((intValue % 2) == 0); четное число Если вам нужно конвертировать значения в градусах в радианы, то используйте функцию, определенную в листинге 3.4. ; Листинг 3.7. Перегруженная версия метода isEven для чисел типа Long перегруженная версия, работающая с числами типа long public static bool IsEven(long IValue) return ((lvalue %2) == 0); Получить старшее и младшее слова из числа Иногда требуется получить младшее (последние 16 бит) и старшее слово (первые 16 бит) из 32-битного целого числа. Для получения старшего слова из числа типа int нужно применить побитовое сравнение с помощью AND, как показано в листинге 3.8. Листинг 3.8. Получение старшего и младшего слов из 32-битного целого числа public static int GetHighWord(int intValue) { return (intValue & (OxFFFF 16)); public static int GetLowWord(int intValue) { return (intValue & OxOOOOFFFF); 3 Зак 262 public static bool IsOdd(int intValue) { return ((intValue % 2) == 1); нечетное число На самом деле не обязательно иметь два метода, а можно написать более универсальный код. Если число не является четным, значит, оно нечетно. Напишите этот метод сами. Если вам надо работать с другими типами целых чисел, то нужно добавить перегруженную версию метода (листинг 3.7). Листинг 3.9. Конвертируем градусы Фаренгейта в градусы Цельсия public static double FtoC(double Fahrenheit) { return ((5.0/9.0) * (Fahrenheit - 32)); Система градусов по Цельсию представляется более удобной. Вода замерзает при О градусов и закипает при 100 градусах. Таким образом, этой системой можно пользоваться везде, где есть вода. Для обратного конвертирования из градусов по Цельсию в градусы по Фаренгейту используется обратная формула. Напишем новый метод для этой цели (листинг 3.10). I Листинг 3.10. Конвертируем градусы Цельсия в градусы Фаренгейта public static double CtoF(double Celsius) { return (((9.0/5.0) * Celsius) + 32); Преобразование градусов по Фаренгейту в градусы по Цельсию Немецкий ученый Габриель Фаренгейт предложил свою систему для измерения температур. Существует несколько версий происхождения шкалы. По одной из них, Фаренгейт принял за О °F температуру около своего дома в один зимний день, а за 100 °F- температуру своего тела. Таким образом, диапазон градусов от 0° до +100° по шкале Фаренгейта примерно соответствует диапазону -18°...+38° по шкале Цельсия. Как видите, Фаренгейт ошибся в последнем измерении: нормальная температура человеческого тела составляет 97,9 °F. Данная шкала температур была широко распространена в англоязычных странах, но постепенно была вытеснена шкалой Цельсия. На нынешний момент эта система широко используется в США, Канаде и на Ямайке. Для перевода градусов по Фаренгейту в градусы по Цельсию существует специальная формула: Celsius = (5 / 9) * (Fahrenheit - 32) Используя данную формулу, можно без труда написать свой метод (листинг 3.9) для перевода градусов из одной меры в другую.
|
© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки. |