Invest-currency.ru

Как обезопасить себя в кризис?
5 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Запись математических выражений на языке паскаль

Выражения Паскаль

Какую структуру имеют выражения Паскаль? Выражения Паскаль задают определенное правило, по которому вычисляется некоторое значение. В состав выражений входят:

  • знаки операций
  • константы
  • указатели функций
  • переменные
  • скобки

Математические операции Паскаль:

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

+ — сложение (3+58=61)
— — вычитание (4-42=-38)
* — умножение (8*12=96)
/ — деление (46/23=2)

Однако кроме этих стандартных операций в Паскале предусмотрены еще 2 математические операции:

div — деление нацело (10/3=3)
mod — деление с остатком (10/3=1)

Логические операции Паскаль:

В языке Паскаль присутствуют еще и логические операции над аргументами логического типа, например, у нас даны две логические переменные A и B. В таблице истинности запишем результат выполнения тех или иных логических операций:

Под not понимается логическое отрицание («НЕ»), and означает логическое умножение («И»), or подразумевает логическое сложение («ИЛИ»), xor раскрывает логическое «исключающее ИЛИ».

Операции отношения Паскаль:

Теперь поговорим об операциях отношения в Турбо Паскаль:

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

Приоритет операций Паскаль:

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

В математике тем не менее возможно переопределить порядок выполнения операций при помощи скобок. Турбо Паскаль — не исключение:

2*4-3 = 5, 2*(7-10) = -6

Математические функции Паскаль:

Приведем основные математические функции, которые разработчики Турбо Паскаль предусмотрели и вставили в системную библиотеку:

abs(n) — абсолютное значение числа n,

sin(n) — синус числа n, где n — угол в радианах,

cos(n) — косинус числа n, где n — угол в радианах,

В Турбо Паскале не предусмотрены функций тангенса и котангенса. Чтобы их вычислить, используют выражения sin(x)/cos(x), cos(x)/sin(x) соответственно.

atan(n) — арктангенс числа n,

exp(n) — число e = 2,718 в степени n,

ln(n) — натуральный логарифм числа n,

pi — число Пи = 3,14,

sqr(n) — квадрат числа n.

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

2^(1.33) = exp(1.33*ln(2))

sqrt(n) — квадратный корень из числа n,

trunc(n) — число, равное целой части числа n (отбрасывается дробная часть числа n, результатом выполнения будет число с типом longint),

frac(n) — число, равное дробной части числа n,

int(n) — число, равное целой части числа n (в результате получается число с типом real),

round(n) — округление числа n (возвращаемое значение будет иметь тип longint),

random(n) — генератор псевдослучайных чисел в диапазоне 0 до n (если аргумент отсутствует, т.е. просто random, то в результате выполнения этой функции появится вещественное число от 0 до 1).

Если вы хотите использовать random в процессе выполнения программы, то нужно его инициализировать(другими словами, активировать) процедурой randomize, иначе при последующем запуске программы будет выводиться та же самая последовательность случайных чисел. Рассмотрим на примере программу, которая выводит на экран любые 7 чисел в диапазоне от -15 до 15:

program chislo;

var j: integer;

begin randomize;

for j:=1 to 7 do

writeln(random(26)-10);

end.

inc(m,n) — увеличение значения числа m на n (если число n не указано, то число m увеличивается на единицу),

dec(m,n) — уменьшение значения числа m на n (если число n не указано, то число m уменьшается на единицу).

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

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

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

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

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

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

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

Читать еще:  Что значит crt паскаль

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Функция 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.

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

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

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

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

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

Заключение

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

Конспект урока: Запись выражений на языке Паскаль

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

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

Профессиональный лицей №7

Методическая разработка открытого урока

тема: Запись выражений на языке Паскаль

Ахметова Венера Мансуровна

Тема: Запись выражений на языке Паскаль

1.Образовательная: выработать умения и навыки учащихся при записи выражений на языке Паскаль, ;

