Помощь - Поиск - Пользователи - Календарь
Полная версия: Перевод чисел
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
Lenochka
Вводится строка символов. Если она является изображением целого числа в двоичной системе счисления, то вывести его шестнадцатеричное и восьмеричное представление, иначе выдать сообщение о некоректном вводе.
Примечание: использовать промежуточный перевод в десятичную систему счисления не разрешено.
GLuk
Ну, Леночка - молодец, ни здрасте/досвиданья, ни просьбы решить задачу.
Как-будто тут роботы сидят и решают!
Сама-то пробовала сделать или хотя бы начать??
Lenochka
ЗДРАВСТВУЙ!!!
Насчет просьбы решить задачу - зачем писать лишнее? Я просто сразу написала самое главное, вот и все!!!
Задачу я конечно же решить пробовала, но ничего не получилось.
ДО СВИДАНИЯ!!
trminator
А с чем проблемы? С вводом или с переводом?
SKVOZNJAK
Какое-то условие расплывчатое. Как тут можно отличить двоичное число от частных случаев десятичных или шестнадцатеричных? Или они не вводятся?
GLuk
Проблемы у нее не с вводом/переводом, а с решением всей задачи!!
Конечно это все имхо, но насчет условия видать предполагается, что число изначально вводится в двоичной с/с. Нужно просто осуществить контроль на предмет присутствия 0 и 1, ежели встречается любой другой знак - число не двоичное или двоичное дробное. Если это Lenochke понятно, тогда подождем ишшо поста. И было бы неплохо если она выложит, хоть кусочек кода, КАК ОНА ПЫТАЛАСЬ СДЕЛАТЬ ЭТУ ЗАДАЧУ... А насчет перевода, дык это достаточно знать просто правила перевода из двоичной в любую другую с/с.


Поди на соурсах решат, тама правила несколько менее жесткие...
trminator
Вводится или последовательность нулей и единиц, или черт знает что. Если это нули и единицы, это двоичное число.

Чтобы перевести число из двоичной системы в 8-ричную, раздели его на тройки чисел, каждая тройка заменяется одним восьмеричным числом.
Пример:
10100011
Разделяем на тройки:
10 100 011
Заменяем:
011 = 3
100 = 7
10 = 2 (можно завести таблицу замен, в которой прописать все 8 вариантов)
Получили 273.

Примерно так же можно переводить 2->16 (только разделять нужно на четверки)
fms
по моему Леночка немного нервничает.. но это уже оффтоп..  :-X
Lenochka
Всем спасибо за советы, задачу я почти решила.
Lenochka
Спасибо за советы.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.