Найти - Пользователи
Полная версия: Как узнать век?
Начало » Python для новичков » Как узнать век?
1 2
Vinci
Недавно начал изучать Python и решал задачки, но вот попалась та, которую решить я не могу. В общем, надо найти ввести год, а программа должна показать, какой это век. Я смог решить её только для года, где число цифр от 1 до 5. Не подскажете, как можно её решить для любого года?
FishHook
Vinci
Я смог решить её только для года, где число цифр от 1 до 5.
показывайте решение
Vinci
a=int(input('Введите год: '))
def vek(a):
    if len(str(a)) == 2:
        return('Нулевой век')
    elif len(str(a)) == 3:
        d=int(str(a)[0]) + 1
        return(str(d) + ' век')
    elif len(str(a)) == 4:
        d=str(int(str(a)[0] + str(a)[1]) + 1)
        return(str(d) + ' век')
    elif len(str(a)) == 5:
        d=str(int(str(a)[0] + str(a)[1] + str(a)[2]) + 1)
        return(str(d) + ' век')
    else:
        return('Такому жизнь меня не готовила')
    
print(vek(a))
botinag
>>> 2016 / 100
20
>>> 123456789 / 100
1234567
Vinci
Ахххх, понятно, благодарю.
terabayt
botinag
век в григорианском календаре
Vinci
Главное, что принцип понятен. Я всё сидел думал, как откинуть те две цифры, забыв напрочь о делении и что эти цифры после запятой можно легко убрать, сделав число целым
Беда лишь в том, что, да, в русском признано делать нумерацию на римском.

Собственно, код, учитывая, что век начинается с xxx1:

a=int(input('Введите год: '))
def vek(a):
    if a % 100 == 0:
        d = int(a/100)
    else:
        d = int(a/100) + 1
    return(str(d) + ' век')
    
print(vek(a))

Ещё раз большое спасибо!
Shaman
q, r = divmod(a, b)
Есть такая часто выпадающая из виду функция.
py.user.next
>>> def vek(year):
...     return year // 100 + (year % 100 != 0)
... 
>>> vek(1)
1
>>> vek(101)
2
>>> vek(100)
1
>>>
to_night
Немного оффтопик, но чтобы не изобретать велосипеды, советую ознакомится: Часто задаваемые вопросы о календарях @ Клаус Тондеринг
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