1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie. Узнать больше.

Не могу разобраться с кодом на PYTHON 3

Тема в разделе "python", создана пользователем searchengines, 5 июн 2019.


Поделиться в соц сетях

  1. searchengines

    searchengines Administrator

    Регистрация:
    5 янв 2019
    Сообщения:
    1.666
    Симпатии:
    2
    Баллы:
    38
    Пример кода:

    import math

    def pl(a, b):
    return a + b
    def mi(a, b):
    return a - b
    def mul(a, b):
    return a * b
    def div(a, b):
    return a / b
    print("Я только развиваюсь, вот мои основные функции: \n 1) Обычные функции калькулятора(плюс, минус) \n 2) Вычисляю квадратный корень \n 3) Вычисляю факториал числа \n 4) Вычисляю гипотенузу прямоугольного треугольника, зная два его катета \n 5) Вычисление логарифма \n")

    c = input("Введите то число, которое выбрали, основываясь на списках функций, про которых было сказано выше: ")

    if c == '1':
    try:
    a = float(input("Введите первое число: "))
    except ValueError:
    print("Надо было ввести число!")
    raise SystemExit

    try:
    b = float(input("Введите второе число: "))
    except ValueError:
    print("Надо было ввести число!")
    raise SystemExit

    try:
    d = input("Введите математический знак: ")

    except ValueError:
    print("Введите математический знак!")
    raise SystemExit

    if d == '+':
    print("Сумма чисел равна " + str(pl(a, b)))

    elif d == '-':
    print("Разность чисел равна " + str(mi(a, b)))

    elif d == '*':
    print("Произведение чисел равно " + str(mul(a, b)))

    elif d == '/':

    if b == 0:
    print("На нуль делить нельзя!")

    else:
    print("Частность чисел равна " + str(div(a, b)))

    elif c == '2':

    try:
    e = float(input("Введите число: "))

    except ValueError:
    print("Надо было ввести число!")
    raise SystemExit

    print("Квадратный корень равен " + str(math.sqrt(e)))

    elif c == '3':

    try:
    f = float(input("Введите число, факториал которого вы хотите вычислить: "))

    except ValueError:
    print("Надо было ввести число!")
    raise SystemExit

    print("Факториал введенного числа равен " + str(math.factorial(f)))

    elif c == '4':

    try:
    g = float(input("Введите длину первого катета: "))

    except ValueError:
    print("Надо было ввести число!")
    raise SystemExit

    try:
    h = float(input("Введите длину второго катета: "))

    except ValueError:
    print("Надо было ввести число!")
    raise SystemExit

    print("Длина гипотенузы равна " + str(math.hypot(g, h))

    elif c == '5':

    j = input("А) Логарифм по основанию 10 \n Б) Логарифм по основанию 2 \n В) Логарифм по указанному вами основанию \n ")
    print("Введите русские буквы!")
    if j == 'А' or j == 'а':

    try:
    p = float(input("Введите число: "))

    except ValueError:
    print("Над было ввести число!")
    raise SystemExit

    print("Логарифм числа по основанию 10 равен" + math.log10(p))

    elif j == 'Б' or j == 'б':

    try:
    o = float(input("Введите число: "))

    except ValueError:
    print("Надо было ввести число!")
    raise SystemExit

    print("Логарифм числа по основанию 2 равен " + math.log2(o))

    elif j == 'В' or j == 'в':

    try:
    k = float(input("Введите число: "))

    except ValueError:
    print("Нужно было ввести число!")
    raise SystemExit
    try:
    y = input("Введите основание(можете пропустить, тогда будет вычислен натуральный логарифм): ")

    except:
    pass

    print("Логарифм равен " + math.log(k, [y]))

    else:
    print("Надо было ввести русские буквы!")


    else:
    print("Что-то пошло не так(у тебя)")


    Запускаю и вижу в консоли вот такую ошибку: [​IMG]

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

Поделиться этой страницей