2. Развивающая: развитие логического мышления;

3.Воспитательная: воспитание положительного отношения к предмету.

Тип урока: комбинированный

Оснащение урока: интерактивная доска

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

I Орг момент -2 мин

2. Проверка учащихся по списку

3. Ознакомление с темой урока, целями урока

I I Основная часть

А) Повторение (найти соответствия)

Б) Изучение новой темы урока

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

Запись арифметических выражений на Паскале похожа на обычную математическую запись. В отличие от математики, где часто пропускается знак умножения (например, пишут 2А), в Паскале этот знак пишется обязательно: 2*А.

Например, математическое выражение

на Паскале записывается так:

Это же выражение можно записать иначе:

SQR(A) + SQR(B) — 12*С

Здесь использована функция возведения в квадрат — SQR. Аргументы функций всегда пишутся в круглых скобках.

Последовательность выполнения операций определяется по их приоритетам (старшинству). К старшим операциям относятся умножение (*) и деление (/). Операции сложения и вычитания — младшие. В первую очередь выполняются старшие операции. Несколько операций одинакового старшинства, записанные подряд, выполняются в порядке их записи слева направо. Приведенное выше арифметическое выражение будет вычисляться в следующем порядке (порядок вычислений указан цифрами сверху):

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

Запись выражений на языке Паскаль

1. Найдите правильную запись на языке Pascal выражения 19(16,3+7,7)

2. Найдите правильную запись на языке Pascal выражения 15,3(24-18)

Читать еще:  Целевая функция задачи линейного программирования

3. Найдите правильную запись на языке Pascal выражения

4. Найдите правильную запись на языке Pascal выражения

5. Найдите правильную запись на языке Pascal выражения

I I I Закрепление урока -15 мин

Записать данные выражения на языке Паскаль. Полученные данные, совпадают с определенной датой Независимости РК.

IV Подведение итогов урока

Оценивание знаний учащихся

Д/з : Составить арифметические выражения на языка Паскаль, ответами которых будут являться 2006, 2010, 2005. Каким датам соответствуют полученные ответы?

Выберите книгу со скидкой:

История России. С древнейших времен до XVI века. 6 класс. Контурные карты

350 руб. 55.00 руб.

Контурные карты История России конец XVII-XVIII век. 8 класс. (Новые)

350 руб. 55.00 руб.

История России. 7 класс. Рабочая тетрадь.

350 руб. 137.00 руб.

История России. 6 класс. Рабочая тетрадь.

350 руб. 137.00 руб.

История России XX-начало XXI в. Атлас с контурными картами.

350 руб. 106.00 руб.

История России. XVI-конец XVII века. 7 класс. Контурные карты

350 руб. 55.00 руб.

История России. 8 класс. Рабочая тетрадь. История России. 8 класс. Рабочая тетрадь.

350 руб. 137.00 руб.

История России XIX – начало XX века. 9 класс. Контурные карты (Историко-культурный стандарт)

350 руб. 55.00 руб.

История России. 9 класс. Рабочая тетрадь.

350 руб. 137.00 руб.

ЕГЭ. История России в таблицах и схемах для подготовки к ЕГЭ. 10-11 классы

350 руб. 80.00 руб.

ЕГЭ. История России в таблицах и схемах. 10-11 классы

350 руб. 80.00 руб.

История России в рассказах для детей. ХV — ХVII века

350 руб. 137.00 руб.

БОЛЕЕ 58 000 КНИГ И ШИРОКИЙ ВЫБОР КАНЦТОВАРОВ! ИНФОЛАВКА

Инфолавка — книжный магазин для педагогов и родителей от проекта «Инфоурок»

Бесплатный
Дистанционный конкурс «Стоп коронавирус»

Данный урок был разработан знаменательным датам Независимости Республики Казахстан. Тема: Запись выражений на языке Паскаль

