A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Cancel Create
GB_python_homework / task25.py /
Code definitions
Code navigation index up-to-date
- Go to file T
- Go to line L
- Go to definition R
- Copy path
- Copy permalink
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Cannot retrieve contributors at this time
17 lines (15 sloc) 447 Bytes
- Open with Desktop
- View raw
- Copy raw contents Copy raw contents Copy raw contents
Copy raw contents
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
Как преобразовать число из десятичной системы счисления в двоичную?
»’ |
Задача №25: |
Напишите программу, которая будет преобразовывать десятичное число в двоичное. |
Пример: |
45 -> 101101; |
3 -> 11; |
2 -> 10. |
»’ |
s = «» |
n = int ( input ( |
«Введите число для преобразовывания десятичного числа в двоичное: n » )) |
while n != 0 : |
s = str ( n % 2 ) + s |
n //= 2 |
print ( s ) |
- Copy lines
- Copy permalink
- View git blame
- Reference in new issue
Источник: github.com
Функция перевода десятичного числа в двоичное
Переводить в двоичную систему счисления вводимые в десятичной системе счисления числа до тех пор, пока не будет введен 0. Для перевода десятичного числа в двоичное написать функцию.
В основной ветке программы выполнять бесконечный цикл, в котором
- запрашивать десятичное число,
- если оно не ноль, то вызывать функцию перевода его в двоичное представление и выводить результат работы функции на экран,
- иначе (когда введен 0) прерывать цикл оператором break .
Функция должна принимать десятичное число и возвращать двоичное (в строковом виде). В теле функции будет поэтапно находиться остаток от деления на 2 последней цифры, после чего само число будет сокращаться путем деления его нацело на 2. Остаток от деления должен быть преобразован в строковое представление и присоединен впереди формируемой строки двоичного представления числа.
Десятичное число в двоичное. Язык программирования Python
Pascal
перевод числа в двоичную систему паскаль
var
decimal: word;
function binary(decimal:word):string;
var s: string[1];
begin
binary := »;
while decimal > 0 do begin
str(decimal mod 2, s);
binary := s + binary;
decimal := decimal div 2
end;
end;
begin
while True do begin
write(‘Decimal: ‘);
readln(decimal);
if decimal <> 0 then
writeln(binary(decimal))
else break;
end;
end.
Decimal: 100
1100100
Decimal: 15
1111
Decimal: 1984
11111000000
Decimal: 201
11001001
Decimal: 255
11111111
Decimal: 0
Python
перевод из десятичной в двоичную python (питон)
def binary(n):
s = »
while n > 0:
s = str(n%2) + s
n //= 2
return s
while 1:
n = int(input())
if n != 0:
print(binary(n))
else:
break
КуМир
алг
нач
цел num
нц пока да
ввод num
если num <> 0 то
вывод binary(num), нс
иначе
выход
все
кц
кон
алг лит binary(цел n)
нач
лит c
цел m
m := n
знач := «»
нц пока m > 0
c := цел_в_лит(mod(m,2))
знач := c + знач
m := div(m,2)
кц
кон
Источник: gospodaretsva.com
Написать программу которая преобразует введенное пользователем десятичное число в двоичное
Жестоко.
Кстати, Вы уверены, что изначально число было именно в десятичной системе? (мне почему-то кажется, что в двоичной)
Как-то попалось мне такое задание на цикл for:
«Написать программу, которая преобразует введённое пользователем десятичное число в двоичное.
Пример работы:
Преобразование десятичного числа в двоичное
Введите целое число от 0 до 255
26
Десятичному числу 26 соответствует двоичное 11010″
вот я и привёл пример решения.
Что опять не нравиться-то?
Регистрация: 11.10.2011
Сообщений: 3,882
1) Уважаемый, оверквотингом страдать не надо!
2) Ответ ТС был дан, и ответ очень (подчеркиваю ОЧЕНЬ) хороший, после чего вы неожиданно решили не из любой позиционной перевести в другую(опять же ЛЮБУЮ) позиционную с.с., а лишь из 10-чной в 2-чную, что и вызвало мою реакцию
Регистрация: 01.05.2012
Сообщений: 5
uses crt; const s: string = ‘0123456789ABCDEF’; var k1, k2: integer; num: longint; c: char; procedure translate(num, k: integer); begin if (num <> 0) then begin translate(num div k, k); write(s[num mod k + 1]); end; end; begin writeln(‘Input k1, number, k2:’); read(k1); num := 0; read(c); repeat read(c); if c <> ‘ ‘ then num := num * k1 + pos(c, s) — 1; until c = ‘ ‘; readln(k2); if num <> 0 then translate(num, k2) else writeln(‘0’); readln; end.
Не въеду в принцип работы программы.
Если я правильно поняла, то когда программа запрашивает к1 и к2 нужно ввести число и его систему счисления. Даже если не так, при вводе абсолютно разных чисел, программа не идет дальше и не выдает соответствующий результат.
Может что-то не так. Я своим не опытным взглядом не могу этого ещё определить.((
Источник: www.programmersforum.ru