Кристиан
5 год назад
Пожалуйста, напишите программу!
Маленький Петя недавно начал посещать кружок по программированию. Естественно, перед ним появилась задача выбрать язык, на котором он будет программировать. После долгих размышлений, он понял, что Java — лучший выбор. Главным аргументом в пользу выбора Java было то, что в ней есть очень большой целочисленный тип данных — BigInteger.
Но после посещения занятий кружка, Петя понял, что не все задачи требует использования типа BigInteger. Как оказалось, в некоторых задачах намного удобнее использовать маленькие типы данных. Поэтому возникает вопрос: «Какой целочисленный тип использовать, если нужно хранить натуральное число n?»
Петя знает лишь 5 целочисленных типов:
1) byte занимает 1 байт, позволяет хранить числа от - 128 до 127
2) short занимает 2 байта, позволяет хранить числа от - 32768 до 32767
3) int занимает 4 байта, позволяет хранить числа от - 2147483648 до 2147483647
4) long занимает 8 байт, позволяет хранить числа от - 9223372036854775808 до 9223372036854775807
5) BigInteger позволяет хранить любое целое число, но при этом не является примитивным типом, и операции с ним выполняются гораздо медленнее.
Для всех указанных выше типов значения границ включаются в диапазон значений.
Из этого списка Петя хочет выбрать самый маленький тип, в котором можно хранить натуральное число n. Так как BigInteger работает гораздо медленнее, Петя рассматривает его в последнюю очередь. Помогите ему.
Входные данные
В первой строке записано натуральное число n. Оно состоит не более чем из 100 цифр и не содержит лидирующих нулей. n не может являться пустой строкой.
Выходные данные
Выведите первый тип из списка "byte, short, int, long, BigInteger", в котором можно хранить натуральное число n, в соответствии с данными, приведенными выше.
ОТВЕТЫ
Beim
Jun 30, 2019
Python:
n = int(raw_input())
if nlt;=127 and ngt;=-128:
print "byte"
elif ngt;=-32768 and nlt;=32767:
print "short"
elif ngt;=-2147483648 and nlt;=2147483647:
print "int"
elif ngt;=-9223372036854775808 and nlt;=9223372036854775807:
print "long"
else: print "BigInteger"
n = int(raw_input())
if nlt;=127 and ngt;=-128:
print "byte"
elif ngt;=-32768 and nlt;=32767:
print "short"
elif ngt;=-2147483648 and nlt;=2147483647:
print "int"
elif ngt;=-9223372036854775808 and nlt;=9223372036854775807:
print "long"
else: print "BigInteger"
Программа в комментарии:
124
Смежные вопросы: