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


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

Вспомним оператор присваивания. Общий вид можно записать таким образом:
имя_переменной = выражение 
Выражение, стоящее в правой части оператора присваивания, позволяет вычислять значения переменных по различным формулам.
 
Выражение может содержать:
• целые и вещественные числа (в вещественных числах целая и дробная часть разделяются точкой, а не запятой, как это принято в математике)
• знаки арифметических действий:  
+ сложение,
- вычитание,
* умножение,
/ деление
**возведение в степень;

• вызовы стандартных функций (приведем только часть из большого набора. Все математические функции описаны в библиотеке math, которую необходимо подключить с использованием строки import math )
 abs(n) модуль целого числа n
 math.fabs(x) модуль вещественного числа x 
 math.sqrt(x) квадратный корень из вещественного числа x
 math.pow(x,y) вычисляет x в степени y;

• круглые скобки для изменения порядка действий.
 
Сокращенная запись выражений
При изменении значений переменных, удобно использовать сокращенную запись 
Полная запись Сокращенная запись
a = a + b a +=  b
a = a - b a -=  b
a = a * b a *=  b
a = a / b a /=  b

 

Встроенные функции

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

Например, наиболее часто используемые стандартные математические функции и их запись на языке Python:

 abs(i) модуль целого числа i,
 math.fabs(x) модуль вещественного числа x,
 math.sqrt(x) квадратный корень из вещественного числа x,
 math.pow(x,y) вычисляет x в степени y.
 
Надо запомнить!
Аргумент функции всегда записывается в скобках.

Для работы этих функций необходимо подключить дополнительную математическую библиотеку (модуль).
Сделать это можно добавив в начале программы строчку 
import math
Подробное описание функций, которые содержит данный модуль можно найти на официальном сайте с документацией Python.

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

Допустим нам необходимо вычислить выражение, записанное в математическом виде таким  образом:
\( {2\ *\ 17, 56 ^ 2 \over 7\ *\ 2,47\ *\ 0,43}\)
 

Прежде чем написать программу, которая подсчитает нам результат, сформулируем ПРАВИЛА записи алгебраических выражений на языке программирования:
 
Надо запомнить!
  1. Выражения содержат числа, имена других переменных, знаки операций, круглые скобки, имена функций.
  2. Арифметические операции и их знаки (+, -, *, /, //, %).
  3. Разделителем целой и дробной части является точка.
  4. Выражение записывается в одну строку (линейная запись выражений), символы последовательно выстраиваются друг за другом, проставляются ВСЕ знаки операций, используются круглые скобки.

Таким образом, следуя правилам записи арифметических выражений, мы должны перевести данную (математическую запись) дроби в линейную запись, то есть записать дробь в одну строчку.
Так как и числитель, и знаменатель у нас сложные (то есть содержат два и более множителя), то при записи в линейную форму необходимо выражения в числителе и знаменателе взять в скобки.
Таким образом линейная запись такого выражения будет выглядеть следующим образом:
(2*17.56*17.56)/(7*2.47*0.43)
Напишем программу для вычисления данного выражения. Для этого определимся с входными и выходными данными

Входные данные
Так как нам все значения известны, то с клавиатуры ничего вводить не надо, следовательно входных данных не будет.

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

Результат выражения мы будем сразу выводить на экран без сохранения в какой-либо переменной.  
Так как у нас имеется дробь, то результатом будет являться вещественное число 
print((2 * 17.56 * 17.56) / (7 * 2.47 * 0.43))
Запустите программу на компьютере и убедитесь, что она выдает результат, равный  82.94984330235246

После этого выполните задание.
 
 

Целочисленное деление

Результат операция деления ("/") в Python может быть числом нецелым или, как говорят в программировании, вещественным. Часто нам необходимо получить целое число и остаток от деления. Например, нам известна длина предмета в сантиметрах и необходимо узнать, сколько это целых метров, и сколько остается еще сантиметров. 
Например, 
435 сантиметра = 4 метра 35 сантиметров.
Этого можно добиться, если число 435 поделим нацело на 100, то есть целая часть от деления на 100.
35 сантиметров можно получить, если возьмем остаток от деления 435 на 100.
В таких случаях используют следующие операции:
 // - деление нацело
 % - остаток от деления.

Программу можно записать таким образом:
length = 435
m = length // 100
cm = length % 100


Надо запомнить!
Операции целочисленного деления:
  1. // - деление нацело
  2. % - остаток от деления