русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Арифметические операторы и операторы присваивания


Дата добавления: 2014-11-28; просмотров: 570; Нарушение авторских прав


Язык gawk поддерживает полный набор арифметических операторов, обеспечиваю­щих выполнение операций сложения, вычитания, умножения, деления, а также деления с остатком. Арифметические операторы аналогичны операторам языка программиро­вания С. Все эти операторы, а также операторы присваивания перечислены в табл. 2.

В gawk существует возможность выполнять арифметические вычисления над значе­ниями, заданными числовыми шаблонами. Числовой шаблон представляет собой по­следовательность цифр. Примерами шаблона могут служить арифметическая константа или поле, содержимым которого являются числа. Арифметические константы, пере­менные полей, а также определяемые пользователем переменные, значения которых представляют числовые шаблоны, могут использоваться в качестве операндов арифме­тических операций. Существует также ряд встроенных числовых переменных gawk, на­пример NR, определяющая номер текущей записи, и NF, задающая количество полей в текущей записи. Такие переменные могут применяться и в качестве арифметических операндов.

Арифметические операции обычно вводятся в сегменте действия или шаблона ин­струкции gawk. В следующем примере выводятся все четные строки. Знак процента (%) представляет собой оператор деления по модулю, результатом выполнения которого является остаток от деления на число. Если остаток от деления номера строки на 2 равен нулю, значит, номер строки четный. Обратите внимание, каким образом скобки изменяют порядок выполнения операторов в выражении.

$ gawk '(NR % 2) ==0 {print NR, $0}' books

2 Cristmas Dickens 3.50 Academic {

4 Raven Рое 2.50 Penguin

Арифметические операторы и переменные позволяют выполнять вычисления над значениями полей таблиц, хранящихся в базе данных. Например, сумму значений в заданном столбце можно вычислить так, как это делается в электронной таблице. Рас­смотрим пример, в котором суммируются значения третьего столбца таблицы из файла books. Суммируемое значение присваивается переменной tot, определенной пользова-' телем. Для вывода на печать итогового значения tot используется специальный шаблон END. При этом считается, что значение переменной tot при инициализации автома­тически устанавливается равным 0.



$ gawk '{print; tot = tot + $3} END {print "Total=",tot}' books

Tempest Shakespeare 15.75 Penguin

Christmas Dickens 3.50 Academic

Iliad Homer 10.25 Random

Raven Рое 2.50 Penguin
Total= 32

Наряду со стандартными арифметическими операторами в gawk применяются со­ставные арифметические операторы присваивания. Составные операторы представляют собой комбинацию арифметических операторов и операторов присваи­вания. Они используются для сокращенной записи операции присваивания, когда в переменной сохраняется результат вычисления выражения, в котором применяется эта же переменная. Например, операция tot = tot + 1 может записываться с помощью составного арифметического оператора += в виде tot += 1. В данном случае в арифме­тическом выражении переменную tot указывать не требуется, поскольку само применение составного арифметического оператора += уже предполагает ее наличие. Аналогичным образом, и оператор i = i * 2 может быть записан с применением составного арифме­тического оператора *= в виде i *= 2. Результат выполнения приведенной ниже ко­манды такой же, как и в предыдущем примере:

$ gawk '{print; tot += $3} END {print "Total=", tot)’ books



<== предыдущая лекция | следующая лекция ==>
Переменные, константы и шаблоны | Массивы и ассоциативные массивы


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.025 сек.