Студопедия КАТЕГОРИИ: АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Запись алгебраических выражений
Как упоминалось ранее, алгебраические выражения составляются из констант, переменных, обращений к функциям с помощью знаков арифметических операций и скобок. При этом следует соблюдать ряд правил и рекомендаций. 1 Необходимо учитывать приоритет операций (см. таблицу 1): сначала выполняется умножение (знак *) и деление (знак /), затем сложение и вычитание. Все знаки арифметических операций, даже те, которые при корректной математической записи ставить не принято (например, как при записи произведения ab = a×b), необходимо указывать при составлении выражения на Pascal. Изменить порядок выполнения операций можно с помощью скобок, как показано в таблице 9. Таблица 9 − Учет приоритета операций посредством скобок
2 Аргументы сложных функций (функция функции) необходимо заключать в скобки (таблица 10). Таблица 10 − Pascal-код сложных функций
3 При построении на языке Pascal сложных арифметических выражений целесообразно использовать вспомогательные переменные. Например, при кодировании формулы (1) можно ввести промежуточную переменную f 1 и только после этого записать оператор присваивания для вычисления f : f1:=sin(x)/cos(x); f:=(1+sqr(f1))/(1-2*sqr(f1)); 4 Для записи на языке Pascal экспоненциальной функции ex, где e » 2,718281828 − основание натурального логарифма, используется ее представление в виде exp(x). Ряд примеров приведен в таблице 11: Таблица 11 − Pascal-код экспоненциальной функции
5 Определенные трудности возникают при записи степенных и показательных выражений, например, , или . Pascal-код в таких случаях составляется с учетом формул элементарной математики: , (2) . (3) Примеры приведены в таблице 12. Таблица 12 − Pascal-код степенных и показательных выражений
6 Необходимо учитывать область определения функций, к которым в выражении происходит обращение. Такие ошибки легче предотвратить, чем исправлять, так как они не обнаруживаются компилятором. Например, для выражения , записанного на языке Pascal в виде exp(17*ln(x)), при выполнении программы возникнет ошибка при отрицательных значениях переменной х. Поэтому его лучше записать в форме sqr(sqr(sqr(sqr(x))))*x, исключающей подобную ошибку. Два других примера представлены в таблице 13. Таблица 13 − Учет области определения функций
7 Не следует забывать о скорости выполнения операций и рациональной записи выражений. Арифметические операции в порядке возрастания их времени выполнения располагаются так: сложение и вычитание, умножение и деление. Поэтому в некоторых случаях целесообразно заменять умножение сложением или использовать функции или процедуры вместо операций сложения и умножения. Например, выражение x*x лучше записать как sqr(x), а вместо оператора присваивания x:=x + 1 использовать обращение к процедуре inc(x). Пример 2. Запишите на языке Pascal выражение . Решение. ~ x*(x*(x*(2*x-3)+5)-1)+7. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Последнее изменение этой страницы: 2018-05-10; просмотров: 233. stydopedya.ru не претендует на авторское право материалов, которые вылажены, но предоставляет бесплатный доступ к ним. В случае нарушения авторского права или персональных данных напишите сюда... |