Механическое удерживание земляных масс: Механическое удерживание земляных масс на склоне обеспечивают контрфорсными сооружениями различных конструкций...
Автоматическое растормаживание колес: Тормозные устройства колес предназначены для уменьшения длины пробега и улучшения маневрирования ВС при...
Топ:
Выпускная квалификационная работа: Основная часть ВКР, как правило, состоит из двух-трех глав, каждая из которых, в свою очередь...
Характеристика АТП и сварочно-жестяницкого участка: Транспорт в настоящее время является одной из важнейших отраслей народного...
Устройство и оснащение процедурного кабинета: Решающая роль в обеспечении правильного лечения пациентов отводится процедурной медсестре...
Интересное:
Наиболее распространенные виды рака: Раковая опухоль — это самостоятельное новообразование, которое может возникнуть и от повышенного давления...
Распространение рака на другие отдаленные от желудка органы: Характерных симптомов рака желудка не существует. Выраженные симптомы появляются, когда опухоль...
Что нужно делать при лейкемии: Прежде всего, необходимо выяснить, не страдаете ли вы каким-либо душевным недугом...
Дисциплины:
2017-11-17 | 528 |
5.00
из
|
Заказать работу |
|
|
Как упоминалось ранее, алгебраические выражения составляются из констант, переменных, обращений к функциям с помощью знаков арифметических операций и скобок. При этом следует соблюдать ряд правил и рекомендаций.
1 Необходимо учитывать приоритет операций (см. таблицу 1): сначала выполняется умножение (знак *) и деление (знак /), затем сложение и вычитание.
Все знаки арифметических операций, даже те, которые при корректной математической записи ставить не принято (например, как при записи произведения ab = a×b), необходимо указывать при составлении выражения на Pascal. Изменить порядок выполнения операций можно с помощью скобок, как показано в таблице 9.
Таблица 9 − Учет приоритета операций посредством скобок
Математическое выражение | Запись на языке Pascal | Возможные ошибки |
(a−b)/(c+d) | Отсутствие скобок изменит смысл выражения: a-b/c+d ~ | |
(sin(x)+y)/(x*y) | 1 Пропущенный знак умножения означает указание на новую (возможно, несуществующую) переменную xy: (sin(x)+y)/xy 2 Неправильно расставленные или пропущенные скобки изменят смысл выражения: (sinx+y)/(x*y) ~ введено новое имя sinx; (sin(x)+y)/x*y ~ − изменен смысл | |
2 Аргументы сложных функций (функция функции) необходимо заключать в скобки (таблица 10).
Таблица 10 − Pascal -код сложных функций
Математическое выражение | Запись на языке Pascal | Возможные ошибки |
sqrt(abs(sin(x))); | Потеря скобок или неправильный порядок расположения функций | |
sqr(ln(2*x)); | Потеря скобок, неправильный порядок следования функций, потеря знака умножения | |
exp(2*sqr(cos(x))); | Неправильный порядок следования функций, потеря знака умножения или скобок | |
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 -код экспоненциальной функции
Математическое выражение | Запись на языке Pascal |
exp(a+b) | |
exp(1) | |
exp(–1) | |
5 Определенные трудности возникают при записи степенных и показательных выражений, например, , или . Pascal -код в таких случаях составляется с учетом формул элементарной математики:
, (2)
. (3)
Примеры приведены в таблице 12.
Таблица 12 − Pascal -код степенных и показательных выражений
Математическое выражение | Альтернативная математическая запись | Запись на языке Pascal |
exp(x/2*ln(a+b)) | ||
exp(1/3*ln(a/b)) | ||
6 Необходимо учитывать область определения функций, к которым в выражении происходит обращение. Такие ошибки легче предотвратить, чем исправлять, так как они не обнаруживаются компилятором. Например, для выражения , записанного на языке Pascal в виде
exp(17*ln(x)),
при выполнении программы возникнет ошибка при отрицательных значениях переменной х. Поэтому его лучше записать в форме
sqr(sqr(sqr(sqr(x))))*x,
исключающей подобную ошибку.
Два других примера представлены в таблице 13.
Таблица 13 − Учет области определения функций
Математическое выражение | Запись на языке Pascal | Альтернативная запись на языке Pascal |
exp(1/8*ln(x)); | sqrt(sqrt(sqrt(x))) | |
exp(1/5*ln(x)); | ifx>0theny:= exp(1/5*ln(x)) else ifx<0 then y:=- exp(1/5*ln(abs(x))) elsey:=0; | |
7 Не следует забывать о скорости выполнения операций и рациональной записи выражений. Арифметические операции в порядке возрастания их времени выполнения располагаются так: сложение и вычитание, умножение и деление. Поэтому в некоторых случаях целесообразно заменять умножение сложением или использовать функции или процедуры вместо операций сложения и умножения. Например, выражение x*x лучше записать как sqr(x), а вместо оператора присваивания x:=x + 1 использовать обращение к процедуре inc(x).
|
Пример 2. Запишите на языке Pascal выражение .
Решение.
~ x*(x*(x*(2*x-3)+5)-1)+7.
|
|
Своеобразие русской архитектуры: Основной материал – дерево – быстрота постройки, но недолговечность и необходимость деления...
История развития пистолетов-пулеметов: Предпосылкой для возникновения пистолетов-пулеметов послужила давняя тенденция тяготения винтовок...
Опора деревянной одностоечной и способы укрепление угловых опор: Опоры ВЛ - конструкции, предназначенные для поддерживания проводов на необходимой высоте над землей, водой...
Организация стока поверхностных вод: Наибольшее количество влаги на земном шаре испаряется с поверхности морей и океанов (88‰)...
© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!