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


print(" OR: %s" % bin(bit_or)) print



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

print(" OR: %s" % bin(bit_or))

print("AND: %s" % bin(bit_and))

print("XOR: %s" % bin(bit_xor))

Результат:

Первое: 10100

Второе: 111

OR: 0b10111

AND: 0b100

XOR: 0b10011

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

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

Например, если было введено 349, программа должна вывести на экран число 16, так как 3 + 4 + 9 = 16.

Как извлечь отдельные цифры из числа? Если число разделить нацело на десять, в остатке будет последняя цифра этого числа. Например, если 349 разделить нацело на 10, то получится частное 34 и остаток 9. Если потом 34 разделить также, получится частное 3 и остаток 4; далее при делении 3 на 10 получим частное 0 и остаток 3.

В языках программирования почти всегда есть две операции:

1) нахождение целого при делении нацело,

2) нахождение остатка при делении нацело.

В языке программирования Python первая операция обозначается // (двумя знаками деления), а вторая - % (знаком процента). Например:

>>> 34 // 10

3

>>> 34 % 10



4

Примечание. Операции деления нацело и нахождения остатка с точки зрения арифметики применимы только к целым числам. Но в Python их можно использовать и по отношению к дробным числам:

>>> 34.5 % 10

4.5

>>> 34.5 // 10



3.0

>>> 34.5 // 12.9

2.0

Алгоритм нахождения суммы цифр трехзначного числа abc (где a - сотни, b - десятки и c - единицы) можно описать так:



  1. Найти остаток от деления abc на 10, записать его в переменную d1. Это будет цифра c.

  2. Избавиться от цифры c в числе abc, разделив его нацело на 10.

  3. Найти остаток от деления ab на 10, записать его в переменную d2. Это будет цифра b.

  4. Избавиться от цифры b в числе ab, разделив его нацело на 10.

  5. Число a однозначное. Это еще одна цифра исходного числа.

  6. Сложить оставшееся число a со значениями переменных d1 и d2.

n = input("Введите трехзначное число: ")

n = int(n)

 

d1 = n % 10



n = n // 10

d2 = n % 10

n = n // 10

 

print("Сумма цифр числа:", n + d2 + d3)

Пример выполнения программы:

Введите трехзначное число: 742

Сумма цифр числа: 13

Однако, если нам известно, что число состоит из трех разрядов (цифр), есть немного другой способ извлечения цифр из числа:



  1. Остаток от деления на 10 исходного числа дает последнюю цифру числа.

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

  3. Если исходное трехзначное число разделить нацело на 100, то получится первая цифра числа.

n = input("Введите трехзначное число: ")

n = int(n)

 

d1 = n % 10



d2 = n % 100 // 10

d3 = n // 100

 

print("Сумма цифр числа:", d1 + d2 + d3)

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

n = input("Введите трехзначное число: ")

 

# Извлекается первый[0] символ строки,



# преобразуется к целому.

# Аналогично второй[1] и третий[2].

a = int(n[0])

b = int(n[1])

c = int(n[2])

 

print("Сумма цифр числа:", a + b + c)

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

В этом случае надо воспользоваться функциями randint()randrange() или random() из модуля random. Первым двум функциям передаются диапазоны: randint(100, 999)randrange(100, 1000). Получить трехзначное число, используя random() немного сложнее:

# Функция random генерирует

# случайное дробное число от 0 до 1



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




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

    Басты бет