Найти площадь и периметр прямоугольного треугольника по двум заданным катетам


print("Площадь треугольника: %.2f" % S) print



бет2/34
Дата05.01.2022
өлшемі186,75 Kb.
#129167
1   2   3   4   5   6   7   8   9   ...   34
Байланысты:
шпор

print("Площадь треугольника: %.2f" % S)

print("Периметр треугольника: %.2f" % P)

Результат:

Длина первого катета: 5.4

Длина второго катета: 2.1

Площадь треугольника: 5.67

Периметр треугольника: 13.29

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

Если попытаться сделать такой обмен, сначала присвоив первой переменной значение второй, а второй - значение первой, ничего не получится. Допустим, есть две переменные a и b. При этом a = 5 и b = 6. Если выполнить выражение a = b, то переменная a будет хранить число 6, также как и b. Число 5 будет утеряно. После этого выражение b = a теряет смысл, т. к. b будет присвоено его же текущее значение. В данном случае 6.

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

Таким образом классический алгоритм обмена значений двух переменных выглядит так:

a = 5

b = 6


 

buf = a


a = b

b = buf


Однако есть другой способ, позволяющий не использовать третью переменную. Но этим способом не всегда рекомендуют пользоваться. Выглядит он так:

a = 5


b = 7

a = a + b # 12

b = a - b # 12-7=5

a = a - b # 12-5=7

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

>>> a = 10

>>> b = 20

>>> a, b = b, a

>>> a

20

>>> b



10

Почему такое возможно? В Питоне есть такая структура данных как кортеж.

При выполнении a, b = b, a интерпретатор Python сначала получает значения связанные с переменными b и a (правая часть) и помещает их в кортеж, в данном случае получится (10, 20). После этого он связывает каждый элемент кортежа в определенной позиции с переменной в той же позиции, но в кортеже слева (a,b).

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

>>> a = 14

>>> b = 18

>>> c = 16

>>> a,b,c = c,a,b

>>> a,b,c

(16, 14, 18)

>>> d = 4.56

>>> e = "hi"

>>> d,e = e,d

>>> d


'hi'

>>> e


4.56

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

Побитовые операции выполняются над разрядами числа. Так если имеем два числа 101 и 100, над которыми выполняется побитовая операция ИЛИ, то получим двоичное число 101:

101
100


101

В языке программирования Python побитовые операции применяются к числам, представленными в десятичной системе счисления. Знаки побитовых операций: | - ИЛИ, & - И, ^ - исключающее ИЛИ.

Функция int() всегда преобразует переданную ей строку в десятичную систему счисления. При этом вторым аргументом можно указать, в какой системе счисления содержатся данные в этой строке (двоичной, восьмеричной, шестнадцатеричной).

Функция bin(), наоборот, принимает десятичное число и возвращает строку, являющуюся представлением переданного числа в двоичном виде.

n1 = input("Первое: ")

n2 = input("Второе: ")

 

n1 = int(n1, 2)



n2 = int(n2, 2)

 

bit_or = n1 | n2



bit_and = n1 & n2

bit_xor = n1 ^ n2

 



Достарыңызбен бөлісу:
1   2   3   4   5   6   7   8   9   ...   34




©engime.org 2024
әкімшілігінің қараңыз

    Басты бет