Математические процедуры и функции

Здесь Вы встретите понятия Функция, Процедура, Аргумент.
Разница между ними заключается в том, что значение функции можно передать результат своей работы какой либо переменной

y :=  sin(x)  | Вычисляем синус от Х и заносим результат в Y

Процедура же — просто выполняет некое действие с указанным аргументом не возвращая никому, и ничего. Совсем никаких результатов.

Dec(x)  | Просто изменили значение Х.

Теперь что такое аргумент. Аргумент для функции и процедуры — это переменная/переменные которые заключены в скобки .

y :=  sin(x);  х — это аргумент.

Dec(р);  р — это аргумент.

Inc(x, n); x,n — это аргументы.

Теперь тип результата:

t := Round (x) 

На входе как аргумент Х действительное число. Но в результате работы функции на выходе в t пойдет целое число.

(О чем нужно позаботится в разделе Var   x:real;

t:integer)

Таблица математических функций

 Математическое выражение  Паскаль
Функция
 Обьяснение  Тип аргументу  Тип результата
y = | x |  y := abs(x) Абсолютное значение «x»
или модуль «х»
 integer, real  integer, real
y =  sin x y :=  sin(x) Синус «x» рад integer, real    real  
y =   cos x  y :=  cos(x) Косинус «x» рад integer, real   real  
y =   arctg x  y :=  arctan(x) арктангенс «х» ( -Pi/2 < y < td )< 2 Pi> integer, real   real  
 Квадратный корень с Х y :=  Sqrt(x) квадратный корень из «х»( x > 0) integer, real   real  
  y =  х2 y :=  Sqr(x) значение «х» в квадрате ( х2 ) integer, real   integer, real 
y =   ех  y :=  Exp(x) значение «е» в степени «х» ( ех, где e= 2. 718282. . . ) integer, real   real  
y =    Ln x y :=  Ln(x) натуральный логарифм «х» ( х > 0 ) integer, real   real  
Дробная часть Х y :=  Frac(x) дробная часть «х» real  real  
Целая часть Х  y :=  Int(x) целая часть «х» real  real  
Случайное число    t :=  Random(x)   случайное число
0 < =y < x )  
 integer  integer
Округлить Х t := Round (x)  Округляет Х к целому  real  integer 
Отбросить дробную
часть Х 
t := Trunc(x)   Отбрасывает дробную часть от числа Х  real integer 
Проверка на парность   f := odd(x) integer  boolean
true непарне
false парне
 Xn
 Y := exp(ln(x)*n) 
 x — выражение
n — степень
Х в степени n
 ASCII код символа Ord(s)   Код символа в  ASCII   char  byte 
Символ по ASCII коду   Chr(s)  Возвращает символ по его коду  byte  Char
Математические процедуры
Процедура Тип аргументу Тип значення Результат 
Inc(x)     Integer                         
Integer                            
Увеличивает «х» на 1  (x:=x+1;)                                                                   
Dec(x) Integer Integer Уменьшает «х» на 1 ( x:=x-1; )
Inc(x, n) Integer Integer Увеличивает «х» на n ( x:=x+n; )
Dec(x, n) Integer Integer Уменьшает «х» на n ( x:=x-n; )
ПРОЦЕДУРЫ ИЗМЕНЕНИЯ ТИПОВ ПЕРЕМЕННЫХ
Str(x, s) x-Integer
или
 Real
s-символьный Переводит число «x» в строку «s» 
Val(s, v, cod) s-символьный v-Integer 
 или 
Real 
cod- Integer
Переводит строку цифр «s» в число «v»
 cod=0 (код ошибки при неудачном преобразовании)

Что касается использования процедур увеличения / уменьшения переменных — я придерживаюсь правила расписывать их в соответствии с результатом.

То есть: вместо команды Dec (x) я часто пишу x: = x-1;

Аналогично для Inc (х) я часто пишу x: = x + 1;

Дело предпочтений =) …. хотя иногда сокращаю …

Что нужно запомнить:

  1. Что такое функция.
  2. Что такое процедура.
  3. В чем разница между функцией и процедурой.
  4. Что такое аргумент.
  5. Какие функции производят преобразование типов данных.
  6. Выучить таблицу математических функций.

К каждой задачи ответьте на вопрос:
Какие переменные будут «входящими», промежуточными, и укажите переменную/переменные, которая содержит результат. Написание программ можно разбавить командами управления цветом символов и фона.

Пример 1.

1. Написать программу, которая рассчитает, за какое время автомобиль проедет S километров двигаясь со скоростью V км/ч. Результат вывести c 2 знаками после запятой.

uses CRT;
Var s,v:real;
  t:real;
BEGIN
 ClrScr;    
 Write('Distns S=');Readln(s);      
 Write('Speed V=');Readln(v);
 t:=s/v;
 writeln('Time=',t:2:2);
 writeln('Press Enter to Exit');
 readln;
END.  




Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Подписаться
Уведомить о
guest
0 Комментарий
Межтекстовые Отзывы
Посмотреть все комментарии