Foreversoft.ru

IT Справочник
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Арифметические операторы паскаль

Выражения – это конструкции языка, которые задают порядок выполнения действий над элементами данных.

Выражение состоит из операндов (operand – элемент данных, участвующий в операции), объединенных знаками операций. Операндами могут быть константы, переменные и вызовы функций. Тип значения выражения определяется типом его операндов и выполняемыми над ними операциями. Например,

  • выражение: b > a + 10 ;
  • b — левый операнд, a + 10 — правый операнд, > — операция отношения; результат имеет логический тип.

Важно: величины, составляющие выражение, должны быть совместимых типов.

Операции могут быть унарными и бинарными. Унарная операция относится к одному операнду и записывается перед ним (например, -х ), бинарная – выражает отношение между двумя операндами и записывается между ними (например, a + b ). Операции определяют действия над операндами, выполняемыми в соответствии с приоритетами:

  • Унарные -, not, .
  • Операции типа умножения: *, /, div, mod, and, …
  • Операции типа сложения: +, -, or, …
  • Операции отношения: =, , <>, =, …

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

В текущем уроке разберем операции отношения, арифметические и логические операции, остальные — будем рассматривать по мере изучения материала.

Арифметические выражения и операции

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

Результат арифметического выражения может принимать целое или вещественное значение.

К арифметическим операциям относятся:

  • унарные операции: + , — для вещественных и целых чисел;
  • бинарные операции: +, -, *, / для вещественных и целых чисел;
  • бинарные операции: div, mod для целых чисел.

Выражения и операции отношения

Выражение, состоящее из операндов, связанных операцией отношения, называется выражением отношения.

Две операции отношения = и <> применяются ко всем типам, остальные — к операндам простого типа и к строкам.

Операции отношения, путем сравнения двух операндов, позволяют определить истинно ( true ) или ложно (false) значение выражения.

Логические выражения и операции

Выражение, состоящее из операндов, связанных логическими операциями, называется логическим выражением.

Операндами логического выражения могут быть только данные типа boolean , результатом — значение истинно (true) или ложно (false) .

К логическим операциям, которые подчиняются стандартным правилам алгебры логики, относятся:

  • унарная операция not ;
  • бинарные операции and, or, xor .

Логические операции и, рассмотренные выше, операции отношения широко применяются для реализации разветвляющихся и циклических алгоритмов.

Copyright © 2014-2018, Урок информатики
Все права защищены

Язык программирования TurboPascal

Turbo Pascal. Программирование арифметических выражений

Оператор присваивания

Оператор присваивания является одним из основных операторов любого языка программирования.

Оператор присваивания предназначен для присваивания переменной значения выражения.

Формат оператора присваивания:

В операторе присваивания слева от знака присваивания «:=» записывается переменная, а справа – выражение, численное значение которого присваивается этой переменной.

Выполнение оператора присваивания приведет к вычислению выражения и присваиванию значения выражения переменной.

Обязательным является требование, чтобы выражение и переменная были совместимы по присваиванию.

Например, оператор присваивания

означает, что переменной y присваивается число, полученное в результате вычисления выражения x+h/2 при известных числовых значениях переменных x и h .

Следует обратить внимание, что всем переменным в правой части оператора присваивания ранее уже были присвоены значения предыдущими операторами, например,

Здесь переменной t присваивается значение, которое до этого момента имела переменная t, плюс 1. Если переменная t имела до выполнения этого оператора значение равное 7, то после исполнения оператора t:=t+1 значение переменной будет равно 8.

Арифметические выражения

Арифметические выражения строятся из арифметических констант, переменных, функций и операций над ними.

Правила записи и смысл арифметических выражений в Паскале почти не отличаются от обычной математической записи.

В арифметических выражениях используются следующие операции и соответствующие знаки:

ОперацияЗнак операции
Сложение+
Вычитание
Умножение*
Деление/
Деление целых чиселdiv
Остаток от деления целых чиселmod

Операции +, -, *, / имеют очевидный смысл. Результатом операции div будет целое значение, равное целой части результата деления первого числа на второе. Результатом операции mod будет целое значение, равное остатку от деления (но не дробной части).

