Вопрос задан 01.07.2023 в 09:36. Предмет Информатика. Спрашивает Алёкминская Дарья.

Скобки Задана строка, в которой могут быть встречены 3 типа скобок: фигурные, квадратные и

круглые. Помимо скобок в строке встречаются и другие последовательности символов. Вложенность скобок может быть произвольной. Необходимо проверить корректность скобочной записи: каждой открывающей скобке должна соответствовать следующая за ней закрывающая скобка того же типа на том же уровне вложенности, не должно быть открывающей или закрывающей скобки без пары. Входные данные: Строка, содержащая произвольный набор символов(в т.ч. и без скобок) Выходные данные: Программа должна вывести: А) слово “correct”, если запись корректна или не содержит скобок Б) слово “incorrect”, если запись не корректна Sample Input: (this [is] test) Sample Output: correct Напишите программу. Тестируется через stdin → stdout Time Limit: 15 секунд Memory Limit: 256 MB
0 0
Перейти к ответам

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

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

Ответ:

a = input()

mas = []

answer = ""

test01 = "Incorrect"

test02 = "Incorrect"

def check():

   global mas

   global answer

   global test01

   global test02

   

   

   #Bad, but this test01 deleted

   

   

   #Second step for check

   for infinity in range(100):

       for i in range(len(mas)):

           try:

               m = i + 1

               if mas[i] == "[" and mas[m] == "]" or mas[i] == "{" and mas[m] == "}" or mas[i] == "(" and mas[m] == ")":

                   del mas[i]

                   del mas[i]

           except:

               pass

       if len(mas) == 0:

           test02 = "Correct"

           break

       else:

           test02 = "Incorrect"

   #End testing

   if test02 == "Correct":

       answer = "correct"

   else:

       answer = "incorrect"

for i in range(len(a)):

   if a[i] == "{":

       mas.append(a[i])

   if a[i] == "[":

       mas.append(a[i])

   if a[i] == "(":

       mas.append(a[i])

   if a[i] == "}":

       mas.append(a[i])

   if a[i] == "]":

       mas.append(a[i])

   if a[i] == ")":

       mas.append(a[i])

del a

del i

check()

print(answer)

Объяснение:

Благодарности не требую, все ради Вас. Прошу отметить как лучшее решение

10/10

0 0
Отвечает Ефимов Дмитрий.

Ответ:

a = input()

firs = 0

sec = 0

third = 0

for i in a:

   if(i == '{' or i == '}'):

       firs += 1

   elif (i == '(' or i == ')') :

       sec += 1

   elif(i == '[' or i == ']'):

       third += 1

if( (firs+sec+third) % 2 == 0 ):

   print('correct')

else:

   print('incorrect')

Объяснение:

Прошел 8 из 10

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

Конечно, вот пример программы на языке Python, который выполняет проверку корректности скобочной записи:

python
def is_correct_expression(expression): stack = [] # Используем стек для отслеживания открытых скобок # Словарь для соответствия открывающих и закрывающих скобок brackets_map = {')': '(', '}': '{', ']': '['} for char in expression: if char in '([{': stack.append(char) elif char in ')]}': if not stack or stack[-1] != brackets_map[char]: return False stack.pop() return not stack # Если стек пустой, то все скобки были корректно закрыты # Чтение входных данных input_string = input().strip() # Проверка и вывод результата if is_correct_expression(input_string): print("correct") else: print("incorrect")

Пример работы программы:

kotlin
Input: (this [is] test) Output: correct
makefile
Input: ((test]) Output: incorrect

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

0 0

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

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

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

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