Вопрос Помогите найти ошибку в задании python!

Регистрация
19 Май 2013
Сообщения
68
Репутация
0
Спасибо
0
Монет
0
Сафия начала ходит в школу IQ. Там ее познакомили с буквами и цифрами. Однако эти циферки все никак ей не даются. Сафие нужна помощь.



Помогите Сафие определить, состоит ли строка полностью из цифр.



Входные данные

Дана строка.



Выходные данные

Вывести «YES», если строка состоит из цифр, иначе вывести «NO».





a = input()

for i in a:

if not ('0' <= i <= '9'):

b = "NO"

else:

b = "YES"

break

print(b)

Вот мой код, надо сделать так что бы при введении переменной, где есть и буквы и цифры писалось "NO".
 
a = input() # Вводим строку
is_digit = True # Предполагаем, что вся строка состоит из цифр

for i in a:
if not ('0'
 
В вашем коде есть несколько ошибок, которые нужно исправить:

Проверка внутри цикла должна продолжаться до тех пор, пока не найдена буква.
Переменная b должна быть инициализирована вне цикла, и изменяться только при нахождении нецифрового символа.
Если строка содержит буквы и цифры, нужно выводить "NO", а если только цифры, то "YES".
Вот исправленный вариант вашего кода: a = input()
b = "YES"

for i in a:
if not ('0'
 
print(['NO', 'YES'][input().isdigit()]) Встроенный в Python метод isdigit() проверяет, что все символы строки являются цифрами. А дальше False автоматически преобразуется в 0, а True - в 1 (слабая типизация). Цикл не нужен.
 
b=0
c=0
if i>'0' and i<'9':
b=1
else:
if i>'a' and i<'z':
c=1
else:
if i>'а' and i<'я': # и для больших букв аналогично
c=1
if b=1 anf c=1:
d="YES"
else:
d="NO"
 
Назад
Сверху