Примеры арифметических операций:

Арифметические операции выполняются в порядке старшинства: сначала вычисление функции, затем умножение, деление, сложение, вычитание.

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

Рассмотрим арифметическое выражение

В таблице приведен порядок выполнения операций:

ОперацияОперация
1a*x7-a*x*x+b/x*c+y
2a*x*x8c*n
3-a*x*x9(a-b)
4b/x10c*n/(a-b)
5b/x*c11-a*x*x+b/x*c+y-c*n/(a-b)
6-a*x*x+b/x*c

ЗАМЕЧАНИЕ. Все данные, входящие в арифметическое выражение, должны быть одного типа.

Исключение составляют только константы и переменные целого типа (integer), которые разрешается использовать в выражениях вещественного типа (real). Если в выражении используются данные целого и вещественного типа, результат операции будет вещественного типа. В других случаях необходимо выполнять преобразование данных.

Пример. Пусть переменные x и y описаны следующим образом:

Рассмотрим оператор y:= x+2 , в котором используются переменные целого, вещественного типов и константа. Результат операции будет вещественного типа, поэтому оператор y:=x+2; является допустимым, хотя справа от присваивания стоит целая переменная и константа;

Следующие операторы являются ошибочными:

Для обеспечения совместимости типов необходимо выполнять преобразования данных. Для преобразования Real в Integer имеются две функции:

Round() – округляет Real до ближайшего целого;

Trunc() – усекает Real путем отбрасывания дробной части.

Правильная запись рассматриваемых операторов: x:=y+2; и x:=y/x; имеет вид:

Программируя арифметические выражения, нужно иметь в виду следующие основные правила:

  • Два знака арифметических операций нельзя писать рядом. Например, следующие записи будут неправильными:
    +–a –b — следует писать +(–a) –b
    a*–b — следует писать a*(–b)
  • Знак умножения опускать нельзя, например, при записи произведения: a*b и 2*n , запись ab и 2n будет неправильной, так как ab воспринимается как идентификатор, а запись 2n не является идентификатором, потому что начинается с цифры.
  • В арифметических выражениях допускается использовать только круглые скобки. Количество открывающих круглых скобок должно соответствовать количеству закрывающих круглых скобок. Применение фигурных и квадратных скобок запрещается, так как они имеют особое значение.
  • Все данные, входящие в выражения должны быть одного типа. Если в выражении используются данные целого и вещественного типа, результат операции будет вещественного типа.

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

ФункцияНазначение
Abs(x)Абсолютное значение аргумента x
Sqr(x)Вычисляет квадрат аргумента x
Sqrt(x)Вычисляет квадратный корень аргумента x
Exp(x)Возвращает экспоненту аргумента e x (степень числа e=2,72)
Ln(x)Вычисляет натуральный логарифм аргумента x
PiЗначение числа p=3.1415926
Frac(x)Дробная часть числа x
Int(x)Целая часть числа x
Sin(x)Синус аргумента x (угол в радианах)
Cos(x)Косинус аргумента x (угол в радианах)
Arctan(x)Арктангенс аргумента x (угол в радианах)
RandomizeИнициализация генератора случайных чисел
Random(x)Если x отсутствует, то значением функции является случайное число типа real из диапазона 0 x n = exp(n*ln(x));

Примеры записи простых арифметических выражений и операторов присваивания приведены в таблице:

Обычная математическая записьЗапись на Турбо Паскале
x/(y*z) или x/y/z
y*x/z
(x+a)/(y+b)
1/(m*sqrt(a+b))
x1:=(-b+sqrt(b*b-4*a*c))/(2*a)
y:=sin(x)
sqr((x+y-z)/2/a)

Типичные ошибки в записи выражений:

4x+1 Пропущен знак умножения между 4 и x

a+sinx Аргумент x функции sinx не заключен в скобки

