Найти тему
Dabda & Enot

Тема 5. Свой калькулятор

Всем привет! Сегодня мы напишем свои программы на основе знаний, которые получили в прошлых уроках. Начнем с решения задач из прошлого урока.

Задача 1: Функция для вычисления факториала числа

def factorial(n):
q = 1
for i in range(1, n + 1):
q *= i
return q

print(factorial(5))
-2

Задача 2: Функция для нахождения максимального элемента в списке

def max_num(numbers):
return max(numbers)

numbers = [3, 5, 7, 2, 8, 1]
print(max_num(numbers))
-3

Задача 3: Функция для подсчета суммы чисел в списке

def summ_num(numbers):
return sum(numbers)

numbers = [3, 5, 7, 2, 8, 1]
print(summ_num(numbers))
-4

Задача 4: Функция для проверки, является ли строка палиндромом

def Palindrome_check(word):
if word == word[::-1]: #word[::-1] Переворачивает число
return True
else:
return False

print(Palindrome_check("level")) # Вывод: True
print(Palindrome_check("python")) # Вывод: False
-5

Своя первая программа

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

def calculator():
print("Простой калькулятор")
num1 = float(input("Введите первое число: "))
operator = input("Введите оператор (+, -, *, /): ")
num2 = float(input("Введите второе число: "))

if operator == '+':
print(f"Результат: {num1 + num2}")
elif operator == '-':
print(f"Результат: {num1 - num2}")
elif operator == '*':
print(f"Результат: {num1 * num2}")
elif operator == '/':
if num2 == 0:
print("На ноль делить нельзя. ERROR")
else:
print(f"Результат: {num1 / num2}")
else:
print("Неверный оператор")

calculator()