Простейшие вычисления
Одной из целей создателей первых вычислительных машин было изобретение устройства, позволяющего с меньшими физическими и интеллектуальными затратами производить сложные и утомительные вычисления. Современный компьютер может производить вычисления с немыслимой ранее скоростью и оперировать огромными объемами обрабатываемых данных.
Для проведения несложных вычислений используют программы-калькуляторы, имитирующие функции и внешний вид традиционных карманных калькуляторов. Такие программы есть во всех операционных системах (например, КCalc в Linux и Calculator в MS Windows).
Электронные таблицы стали повседневным инструментом в работе экономистов, менеджеров и многих других специалистов. Они позволяют автоматизировать рутинный труд при повторяющихся вычислениях по одним и тем же формулам. Электронные таблицы, как правило, содержат разнообразные функции, необходимые в области делопроизводства, экономике и различных разделах математики, включая статистику. Одним из наиболее известных продуктов среди программ данного типа является Microsoft Excel. Основным ее недостатком является то, что она, так же, как и операционная система Windows, не является свободно распространяемой. Бесплатной альтернативой этой программе может служить программа OpenOffice Calc, ничуть не уступающая ей по функциональным возможностям.
Обе программы позволяют легко осуществлять табличные вычисления, производить анализ, поиск и сортировку информации в базах данных, отображать результаты в виде диаграмм. Они обладают обширным набором финансовых и математических функций и позволяют осуществлять автоматический подбор параметров в сложных расчетах. Отметим еще две программы для работы с электронными таблицами: KSpread, входящую в состав KOffice, и Gnumeric. Обе программы функционируют в ОС Linux. KSpread можно порекомендовать людям только начинающим осваивать навыки работы с электронными таблицами. Gnumeric же обладает значительно большими функциональными возможностями и содержит все необходимые инструменты для работы с таблицами.
Основы логики высказываний
Так как при организации вычислений часто приходится рассматривать те или иные логические условия, то мы начнем изложение с основ математической логики.
Слово логика означает систематический метод рассуждений. Мы познакомимся с одним из разделов этой науки - исчислением высказываний. Исчисление высказываний - совокупность правил, используемых для определения истинности или ложности логических предложений. Логике высказываний можно "научить" вычислительную машину, которая таким образом получает возможность "рассуждать", хотя и на весьма примитивном уровне.
Математик Джордж Буль (1815-1864) описал алгебру, основанную на операторах И, ИЛИ и НЕ и булевых переменных, которые принимают только два значения, например, 0 или 1. Эти значения могут моделироваться наличием или отсутствием тока в электрической цепи, состояниями "Включено" или "Выключено" некоторого переключателя. Далее мы рассмотрим логические предложения, построенные с помощью этих операторов, называемых также логическими связками. Значения таких выражений вычисляются и преобразуются с помощью правил булевой алгебры примерно так же, как числовые выражения преобразуются и упрощаются в обычной арифметике.
Высказывание или предложение - это просто утверждение, которое может быть истинно или ложно. Примерами могут служить следующие утверждения: "Сидорову 20 лет", "Сидоров - студент". Такие высказывания называются атомарными. Примером составного предложения может служить высказывание "Сидорову 20 лет и он студент", которое содержит два отдельных атомарных предложения (атома), каждое из которых может быть истинно или ложно. Если, например, Сидорову 19 лет, то высказывание "Сидорову 20 лет" ложно. Составные и атомарные предложения называются в логике формулами.
В исчислении высказываний не рассматриваются утверждения, имеющие значения, отличные от "истинно" и "ложно". Используется двузначная логика: ответ, отличный от "Да", есть "Нет". Древние философы назвали этот принцип "законом исключенного третьего". Существуют другие логики, правила которых отличаются от правил исчисления высказываний, например, трехзначная логика со значениями "Да", "Нет", "Не знаю" или так называемая нечеткая логика, где можно оперировать утверждениями типа "С вероятностью 90% величина А больше 3".
В таблице приводятся обозначения, используемые для логических связок в различной литературе. Мы в дальнейшем изложении будем использовать обозначения, принятые в большинстве языков программирования. Истинное значение далее будем обозначать символом T (от True - истина), а ложное - F (от False - ложь).