((a+b)/sqr(c*7) не хватает закрывающей скобки

ЗАДАЧА2 . Вычислить корни квадратного уравнения

по известным формулам

Предположим, что дискриминант этого уравнения больше нуля и уравнение имеет только действительные корни. Программа нахождения корней уравнения приведена ниже.

лабы по информатике, егэ

лабораторные работы и задачи по программированию и информатике, егэ по информатике

Pascal: Занятие №1. Часть 3: Типы данных в Паскаль

Типы данных в Паскале

Паскаль — это типизированный язык программирования. Это означает, что переменные, в которых хранятся данные, имеют определенный тип данных. Т.е. программе напрямую надо указать, какие данные могут храниться в той или иной переменной: текстовые данные, числовые данные, если числовые — то целочисленные или дробные, и т.п. Это необходимо в первую очередь для того чтобы компьютер «знал», какие операции можно выполнять с этими переменными и как правильно их выполнять.

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

Рассмотрим наиболее распространенные в Pascal типы данных.

Целочисленные типы данных в Паскаль

ТипДиапазонТребуемая память (байт)
byte0..2551
shortint-128..1271
integer-32768.. 327672
word0..655352
longint-2147483648..21474836474

Нужно иметь в виду, что при написании программ в паскале integer (в переводе с англ. целое) является наиболее часто используемым, так как диапазон значений наиболее востребуем. Если необходим более широкий диапазон, используется longint (long integer, в переводе с англ. длинное целое). Тип byte в Паскале используется, когда нет необходимости работать с отрицательными значениями, то же самое касается и типа word (только диапазон значений здесь значительно больше).

Примеры того, как описываются (объявляются) переменные в Паскале:

program a1; var x,y:integer; <целочисленный тип>myname:string; <строковый тип>begin x:=1; y:=x+16; myname:=’Петр’; writeln (‘имя: ‘,myname, ‘, возраст: ‘, y) end.

Результат:
имя: Петр, возраст: 17

Комментарии в Паскале

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

Вещественные типы данных в Паскаль

Вещественные числа в Паскале и вообще в программировании — это название дробных чисел.

ТипДиапазонТребуемая память (байт)
real2.9 * 10E-39 .. 1.7 * 10E386
single1.5 * 10 E-45 .. 3.4 * 10E384
double5 * 10E-324 .. 1.7 * 10E3088
extended1.9 * 10E-4951 .. 1.1 * 10E493210

Тип real в Паскале — наиболее часто используемый из вещественных типов.

Выше были представлены простые типы данных в Паскаль, к которым относятся:

  • Порядковые
  • Целые
  • Логические
  • Символьные
  • Перечисляемые
  • Интервальные
  • Вещественные

Для вывода значений переменных вещественного типа обычно используется форматированный вывод:

Наряду с простыми типами в языке еще используются структурированные типы данных и указатели, которым будут посвящены последующие уроки по Паскалю.

Константы в Паскале

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

Объявление константы в Паскале происходит до объявления переменных (до служебного слова var ) и выглядит следующим образом:

Пример описания константы в Паскале:

const x=17; var myname:string; begin myname:=’Петр’; writeln (‘имя: ‘,myname, ‘, возраст: ‘, х) end.

«Красивый» вывод целых и вещественных чисел

Для того чтобы после вывода значений переменных оставались отступы, чтобы значения не «сливались» друг с другом, принято через двоеточие указывать какое количество символов нужно предусмотреть для вывода значения:

Вывод целых чисел

Вывод вещественных чисел

Арифметические операции в Паскале

ДЕЙСТВИЕРЕЗУЛЬТАТСМЫСЛ
2 + 35плюс
4 — 13минус
2 * 36умножить
17 div 53целочисленное деление
17 mod 52остаток от целочисленного деления

Порядок выполнения операций

  1. вычисление выражений в скобках;
  2. умножение, деление, div, mod слева направо;
  3. сложение и вычитание слева направо.

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

Здесь стоит более подробно остановиться на некоторых арифметических операциях.

    Операция inc в Паскале, произносимая как инкремент, это стандартная процедура pascal, которая обозначает увеличение на единицу.

Пример операции inc:

Более сложное использование процедуры inc:
Inc(x,n) где x — порядкового типа, n — целого типа; процедура inc увеличивает x на n.

  • Аналогично работает процедура Dec в Паскале: Dec(x) — уменьшает x на 1 (декремент) или Dec(x,n) — уменьшает x на n.
  • Оператор abs представляет собой модуль числа. Работает следующим образом:

    Пример использования функции odd:

    begin WriteLn(Odd(5)); WriteLn(Odd(4)); end.

    Пример использования процедуры sqr в Pascal:

    var x:integer; begin x:=3; writeln(sqr(x)); <ответ 9>end.

    Формула такая: exp(ln(a)*n) , где а — число, n — степень (а>0).

    Однако в компиляторе pascal abc возведение в степень осуществляется значительно проще:

    Пример использования процедуры sqrt в Pascal:

    var x:integer; begin x:=9; writeln(sqrt(x)); <ответ 3>end.

    Арифметические операции в языке программирования Паскаль

    Как организовать дистанционное обучение во время карантина?

    Помогает проект «Инфоурок»

    Описание презентации по отдельным слайдам:

    Арифметические операции в языке программирования Паскаль Журавлев В.В. МКОУ «Углянская СОШ» Верхнехавского муниципального района Воронежской области

    Бинарными (или двуместными) операциями в математике и программировании называют такие функции, которые принимают два аргумента (операнда), как правило, одного типа, и выдают одно значение в качестве результата. Бинарные операции

    Бинарные операции Знак Выражение Операция + А+В Сложение А-В Вычитание * А*В Умножение / А/В Вещественное деление div A divВ Целое деление mod A modВ Остаток от целого деления

    Уна́рной опера́цией или одноме́стной опера́цией на множестве M называется отображение множества в себя M -> M, которое каждому элементу множества M, называемому операндом, ставит в соответствие некоторый элемент того же множества, называемый результатом. Унарные операции

    Унарные операции в Паскале Функция Тип результата Тип результата Назначение Abs(X) Числовой Как аргумент Абсолютное значение аргумента Arctan(X) Вещественный Вещественный Арктангенс аргумента (в радианах) Cos(X) Вещественный Вещественный Косинус (аргумент в радианах) Exp(X) Вещественный Вещественный Экспонента Х (е в степени Х) Frac(X) Вещественный Вещественный Дробная часть вещественного аргумента Int(X) Вещественный Вещественный Целая часть вещественного аргумента Ln(X) Вещественный Вещественный Натуральный логарифмвещественногоаргумента Sin(X) Вещественный Вещественный Синус (аргумент в радианах) Sqr(X) Числовой Как аргумент Квадрат аргумента Sqrt(X) Вещественный Вещественный Квадратный корень веществ. аргумента

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

    Классификация инструкций Паскаля

    Оператор ввода (а точнее, процедура ввода) может вводить данные в оперативную память или из файла или с клавиатуры. При вводе с клавиатуры процедура имеет вид: Read( ); Readln( ); Список переменных представляет собой перечень имен переменных через запятую, в которые заносятся вводимые значения. Очевидно, что список значений и список имен должны соответствовать друг другу по типам и порядку следования элементов списков. Отличие в этих процедурах проявляется только при вводе данных из файла. Оно заключается в том, что при втором варианте после ввода выполняется переход на новую запись файла, даже если в текущей записи данные не кончились. Оператор ввода переменных

    Оператор вывода на экран в простейшем случае выглядит так: Writeln( ); Write( ); Отличие первого варианта от второго в том, что после вывода первым оператором, курсор переводится на новую строку, и следующий вывод будет выполняться в другой строке экрана. Список объектов вывода представляет собой перечень имен переменных, строковых констант и выражений, разделенных запятыми. За каждым элементом списка может следовать формат вывода в виде одного или двух целых чисел, отделенных от элемента двоеточием. Первое число указывает, сколько позиций выделяется для выводимого значения. Если при этом значение содержит меньше символов, оно дополняется слева пробелами, если значение не помещается в отведенное место, то предлагаемый формат вывода игнорируется. Второе число используется только при выводе вещественных чисел и указывает, сколько дробных цифр выводить после десятичной точки. При этом число выводится в форме с фиксированной точкой (без десятичного порядка). Если второго числа в формате нет, вещественное значение выводится в экспоненциальной форме. Операторы вывода переменных

    Читать еще:  Ошибка лицензии нет соединения с сервером
    Ссылка на основную публикацию
    Adblock
    detector