Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save Miron-Anosov/08761dd8765c06f8f4f9f85f1caef92a to your computer and use it in GitHub Desktop.
Save Miron-Anosov/08761dd8765c06f8f4f9f85f1caef92a to your computer and use it in GitHub Desktop.
плавающая точка
print('Задача 1. Урок информатики 2')
# В прошлый раз учитель написал программу,
# которая выводит числа в формате плавающей точки, однако он вспомнил,
# что не учёл одну важную штуку: числа-то могут идти от нуля.
#
# Задано положительное число x (x > 0).
# Ваша задача преобразовать его в формат плавающей точки,
# то есть x = a * 10 ** b, где 1 ≤ а < 10
#
# Обратите внимание, что x теперь больше нуля, а не больше единицы.
# Обеспечьте контроль ввода.
#
# Пример 1:
#
# Введитечисло: 92345
#
# Формат плавающей точки: x = 9.2345 * 10 ** 4
#
# Пример 2:
#
# Введите число: 0.0012
# Формат плавающей точки: x = 1.2 * 10 ** -3
def NumMore(user_num):
count = 0 # b
while user_num > 10:
user_num /= 10
count += 1
# x = user_num * 10 ** count
print('\nФормат с плавающей точки: x =', user_num, '* 10 **', count)
def NumLess(user_num):
count = 0
while user_num <= 1:
user_num *= 10
count -= 1
print('\nФормат с плавающей точки: x =', round(user_num, 1), '* 10 **', count)
def Start():
user_num = float(input('Введите число: ')) # x
if user_num >= 11:
NumMore(user_num)
elif 0 < user_num < 1:
NumLess(user_num)
else:
print('Ошибка ввода. (X > 10 или 0 < X < 1)')
Start()
Start()
@Miron-Anosov
Copy link
Author

Плавающая точка

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment