- •А.Д. Кононов, а.А. Кононов основы программирования на языке паскаль.
- •Введение
- •Понятие о языках программирования
- •Базовые элементы языка паскаль
- •Алфавит языка
- •Типы данных
- •Простейшие конструкции языка Паскаль
- •3. Операции и выражения
- •Арифметические операции
- •Логические операции
- •Операции отношения
- •Операции со строками
- •Выражения
- •Стандартные функции языка паскаль
- •Арифметические функции
- •4.2. Функции преобразования типа
- •Функции для величин порядкового типа
- •5. Структура программы
- •Заголовок программы
- •5.6. Раздел объявления переменных
- •5.7. Раздел объявления процедур и функций
- •5.8. Раздел операторов
- •Заключение
- •Знаки пунктуации
- •Служебные (зарезервированные) слова
- •Диагностика ошибок трансляции
- •Основы программирования на языке паскаль
- •394006, Воронеж, ул. 20-летия Октября, 84
Арифметические функции
Арифметические функции можно использовать только с величинами целого и вещественного типа. Ниже приведены примеры записи на Паскале некоторых математических форм с указанием типа получаемого результата (табл. 6)
Например: FRAC(15.64)=0.64 INT(15.64)=15.0
Пример записи на языке Паскаль выражения
exp(abs((2*sin(4*x)+x)/(3*x)))
Таблица 6
Примеры записи на Паскале некоторых математических форм
и типов получаемых результатов
Математическая форма |
Запись на Паскале |
Тип результата |
׀x׀ x2 sin x cos x arctg x
ln x дробная часть числа целая часть числа |
ABS(X) SQR(X) SIN(X) COS(X) ARCTAN(X) SQRT(X) LN(X) FRAC(X) INT(X) |
Совпадает с типом х Совпадает с типом х Вещественный Вещественный Вещественный Вещественный Вещественный Вещественный Вещественный |
Рассмотрим примеры программирования часто встречающихся выражений, не отраженных непосредственно в списке арифметических функций Паскаля:
Пример 1. Для возведения переменной х в некоторую степень a используется равенство
xa=ealnx при условии х>0.
Тогда выражение хa на языке Паскаль должно быть записано как
exp(a*ln(x)).
Пример 2. Вычисление тригонометрической функции tg x= запишем как sin(x)/cos(x).
Аналогично для ctg x будет cos(x)/sin(x).
Пример 3. Для записи обратных тригонометрических функций вспомним соотношения
arcsin x = arctg arctan (x/sqrt(1-sqr(x)))
arccos x = arctg arctan (sqrt(1-sqr(x))/x)
arcctg x = arctg arctan (1/x)
Пример 4. Для вычисления логарифма с произвольным основанием используем формулу logb a = и запишем такой логарифм как ln(a) / ln(b). Для десятичного логарифма lgx запись приобретет вид ln(x) / ln(10)
Упражнения к разделу
Упражнение 1. Записать на языке Паскаль следующие выражения (первый уровень сложности)
а) 2 б) | a + bx | в) sin 8
г) cos2 x3 д) tg x е) log2
ж) ch x з) arctg 103 и) arcsin x
к) x-1 л) x8 м) x-5
н) x100 о) 21+x п)x
р) с) a + bx+ т) [( ax – b) x+c] x-d
у) + ф) · х)104·α - 3· ·β
ц) (1+ + )/(1 + ) ч) (x2 -3x-y) ш)
Упражнение 2. Записать в обычной математической форме следующие выражения
а) (p + q) / (r +s ) – p*q /(r * s)
б) 1Е3 + beta / (x2 – gamma * delta)
в) (-b + sqrt (sqr (b) – 4*a*c) )/ (2*a)
г) a/b + (c + d) – (a – b)/b/c + 1E -8
д) x1 = arctan( y2 – alpha )/2 * abs(x4 – ln(5) + y5 )/exp(-1)
Упражнение 3. Определить тип результата следующих выражений:
а) I*I + J*J + K*K б) X<Y
в) SIN(X) + 2*COS(Y) + Z г) I + SQRT(J),
если известно, что I, J, K : integer; X,Y,Z : real.
Упражнение 4. Записать на языке Паскаль следующие выражения (второй уровень сложности)
а) с=3,36 103+2sin(3,14+z)+׀x׀
б) z=
в) w= –
г) w=(ax+b-abx)e-(a+b)+ln ׀
д) b=8,36 10-1+( – 1) arcctg ad + - 2,23
е) z=ln ׀
ж) v=
з) z= - 0,01
и) v=1,736 ׀ln(tg2 ))׀ -arctg
к) v= ׀x׀ +
л) f= +13 +xy+ln׀ tg
м) v=(a+b+sin2a)cos b-1 +
н) y=sin
о)
п) y=3