Найти - Пользователи
Полная версия: Анализатор формулы рекурсия
Начало » Python для новичков » Анализатор формулы рекурсия
1
Qwerty16
Дан некоторый текст, за которым следует точка (в сам текст точка не
входит). Определить программно, является ли текст правильной записью
«формулы», которая записана в соответствии с синтаксисом EBNF:
Формула = Цифра {Цифра} | (Формула Знак Формула).
Знак = ‘+’ | ‘-’ | ‘*’.
Цифра = ‘0’ | ‘1’ | ‘2’ | ‘3’ | ‘4’ | ‘5’ | ‘6’ | ‘7’ | ‘8’ | ‘9’.
С помощью регулярных выражений могу сделать а вот рекурсивно не получается.
Не могу разобраться помогите пожалуйста.
FishHook
Ну сделайте как получается, в чем проблема то?
Qwerty16
Нужно при помомощи рекурсии так нельзя
FishHook
Qwerty16
Нужно при помомощи рекурсии так нельзя
Почему нельзя, если работает? Странный вы человек, однако.
ZerG
потому что задачу препод так ставит….
den4ik
А можно увидеть “свой” вариант?
Qwerty16
То на рекурсию нет идей вообще
Qwerty16
SIGN = '+-*'
def f(s, c=''):
    if len(s)!=0 and s[0].isdigit():
        return True
    elif (s[0] in SIGN) and (c in SIGN):
        return False
    else:
        return f(s[1:],s[0])
    
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB