Python语言编程实现由十进制数到二进制数的转换
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python语言编程实现由十进制数到二进制数的转换相关的知识,希望对你有一定的参考价值。
就今天一天 麻烦各位大神
#!/usr/bin/python# -*- coding:utf-8 -*-
# @Time : 2018/6/18 14:04
# @File : Dec_To_Bin.py
"""
description
"""
def dec2bin(string_num):
num = int(string_num)
mid = []
while True:
if num == 0:
break
num, rem = divmod(num, 2)
mid.append(rem)
return ''.join([str(x) for x in mid[::-1]])
if __name__ == '__main__':
anum = raw_input(u'请输入要转换的数字:')
print u'该数字转换为二进制后是:'.format(dec2bin(anum)) 参考技术A 先说一句,这是C语言。想倒过来的话,可以用数组先存起来,然后逆序输出或者使用递归函数,贴一段使用递归函数的代码:#include<stdio.h>
void dectobin(int n)
if(n==0) return;
dectobin(n/2);
printf("%d",n%2);
void main(void)
int n;
void dectobin(int n);
scanf("%d",&n);
dectobin(n);
进制转换问题
建立顺序栈或链栈,编写程序实现十进制数到二进制数的转换。
输入
输入只有一行,就是十进制整数。
输出
转换后的二进制数。
样例输入
10
样例输出
1010
#include <iostream> #include<stdlib.h> #define Max_Size 100 #define STACKINCRMENT 10 using namespace std; typedef int Elemtype; typedef struct SqStack { Elemtype *base; Elemtype *top; int stacksize; }SqStack; void InitStack(SqStack &S) { S.base = (Elemtype*)malloc(sizeof(Elemtype)*Max_Size); S.top = S.base; S.stacksize = Max_Size; } void Push(SqStack &S, Elemtype e) { if (S.top - S.base >= S.stacksize) { S.base = (Elemtype*)realloc(S.base, (S.stacksize + STACKINCRMENT) * sizeof(Elemtype)); S.top = S.base + S.stacksize; S.stacksize += STACKINCRMENT; } *(S.top) = e; S.top++; } void Pop(SqStack &S, Elemtype &e) { if (S.top == S.base) { return; } S.top--; e = *(S.top); } void conversation(SqStack &S) { int count, radix; InitStack(S); cin >> count; while (count) { Push(S, count % 2); count = count / 2; } while (S.top != S.base) { Pop(S, count); cout << count; } } int main() { SqStack S; conversation(S); return 0; }
以上是关于Python语言编程实现由十进制数到二进制数的转换的主要内容,如果未能解决你的问题,请参考以下文章