Вычисления математических функций с помощью языка “Паскаль”

Страницы работы

Содержание работы

Лабораторная работа №1

            Тема: Вычисления математических функций с помощью языка “Паскаль”.

            Цель: Научится работать на языке программирования “Паскале”.

Теоретические сведения

Program – с этого ключевого слова начинается прога. После пишется название.

Var – Ключевое слово, открывающее раздел описания переменных.

Real – вещественный тип переменной с плавающей запятой

(6 байт).

Shortint – целый тип переменной с отрицательными и положительными значениями

(1 байт).

Begin – с этой команды начинается тело проги.

End – этой командой завершается последовательность операторов.

Write – команда вывод информации на дисплее.

Read – команда запись в переменную вводимой информации.

If – команда Если.

Then – команда То.

Else – команда Иначе.

Синтаксис If:If условие Then операции 1 Else операции 2.

; – этот символ означает конец команды или оператора

. – Этот символ ставят в конце проги.

:= – оператор присваивания.

+ – оператор суммы.

- – оператор разности.

* – оператор произведение.

/ – оператор частного.

аргумент1 Dir аргумент2 – оператор деления нацело.

аргумент1 Mod аргумент2 – оператор десятичного остатка от деления со знаком 1ого аргумента.

аргумент1 Rem аргумент2 – оператор десятичного остатка от деления со знаком 2ого аргумента.

Abs(аргумент) – оператор математической функции модуль.

Exp(аргумент) – оператор математической функции возведения экспоненты в степень.

Ln(аргумент) – оператор математической функции натурального логарифма.

Sqr(аргумент) – оператор математической функции возведения в квадрат.

Sqrt(аргумент) – оператор математической функции квадратного корня.

Sin(аргумент) – оператор математической функции синуса.

Cos(аргумент) – оператор математической функции косинуса.

Arctan(аргумент) – оператор математической функции арктангенса.

Int(аргумент) – оператор выделения целой части.

Tranc(аргумент) – оператор отсечения целой части.

Frac(аргумент) – оператор выделения дробной части.

Round(аргумент) – оператор округления до целых.

>– логический оператор больше.

< – логический оператор меньше.

= – логический оператор равно.

<= – логический оператор больше или равно.

>= – логический оператор меньше или равно.

<> – логический оператор не равно.

Not – логический оператор отрицание.

And – логический оператор пересечение.

Or – логический оператор объединение.

Xor – логический оператор исключение.

Программа

Program first_primer_XandZ;

Var X,Z,Y:real;A:shortint;

Begin

Write('   X= ');

Readln(X);

Write('   Z= ');

Readln(Z);

If X<0then write('   X may be bigger than 0')else Begin

  If sin(X)<>0then Begin

    If sin(X)>0then A:=1 else A:=-1;

    Y:=A*exp(1/3*ln(sqr(sin(X))));End;

  If X<>0then Y:=Y+sqrt(arctan(exp(3*ln(X))));

  If Z<>X then Begin

    If X>Z then A:=1 else A:=-1;

    Y:=Y+A*exp(5*ln(A*(X-Z)))/(cos(sqrt(sqr(Z)+19)));End;

  Writeln('   Y=',Y);

  Writeln('   The whole part: ',int(Y):12:0);

  Writeln('   The fraction part: ',frac(Y):0:12);

  Write('   The express number: ');

  If abs(Y)<sqr(46250)then Write(round(Y):10)else

    Begin If frac(Y)>0.5 then Y:=Y+1;

    Write(int(Y):12:0);End;End;

Readln;

End.

Работапрограммы

1.    Запустить “Паскаль”.

2.    Загрузить прогу “ first_primer_XandZ ” нажав F3 и выбрав прогу с именем “X_AND_Z.pas ”.

3.    Запустить программу на выполнение, нажав Ctrl + F9.

4.1. Когда появится строка “   X= ”, то наберите X.

4.2. Когда появится строка “   Z= ”, то наберите Z.

5.    Если X<0, то появится сообщение “X may be bigger than 0

6.    В остальных случаях на экране появится итог вычисления данной формулы в виде числа Y, его целой части, его дробной части и его округлённого значения.

7.    После просмотра итогов работы проги, чтобы выйти надо нажать клавишу “Enter”.

Вычисления

X

Z

Результат

-13

5

X may be bigger than 0

0

45

-5.4948582637E+08

0

-5

3.3267661314E+03

23

-18

1.2243461378E+08

14

14

2.2468971353E+00

93567

13254

-3.5961956675E+24



Вывод

          В связи с тем, что при написании программы я наиболее широко использовал все доступные функции языка программирования “Паскаль”, то программа работает без всяких ограничений, кроме ограничения типом real  и условием примера. Во-первых, я учёл, что корень из arctan(x^3) при отрицательных значениях аргумента X не извлекается. Во-вторых, т. к. в “Паскале” нет оператора возведения аргумента в произвольную степень, то пришлось использовать оператор Exp(аргумент) где аргументом была степень, умноженная на Ln(аргумент). Из-за того, что Ln можно извлечь только из не отрицательного числа, то при условии равенства аргумента нулю операция возведения в степень пропускалась, а при отрицательном значении я возводил аргумент в квадрат и степень понижал вдвое, или умножал аргумент на -1, а затем умножал полученный результат на -1. Для этого мне понадобилась 4ая переменная тип Shortint.В-третьих, при выводе результатов пришлось учесть, что оператор  Round(аргумент) работает с числами, не превышающие 2,14*109. Если аргумент превышал ограничения, то при выполнение условия, что дробная часть аргумента >0.5 я к аргументу +1, а затем использовал вместо Round(аргумент) оператор Int(аргумент). Для удобства просмотра результатов в конце программы стоит пустой ввод и пока не будет нажата клавиша ”Enter” результаты ни куда не исчезнут.

Похожие материалы

Информация о работе