1.Образовательная: выработать умения и навыки учащихся при записи выражений на языке Паскаль, ;

2. Развивающая: развитие логического мышления;

3.Воспитательная: воспитание положительного отношения к предмету.

Тип урока: комбинированный

Методическая цель : применение различных методов обучения на комбинированном уроке

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

  • Ахметова Венера Мансуровна
  • Написать
  • 2438
  • 12.01.2015

Номер материала: 289495

Добавляйте авторские материалы и получите призы от Инфоурок

Еженедельный призовой фонд 100 000 Р

  • 12.01.2015
  • 593
  • 12.01.2015
  • 518
  • 12.01.2015
  • 1431
  • 12.01.2015
  • 928
  • 12.01.2015
  • 734
  • 12.01.2015
  • 1571
  • 12.01.2015
  • 2514

Не нашли то что искали?

Все материалы, размещенные на сайте, созданы авторами сайта либо размещены пользователями сайта и представлены на сайте исключительно для ознакомления. Авторские права на материалы принадлежат их законным авторам. Частичное или полное копирование материалов сайта без письменного разрешения администрации сайта запрещено! Мнение редакции может не совпадать с точкой зрения авторов.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Читать еще:  Динамическая память паскаль

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

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

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

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

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

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

Исключение составляют только константы и переменные целого типа (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 не является идентификатором, потому что начинается с цифры.
  • В арифметических выражениях допускается использовать только круглые скобки. Количество открывающих круглых скобок должно соответствовать количеству закрывающих круглых скобок. Применение фигурных и квадратных скобок запрещается, так как они имеют особое значение.
  • Все данные, входящие в выражения должны быть одного типа. Если в выражении используются данные целого и вещественного типа, результат операции будет вещественного типа.

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

Запись математических выражений на языке паскаль

Вещественная переменная х не может быть использована с операцией div

результат первого деления вещественный и не может быть использован с операцией mod (остаток от деления нацело)

В алгебраических выражениях часто используются математические функции, такие как sin, cos, ln и т.п. Необходимо помнить, что аргументы функции всегда заключаются в скобки, знаков умножить между функцией и аргументом ставить не надо. Список стандартных математических функций приведен в приложении В. Несколько примеров использования функций в алгебраических выражениях приведено ниже.

Таблица 2.3. Примеры использования функций в алгебраических выражениях

Запись на Паскале

Порядок выполнения операций внутри алгебраического выражения определяется приоритетом операций (таблица 2.4).Согласно принятым в языке Паскаль правилам, сначала будут выполнены операции в скобках, затем вычислены функции, унарные операции, операции умножения или деления и только затем – операции сложения и вычитания.

Таблица 2.4. Приоритет математических операций

Вычисления в скобках (…)

Унарные операции (например, not)

Операции типа умножения, деления (*, /, div, mod, and)

Операции типа сложения (+, -, or, xor)

Операции отношения и логические операции: not , and , or , xor будут описаны ниже.

Давайте проясним действие приоритета операций на примерах.

Пример 1. В арифметическом выражении в примере 1, которое на языке Паскаль имеет вид 1 E 3* exp ( sqr ( x )+ sqrt (5* sin ( x ))) сначала вычисляется аргумент экспоненты ( exp ), при этом в нем в первую очередь — функции и скобки. Весь порядок операций показа на рисунке ниже.

Пример 2. Необходимо вычислить сложную дробь . При этом необходимо писать: (1+ sqr ( a ))/(3* a ), либо (1+ sqr ( a ))/3/ a .

Неправильным будет вариант (1+ sqr ( a ))/3* a , т.к. сначала компьютер разделит сумму на 3, а потом, что получилось, умножит на а.

Также неправильно писать 1+ sqr ( a )/(3* a ), т.к. сначала значение квадрата sqr ( a ) будет поделено на 3а, затем к результату прибавится 1.

Ссылка на основную публикацию
ВсеИнструменты 220 Вольт
Adblock
detector