Как написать программу в паскале для вычисления выражения
3. Подберите такие значения x, y, z, чтобы значение а= 2.000
4. Что изменится и почему, если в программе заменить команду Writeln(‘a=’,a:7:3); на команду Writeln(a);?
5. Как распечатать только целую часть результата?
Этапы выполнения задания (b).
I Определение исходных данных: переменные x, y.
II Определение результатов: переменная b.
III Алгоритм решения задачи.
1. Ввод исходных данных
2. Вычисление значения выражения
3. Вывод результата.
IV Описание переменных:
Все переменные, определенные для решения задачи, имеют тип real. (Переменные x, y могут быть и целого типа, а переменная b только вещественного типа, поскольку в выражении используется функция вычисления квадратного корня.)
Write(‘введите значение x=’);
Write(‘введите значение y=’);
Можешь загрузить! Пример 3_б
VI Тестирование программы:
1. Запустите программу и введите значения
Проверьте, результат должен быть следующим:
Проверить правильность вычислений можно на калькуляторе.
2. Заполните таблицу
3. Подберите такие значения x, y, чтобы значение b= 2.000.
Проверка знаний Тест: Построение простейших арифметических выражений
Задачи для самостоятельного решения
Составить программу вычисления значения выражения:
а) ; б) ; в) .
Перевести из линейной записи в обычную следующие выражения :
Примечание. В программах на Паскале дробное число записывается с помощью точки. Например, 12.6; 3.6; 4.7.
Составить программу вычисления значения функции при любом значении переменных:
Составить программу вычисления значения функции:
Проверка знаний Тест: Арифметические выражения
Примеры решения задач
1. Составить программу вычисления значения выражения:
.
program Prim_3_1;
var a,b,c, d : r eal ;
begin
writeln (‘Введите 3 численных значения через пробел и нажмите :’);
readln (a,b,c );
d := (4.2/a-3.2*b)/(c/7+8) ;
writeln (‘ d =’, d );
Можешь загрузить! Пример 3_1
.
3. Составить программу вычисления значения функции при любом значении переменных:
a) ;
b) .
Можешь загрузить! Пример 3_3_а
Можешь загрузить! Пример 3_3_б
4. Составить программу вычисления значения функции:
program Prim_ 3_4 ;
var t,g : r eal ;
begin
writeln (‘Введите з начени я t и нажмите :’);
readln ( t );
g := abs(2.4*t-100)+abs(t-2.2)-sqrt(sqr(t)/(18+abs(t))) ;
writeln (‘ g =’, g );
Можешь загрузить! Пример 3_4
Язык программирования TurboPascal
Turbo Pascal. Программирование арифметических выражений
Оператор присваивания
Оператор присваивания является одним из основных операторов любого языка программирования.
Оператор присваивания предназначен для присваивания переменной значения выражения.
Формат оператора присваивания:
В операторе присваивания слева от знака присваивания «:=» записывается переменная, а справа – выражение, численное значение которого присваивается этой переменной.
Выполнение оператора присваивания приведет к вычислению выражения и присваиванию значения выражения переменной.
Обязательным является требование, чтобы выражение и переменная были совместимы по присваиванию.
Например, оператор присваивания
Следует обратить внимание, что всем переменным в правой части оператора присваивания ранее уже были присвоены значения предыдущими операторами, например,
Здесь переменной t присваивается значение, которое до этого момента имела переменная t, плюс 1. Если переменная t имела до выполнения этого оператора значение равное 7, то после исполнения оператора t:=t+1 значение переменной будет равно 8.
Арифметические выражения
Арифметические выражения строятся из арифметических констант, переменных, функций и операций над ними.
Правила записи и смысл арифметических выражений в Паскале почти не отличаются от обычной математической записи.
В арифметических выражениях используются следующие операции и соответствующие знаки:
Операция | Знак операции |
Сложение | + |
Вычитание | — |
Умножение | * |
Деление | / |
Деление целых чисел | div |
Остаток от деления целых чисел | mod |
Примеры арифметических операций:
Арифметические операции выполняются в порядке старшинства: сначала вычисление функции, затем умножение, деление, сложение, вычитание.
Если последовательность выполнения операций не определяется их старшинством, действия выполняются слева направо. Желаемый порядок выполнения операций всегда может быть задан соответствующим образом расставленными круглыми скобками. Допускается ставить лишние круглые скобки, если это упрощает чтение формулы.
Рассмотрим арифметическое выражение
В таблице приведен порядок выполнения операций:
№ | Операция | № | Операция |
1 | a*x | 7 | -a*x*x+b/x*c+y |
2 | a*x*x | 8 | c*n |
3 | -a*x*x | 9 | (a-b) |
4 | b/x | 10 | c*n/(a-b) |
5 | b/x*c | 11 | -a*x*x+b/x*c+y-c*n/(a-b) |
6 | -a*x*x+b/x*c |
ЗАМЕЧАНИЕ. Все данные, входящие в арифметическое выражение, должны быть одного типа.
Исключение составляют только константы и переменные целого типа (integer), которые разрешается использовать в выражениях вещественного типа (real). Если в выражении используются данные целого и вещественного типа, результат операции будет вещественного типа. В других случаях необходимо выполнять преобразование данных.
Пример. Пусть переменные x и y описаны следующим образом:
Следующие операторы являются ошибочными:
Для обеспечения совместимости типов необходимо выполнять преобразования данных. Для преобразования Real в Integer имеются две функции:
Round() – округляет Real до ближайшего целого;
Trunc() – усекает Real путем отбрасывания дробной части.
Правильная запись рассматриваемых операторов: x:=y+2; и x:=y/x; имеет вид:
Программируя арифметические выражения, нужно иметь в виду следующие основные правила:
В арифметических выражениях могут использоваться различные элементарные функции. В языке Турбо Паскаль существуют стандартные функции. Пользователь может не знать, как вычисляется стандартная функция, ему достаточно правильно записать имя функции и ее аргумент. Наиболее часто используемые стандартные функции приведены в таблице:
Функция | Назначение | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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)); Примеры записи простых арифметических выражений и операторов присваивания приведены в таблице:
Типичные ошибки в записи выражений: 4x+1 Пропущен знак умножения между 4 и x a+sinx Аргумент x функции sinx не заключен в скобки ((a+b)/sqr(c*7) не хватает закрывающей скобки ЗАДАЧА2 . Вычислить корни квадратного уравнения по известным формулам
Предположим, что дискриминант этого уравнения больше нуля и уравнение имеет только действительные корни. Программа нахождения корней уравнения приведена ниже. Линейные алгоритмы на языке программирования ПаскальЛинейный алгоритмЛинейным называется алгоритм, в котором команды выполняются последовательно друг за другом. Это самая простая конструкция. Программирование линейных алгоритмов освоить очень легко. Для написания простых программ на паскале разберем основные правила записи кода, основные команды и операторы Паскаль. Структура программы на языке ПаскальПрежде чем самостоятельно писать программы, разберем ее структуру на примере. Ниже приведен код программы, которая вычисляет сумму двух чисел и выводит ее на экран. Заголовок программыТекст программы начинается со слова program. После него записывается имя программы. Данная строка носит информативный характер и ее можно не писать.
Раздел описаний может включать разделы описания переменных, констант, меток, типов, процедур и функций, которые следуют друг за другом в произвольном порядке. Раздел подключения модулей и раздел описаний меток, констант и др. могут отсутствовать. Раздел описания переменныхРаздел программы, обозначенный служебным словом var, содержит описание переменных с указанием их типов. Они используются для хранения исходных данных, результатов вычисления и промежуточных результатов.
В нашем примере переменные с именами X и Y используются для хранения исходных данных. Переменная с именем Z используется для хранения результата вычислений.
Переменные одного типа можно указать в одной строке через запятую. После ставится двоеточие и указывается тип, к которому принадлежат переменные. Тип определяет допустимый диапазон значений. Принадлежность переменной к типу integer означает, что она может хранить только целые числа. Если требуется хранить действительные (дробные) числа, тогда используется тип real. Тело программыВсе что находится между служебными словами Begin и end — тело программы. Здесь записываются основные команды. Оператор присваивания значений переменным имеет следующую структуру: переменная := выражение Значок : = (двоеточие, равно) читается как «присвоить». Вывод результата выполняет команда write или print.
Команды в Паскаль для ввода и вывода данныхКоманда ReadВ первом примере мы присвоили значения переменным непосредственно в тексте программы. Но так как программа пишется для решения множества однотипных задач, то удобнее задавать значения переменным во время ее работы. Для этого применяется команда read, которая позволяет ввести текстовые или числовые данные с клавиатуры. Модифицируем код программы из примера выше. Теперь ввод значений переменных Х и У будет осуществляться по запросу работающей программы. В этот момент нужно будет с клавиатуры ввести два числа через пробел и нажать клавишу Enter, чтобы продолжить выполнение программы. При работающей программе в системе программирования PascalABC появится строка ввода данных. Там и пишутся значения переменных. Команда WriteВ предыдущем примере, при работе программы, не совсем понятно, что нужно вводить и что за числа появляются на экране по завершению работы программы. Поэтому изменим код программы, чтобы у нее появился минимальный пользовательский интерфейс. Для этого задействуем уже знакомую нам команду Write. Теперь посмотрите, как добавленные строки повлияли на работу программы.
Также поменялся вывод результата. Здесь тоже появилась подсказка. Примеры программ на паскале — задания на линейные алгоритмы
Решение: Pascal: Занятие №1. Часть 3: Типы данных в ПаскальТипы данных в ПаскалеПаскаль — это типизированный язык программирования. Это означает, что переменные, в которых хранятся данные, имеют определенный тип данных. Т.е. программе напрямую надо указать, какие данные могут храниться в той или иной переменной: текстовые данные, числовые данные, если числовые — то целочисленные или дробные, и т.п. Это необходимо в первую очередь для того чтобы компьютер «знал», какие операции можно выполнять с этими переменными и как правильно их выполнять. Например, сложение текстовых данных, или как это правильно называется в программировании — конкатенация — это обычное слияние строк, тогда как сложение числовых данных происходит поразрядно, кроме того, дробные и целые числа складываются тоже по-разному. То же самое касается и других операций. Рассмотрим наиболее распространенные в Pascal типы данных. Целочисленные типы данных в Паскаль
Нужно иметь в виду, что при написании программ в паскале integer (в переводе с англ. целое) является наиболее часто используемым, так как диапазон значений наиболее востребуем. Если необходим более широкий диапазон, используется longint (long integer, в переводе с англ. длинное целое). Тип byte в Паскале используется, когда нет необходимости работать с отрицательными значениями, то же самое касается и типа word (только диапазон значений здесь значительно больше). Примеры того, как описываются (объявляются) переменные в Паскале:
Порядок выполнения операцийvar a: integer; b: real; begin a := 1; writeln(‘a := 1; a = ‘,a); a += 2; // Увеличение на 2 writeln(‘a += 2; a = ‘,a); a *= 3; // Умножение на 3 writeln(‘a *= 3; a = ‘,a); writeln; b := 6; writeln(‘b := 6; b = ‘,b); r /= 2; writeln(‘b /= 2; b = ‘,b); end. Стандартные арифметические процедуры и функции PascalЗдесь стоит более подробно остановиться на некоторых арифметических операциях. Пример операции inc: Более сложное использование процедуры inc: Пример использования функции odd: begin WriteLn(Odd(5)); Пример использования процедуры sqr в Pascal: var x:integer; begin x:=3; writeln(sqr(x)); <ответ 9>end. Однако в компиляторе pascal abc возведение в степень осуществляется значительно проще: Пример использования процедуры sqrt в Pascal: var x:integer; begin x:=9; writeln(sqrt(x)); <ответ 3>end. Теперь вы знаете какие однокоренные слова подходят к слову Как написать программу в паскале для вычисления выражения, а так же какой у него корень, приставка, суффикс и окончание. Вы можете дополнить список однокоренных слов к слову "Как написать программу в паскале для вычисления выражения", предложив свой вариант в комментариях ниже, а также выразить свое несогласие проведенным с морфемным разбором. |