Как перевести числа из десятичной системы в двоичную

0
(tatyana_b) Татьяна
16 Декабря 2014, 23:53
 
 
Статья:
Я работаю учителем информатики в общеобразовательной школе. Хотела бы сказать, что помимо десятичной и двоичной , информация может сохранятся в восьмеричной и шестнадцатеричной системе. Но, учащимся в школе, очень нравится переводить числа из десятичной в двоичную и обратно.
Итак, десятичная система, это которые мы используем в повседневной жизни: даты, суммы, вес, длинна и тому подобное. Двоичная система - это все те же числа, только записаны с помощью двух цифр: 1 и 0. Если мы записываем число в десятичной системе, то справа приписываем индекс 10. Если мы записываем число в двоичной системе, то после комбинации из 1 и 0 мы ставим индекс 2.
Чтобы перевести число из десятичной системы в двоичную, нужно это число делить на 2. Если получится остаток 1, записываем его справа, если остатка нет, справа ставим 0.Теперь рассмотрим несколько примеров.
- переведём число 5. Делим на 2, не делится. Забираем 1 и записываем справа, а делим 4. Получили 2, подписали снизу под 4. Теперь 2 делим на 2 (делится). Справа пишем 0. Снизу записываем 1. Теперь 1 делим на 2 (не делится), справа пишем 1, а снизу 0.
5 1
2 0
1 1
0
5 в десятичной системе равно 101 в двоичной системе. Обратите внимание, Единицы и нули переписываем снизу вверх.
- теперь поделим более сложное число 18.
18 0
9 1
4 0
2 0
1 1
0
18 в десятичной системе равно 10010 в двоичной системе.
Большие числа (трёхзначные и четырёхзначные) переводят таким же образом.
Был ли полезен материал?
да 0 нет 0
 
 
0
(pjlol) Анастасия
16 Декабря 2014, 16:43
 
 
Статья:
На самом деле, существует куча способов, но я вот лично выбрала, как по мне самый простой из них. Чтобы понять из чего должен состоять код, нужно просто уметь, хотя бы на листке бумаги делать такую нехитрую операция с числами. И так, суть проста: делим на два, остается в остатке либо 0, либо 1. И вот когда делить невозможно, мы прекращяем эту операцию. Ну а число в двоичной ситеме - это чтение остатка записи. Ну а теперь покажу собственно код:
begin
read(a);
v:=''; {Это заготовка для нашего финального результата в текстовом типе данных, которая изначально пуста. Для чего это? Узнаете позже!}
while a>=1 do
begin
b:=a mod 2;{Определяем остаток, с помощью этой элементарной функции}
a:=a div 2;{А вот этой строкой, мы подготавливаем число для следующего круга цикла}
str(b,z);{Переводим число в текстовый тип данных, ради того чтобы добавить его в нашу заготовку}
w:=Copy(z,1,1);
v:=w+v; {Собственно, добавляем наше число в строку}
end;
Теперь мы имеем комбинацию нулей и единиц. Но что же делать дальше? А теперь нам на помощь приходи цикл наоборот:
for i:=1 downto 1 do
write(v)
Все просто. Узнавайте больше о программировании на этом сайте. Суть вы поняли, а уже модификации для других языков ваше дело. Спасибо, за внимание.
Был ли полезен материал?
да 0 нет 0
 
 




написать комментарий
*Имя *e-mail
*разрешена загрузка файлов типа: jpg,jpeg,gif,png,flv,mp4,wmv,wma,mp3,ppt,doc,docx,xls,xlsx,odt,odp,ods,odb,rtf,xml,txt,csv
**максимальный размер загружаемого файла: 240 kb.


прикрепить файл
Минимальная длина комментария 50 символов.
 
О чем сегодня пишем?
Личный кабинет
Логин:
Пароль:
Регистрация
Забыли свой пароль?