So
Янв. 12, 2014 15:48:35
Вещественное число задается следующим образом (форма Бэкуса-Наура):
<Number> ::= <digit> {<digit>} [ <Separator> <digit> {<digit>}
[<Exponent> <digit> {<digit>}]
<digit> ::= ‘0’ | ‘1’ | ‘2’ | ‘3’ | ‘4’ | ‘5’ | ‘6’ | ‘7’ | ‘8’ | ‘9’
<Sign> ::= ‘+’ | ‘-’
<Separator> ::= ‘.’
<Exponent> ::= ‘E’ | ‘e’
Требуется проверить, является ли вводимая строка корректной записью числа.
Формат ввода
Вводится одна строка, содержащая не более 200 символов.
Формат вывода
Необходимо вывести YES или NO в зависимости от того, является ли данная строка записью одного вещественного числа.
sergeek
Янв. 12, 2014 17:02:36
def test(num):
try:
float(num)
except ValueError:
return 'NO'
else:
return 'YES'
So
Янв. 12, 2014 18:11:33
А можно с обьяснением?
Singularity
Янв. 12, 2014 18:47:47
So
нет ибо это форум телепатов
JOHN_16
Янв. 12, 2014 22:54:43
So
Все просто - конвертируем строку в вещественное число встроенной функций, если при этом возникает ошибка, то строка не подходит по условию, иначе все ок.
эх…говорил же Владимир Ильич в свое время,а счаз…уг
py.user.next
Янв. 13, 2014 11:50:27
So
Вещественное число задается следующим образом
неправильно записал, нужно было в код обернуть