Меню
Спросить
({ })

Математика в Pascal

8 февраля 2017
Математика в Pascal

Всем привет, в этот солнечный день снег решил отступить и дал слабину, наверное... Выйдя на улицу, я услышал звуки птиц, видимо все таки весна скоро придет, да и рыжий кот во всю орет, тем самым подавая знаки прихода весеннего обострения. Но нам не до этого, мы изучаем Pascal и сегодня на теме у нас математические знаки и математические операции в программировании. Так как мы новички, то мы продолжим рассматривать все это в Паскаль. Поехали =)

Обычные знаки

Для начала посмотрим как выглядят обычные операции сложения, вычитания, умножения и деления в Pascal, да и в большинстве других языках программирования.
Подготовим нашу рабочую область, запустим PascalABC и напишем заготовку.

  1. program znaki;
  2. begin
  3. end.

Теперь объявим две переменные с целочисленным типом данных

  1. program znaki;
  2. var
  3. a,b: integer;
  4. begin
  5. end.

Теперь присвоим какое-нибудь значение в виде целого числа

  1. program znaki;
  2. var
  3. a,b: integer;
  4. begin
  5. a:= 100;
  6. b:= 5;
  7. end.

Теперь будем производить математические операции над числами. В других уроках мы использовали третью переменную для записи ответа в нее, в этот раз мы поступим проще и будем сразу выводить действие.
Для начала сложим два числа и выведем ответ

  1. program znaki;
  2. var
  3. a,b: integer;
  4. begin
  5. a:= 100;
  6. b:= 5;
  7. write( a+b );
  8. end.

  9. Вывод программы: 105

Теперь вычитание

  1. program znaki;
  2. var
  3. a,b: integer;
  4. begin
  5. a:= 100;
  6. b:= 5;
  7. write( a-b );
  8. end.

  9. Вывод программы: 95

Умножение

  1. program znaki;
  2. var
  3. a,b: integer;
  4. begin
  5. a:= 100;
  6. b:= 5;
  7. write( a*b );
  8. end.

  9. Вывод программы: 500

И деление

  1. program znaki;
  2. var
  3. a,b: integer;
  4. begin
  5. a:= 100;
  6. b:= 5;
  7. write( a/b );
  8. end.

  9. Вывод программы: 20

Это было просто, теперь рассмотрим другие, более сложные, но на самом деле такие же простые операции.

Число по модулю

Кто не помнит из курса школьной математики, то проще говоря это, когда из отрицательного числа получается положительное.
Функция называется ABS, пишем название функции и в скобках указываем число или же переменную.

  1. program znaki;
  2. var
  3. a: integer;
  4. begin
  5. a:= -100;
  6. write( abs(a) );
  7. end.

  8. Вывод программы: 100

Число в квадрате

Возводим число в квадратный корень или же по другому во вторую степень с помощью функции SQR.

  1. program znaki;
  2. var
  3. a: integer;
  4. begin
  5. a:= 6;
  6. write( sqr(a) );
  7. end.

  8. Вывод программы: 36

Квадратный корень числа

Делая действие, обратное действию SQR, то есть, если до этого мы возводили в квадрат, то сейчас выводим квадратный корень числа с помощью функции SQRT.

  1. program znaki;
  2. var
  3. a: integer;
  4. begin
  5. a:= 36;
  6. write( sqrt(a) );
  7. end.

  8. Вывод программы: 6

Возводим число в любую степень

До этого мы возводили во вторую степень, теперь функция POWER позволит возвести в любую другую степень. Сначала, пишем название функции, в скобках указываем число которое хотим возвести и через запятую степень, в которую хотим возвести число.

  1. program znaki;
  2. var
  3. a: integer;
  4. begin
  5. a:= 6;
  6. write( power(a, 3) );
  7. end.

  8. Вывод программы: 216

Следующее число

Функция SUCC возвращает следующее число или символ, относительно переменной. Если мы введем 10 то функция вернет 11, если введем 11 функция вернет 12 и тд.

  1. program znaki;
  2. var
  3. a: integer;
  4. begin
  5. a:= 6;
  6. write( succ(a) );
  7. end.

  8. Вывод программы: 7

Предыдущее число

Аналогично вышеописанной функции SUCC, функция PRED возвращает предыдущее число

  1. program znaki;
  2. var
  3. a: integer;
  4. begin
  5. a:= 6;
  6. write( pred(a) );
  7. end.

  8. Вывод программы: 5

Случайное число

Функция RANDOM возвращает случайное, рандомное число в диапазоне от нуля до введенного вами числа, введенное вами число не учитывается, так что если вы хотите например подобрать случайные числа от нуля до 10, то число 10 не будет включаться в диапазон, если же вы хотите, чтобы оно включалось, тогда вам нужен диапазон от нуля до 11, но в этом случае не будет включаться число 11 и тд.

  1. program znaki;
  2. var
  3. a: integer;
  4. begin
  5. a:= 100;
  6. write( random(a) );
  7. end.

  8. Вывод программы: 25 или любое другое число

Дробная часть числа

До этого мы работали с целыми числами теперь поработаем с вещественным типом данных. Чтобы вернуть дробную часть числа, нам потребуется функция FRAC.

  1. program znaki;
  2. var
  3. a: real;
  4. begin
  5. a:= 12.36;
  6. write( frac(a) );
  7. end.

  8. Вывод программы: 0.36

Целая часть числа

Теперь отделим от дробного числа целую часть в с помощью функции INT

  1. program znaki;
  2. var
  3. a: real;
  4. begin
  5. a:= 12.36;
  6. write( int(a) );
  7. end.

  8. Вывод программы: 12.00

Если функция INT возвращает вещественное число, то функция TRUNC возвращает целочисленную переменную

  1. program znaki;
  2. var
  3. a: real;
  4. begin
  5. a:= 12.36;
  6. write( trunc(a) );
  7. end.

  8. Вывод программы: 12

Округление числа

Если ты не знаешь как округлить число, в меньшую или в большую сторону, то тебе поможет функция ROUND

  1. program znaki;
  2. var
  3. a: real;
  4. begin
  5. a:= 12.56;
  6. write( round(a) );
  7. end.

  8. Вывод программы: 13

Заключение

На сегодня все, в следующей статье рассмотрим функцию DIV и MOD.
Всем спасибо.
Пока =)

Следующая статьяПредыдущая статья