/
IvanKhabarov
/
python
Обзор
Документация
Войти
/
IvanKhabarov
/
python
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
Home_Task/HT_2/task2.py
52 строки
3 KB
Ivan Khabarov
Добавлены новые проекты
03 сен 2024, 11:36
03 сен 2024, 11:36
6296fbf
Код
Авторство
О чём код?
# Задание 2. Преобразование числа в шестнадцатеричное # представление # Напишите программу, которая получает целое число и возвращает его # шестнадцатеричное строковое представление. Функцию hex используйте для # проверки своего результата. # Подсказка № 1 # Для преобразования числа в шестнадцатеричное представление нужно сначала # определить символы, которые будут использоваться для представления цифр в этой # системе. В шестнадцатеричной системе используются цифры от 0 до 9 и буквы от A до # F. # Подсказка № 2 # Обработайте случай, когда число равно 0. В этом случае шестнадцатеричное # представление числа всегда будет '0'. # Подсказка № 3 # Учтите, что функция должна правильно обрабатывать отрицательные числа. Сначала # сохраните информацию о том, является ли число отрицательным, а затем # преобразуйте число в положительное для удобства работы. # Подсказка № 4 # Создайте цикл, который будет последовательно делить число на 16 и записывать # остаток от деления в строку, представляющую шестнадцатеричное число. Добавляйте # соответствующий символ к результату. # Подсказка № 5 # После завершения преобразования добавьте префикс '-' для отрицательных чисел. # Верните строковое представление числа в шестнадцатеричной системе. nums = [255, 16, 0, -42] # Определяем символы для цифр в шестнадцатеричной системе. hex_digits = '0123456789ABCDEF' for num in nums: # Определяем, является ли число отрицательным. if num == 0: hex_num = '0' else: # Обрабатываем отрицательные числа. is_negative = num < 0 if is_negative: num = -num # Преобразуем число в шестнадцатеричное представление. hex_num = '' while num > 0: remainder = num % 16 hex_num = hex_digits[remainder] + hex_num num //= 16 # Добавляем префикс для отрицательных чисел. if is_negative: hex_num = '-' + hex_num # Выводим результат. print(f'{num} = {hex_num}')