Вопрос задан 21.06.2023 в 12:29. Предмет Информатика. Спрашивает Еремина Полина.

1)Что не так? 2)+ как сделать так, чтобы кол-во чисел которые мы можем написать для примера было

бесконечным. 1) a = int(input()) c = input("Желаемое действие(+ - * / DEL): ") b = int(input()) if c == "+": print(a + ()) elif c == "-": print(a - ()) elif c == "*": print(a * ()) elif c == "/": if b == 0: print("На ноль делить нельзя!") else: print(a / ()) b = float(input("Введите второе число: ")) c = input("Желаемое действие(+ - * DEL): ") if c == "+": print(a + b) elif c == "-": print(a - b) elif c == "*": print(a * b) # Python program to remove multiple # elements from a list # creating a list list1 = [11, 5, 17, 18, 23, 50] # Iterate each element in list # and add them in variable total for ele in list1: if ele % 2 == 0: list1.remove(ele) 2) Вот пример:19*20+30000-29000
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Есиркепов Жанибек.

В коде есть лишнее и повторяющееся, почистил, получилось так.

Выход из бесконечного цикла при вводе EXIT

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

Объяснение:

a = float(input("Введите первое число: "))

c = ""

result = a

while True :

   prec = c

   c = input("Желаемое действие (+ - * / DEL EXIT): ")

   if c=="EXIT" : break

   if c!="DEL" : b = float(input("Введите следующее число: "))

   if c == "/" and b==0 :

       print("На ноль делить нельзя!")

       continue

   else:

       print(str(result) + " "+ c + " " + str(b)  + " = ")

   if c == "+":

       result = result + b

   elif c == "-":

       result = result - b

   elif c == "*":

       result = result * b

   elif c == "/":

       result = result / b

   elif c == "DEL":

       if prec == "+":

           result = result - b

       elif prec == "-":

           result = result + b

       elif prec == "*":

           result = result / b

       elif prec == "/":

           result = result * b    

       elif prec == "DEL2":

           print("Невозможно отменить действие")

       c = "DEL2"

   print(result)

   

print("Программа завершена. Последнее значение = "+str(result)

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

У вас есть несколько ошибок и недоразумений в вашем коде. Давайте разберем их по порядку:

  1. Ошибка в коде:
python
a = int(input()) c = input("Желаемое действие(+ - * / DEL): ") b = int(input()) if c == "+": print(a + ()) # Ошибка: здесь нужно сложить a и b elif c == "-": print(a - ()) # Ошибка: здесь нужно вычесть b из a elif c == "*": print(a * ()) # Ошибка: здесь нужно умножить a на b elif c == "/": if b == 0: print("На ноль делить нельзя!") else: print(a / ()) # Ошибка: здесь нужно разделить a на b b = float(input("Введите второе число: ")) c = input("Желаемое действие(+ - * DEL): ") if c == "+": print(a + b) elif c == "-": print(a - b) elif c == "*": print(a * b) # Здесь нет обработки операции DEL. Вам нужно добавить этот случай. # Примеры операций DEL: # Удаление первого вхождения b из списка list1 if c == "DEL": if b in list1: list1.remove(b) else: print("Число", b, "не найдено в списке.")
  1. Чтобы создать возможность выполнять бесконечное количество операций, вы можете использовать цикл, например, while. Это позволит вам продолжать выполнять операции до тех пор, пока не будет задано специальное условие для выхода. Например:
python
while True: expression = input("Введите выражение (или 'exit' для выхода): ") if expression == 'exit': break # Разбор и выполнение операции result = eval(expression) print("Результат:", result)

В этом коде пользователь может вводить математические выражения, и они будут вычисляться с использованием функции eval(). Для выхода из цикла можно ввести "exit".

Пример:

bash
Введите выражение (или 'exit' для выхода): 5 + 3 Результат: 8 Введите выражение (или 'exit' для выхода): 10 * 2 Результат: 20 Введите выражение (или 'exit' для выхода): exit

Таким образом, вы можете выполнять бесконечное количество операций, пока не решите завершить программу.

0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос