Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
Существуют различные операторы, начиная от самых простых и до чрезвычайно сложных, которые вряд ли вам встретятся где-либо, кроме как в математических приложениях. Простые операторы включают в себя все основные математические действия (например, оператор + производит сложение двух операндов), а сложные
операторы предназначены для выполнения манипуляций над двоичным представлением содержимого переменной. Существуют также логические операторы, работающие с логическими значениями, и операторы присваивания типа =.
Все операторы могут быть условно разделены на три категории:
• Унарные операторы, которые выполняют действие над единственным операндом.
• Бинарные операторы, которые выполняют действие над двумя операндами.
• Тринарные операторы, которые выполняют действие над тремя операндами.
Математические операторы
Существует пять простых математических операторов, причем два из них имеют как бинарную, так и унарную форму. В приведенной ниже таблице перечислены все математические операторы, даны элементарные примеры их использования и показаны результаты их работы с простыми численными типами (целыми числами и числами с плавающей запятой):
Оператор | Значение | Пример использования | Результат |
+ | Бинарное | varl = var2 + var3 | Переменной varl присваивается значение, которое представляет собой сумму значений переменных var2 и var3 |
- | Бинарное | varl = var2 - var3; | Переменной varl присваивается значение, получающееся в результате вычитания значения переменной var3 из значения переменной var2 |
* | Бинарное | varl = var2 *var3; | Переменной varl присваивается значение, которое представляет собой результат перемножения переменных var2 и var3 |
/ | Бинарное | varl = var2 /var3; | Переменной varl присваивается значение, которое представляет собой результат деления переменной var2 на переменную var3 |
% | Бинарное | varl = var2 %var3; | Переменной varl присваивается значение, которое представляет собой остаток от деления переменной var2 на переменную var3 |
+ | Унарное | varl = +var2; | Переменной varl присваивается значение переменной var2 |
- | Унарное | varl = -var2; | Переменной varl присваивается значение переменной var2, умноженное на -1 |
Необходимо отметить, что бинарный оператор + имеет смысл и тогда, когда он используется с переменными типа string. В этом случае предыдущая таблица должна быть дополнена следующим:
Оператор | Значение | Пример использования | Результат |
+ | Бинарное | varl = var2 + var3 | Переменной varl присваивается значение, которое представляет собой результат объединения двух строк, хранящихся в переменных var2 и var3 |
Никакие другие математические операторы к строкам применяться не могут.
Два других оператора, которые нам необходимо рассмотреть, это операторы увеличения (инкремент) и уменьшения (декремент), каждый из которых является унарным оператором и может использоваться одним из двух способов: либо непосредственно перед операндом, либо сразу после него.
Оператор | Значение | Пример использования | Результат |
++ | Унарное | varl = ++var2; | Переменной varl присваивается значение переменной var2+l. Переменная var2 увеличивается на единицу |
-- | Унарное | varl = --var2; | Переменной varl присваивается значение переменной var2-l. Переменная var2 уменьшается на единицу |
++ | Унарное | varl = var2++; | Переменной varl присваивается значение переменной var2. Переменная var2 увеличивается на единицу |
-- | Унарное | varl = var2--; | Переменной varl присваивается значение переменной var2. Переменная var2 уменьшается на единицу |
Эти операторы всегда приводят к изменению значения, хранящегося в соответствующем операнде. Оператор + + всегда увеличивает значение своего операнда на 1, а оператор --- уменьшает его на 1. Отличие заключается в том результате, который записывается в переменную varl, поскольку местоположение оператора определяет порядок выполнения действий. Когда любой из этих двух операторов помещен перед операндом, он выполняется прежде каких-либо других вычислений. Размещение любого из этих двух операторов после операнда приводит к тому, что оператор выполняется после завершения всех остальных вычислений для данного выражения.
Все сказанное заслуживает еще одного примера. Рассмотрим следующий код:
int var1, var2=5, var3=6;
varl = var2++ * -- var3;
Перед тем как выражение начнет вычисляться, будет выполнен оператор --, расположенный перед переменной var3, что приведет к изменению ее значения с 6 на 5. Мы можем проигнорировать оператор ++, расположенный за переменной var2, поскольку он не будет оказывать никакого влияния до тех пор, пока вычисление этого выражения не будет завершено, поэтому в varl будет записан результат умножения 5 на 5, т.е. 25.
Пример программы:
static void Main (string [] args)
{
double firstNumber, secondNumber;
string userName;
Console.WriteLine(“Enter your name:”);
userName = Console.ReadLine();
Console.WriteLine("Welcome {0}!", userName);
Console.WriteLine("Now give me a number:");
firstNumber = Convert.ToDouble(Console.ReadLine());
Console.WriteLine("Now give me another number:");
secondNumber = Convert.ToDouble(Console.ReadLine());
Console. Writ eLine ("The sum of {0} and {1} is {2}.",firstNumber, secondNumber,
firstNumber + secondNumber);
Console.WriteLine("The result of subtracting {0} from {1} is {2}.”
secondNumber, firstNumber, firstNumber - secondNumber);
Console.WriteLine("The product of {0} and {1} is {2}.",
firstNumber, secondNumber, firstNumber * secondNumber);
Console.WriteLine("The result of dividing {0} by {1} is {2}.”,
firstNumber, secondNumber, firstNumber / secondNumber);
Console.WriteLine("The remainder after dividing {0} by {1} is {2}.”
firstNumber, secondNumber, firstNumber % secondNumber);
}
Как это работает:
• Ввод данных пользователем;
• Преобразование типов.
Для ввода данных, осуществляемого пользователем, применяется синтаксис, аналогичный синтаксису команды Сonsole.WriteLine(), с которой вам уже приходилось встречаться. В данном случае используется команда Console.ReadLine().Во-первых, мы объявляем две переменные, в которых собираемся хранить вводимые числа:
double firstNumber, secondNumber;
Затем мы задаем приглашение и применяем с помощью Сonsole.ReadLine() к полученной строке команду Сonvert.ToDouble(), позволяющую преобразовывать строки в тип double. Полученное значение присваивается первой из объявленных нами Переменных — firstNumber. Далее то же происходит со вторым числом. После этого выводятся результаты сложения, вычитания, умножения и деления двух введенных чисел, а также остаток от деления этих двух чисел, полученный с помощью оператора "остаток от деления" (%).
Обратите внимание, что в качестве параметров оператора Сonsole.WriteLine() мы используем выражения вроде firstNumber + secondNumber, избегая стадию присваивания значения этих выражений промежуточным переменным:
Console.WriteLine(*The sum of {0} and {1} is {2}.", firstNumber, secondNumber, firstNumber + secondNumber);
Дата публикования: 2014-12-10; Прочитано: 181 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!