不是最優**,不過至少算出來了,呵呵
1. type(num) == type(1),判斷num是不是整數,type(1)是整數int,type(1.2)是float,type('a')是字串,type(str),type(list),type(tuple),type(dict)都是type
2. 不好判斷range的範圍,所以用了break,當商是0時,主動退出迴圈
3. 八進位制,十六進製制的有空再研究下
#!/usr/bin/python
#coding=utf-8
'''created on 2012-2-22
q:給定乙個整數,求其二進位制數中1的個數
remainder 餘數,temp是商
'''num = input("請輸入乙個整數:")
print num
remainder=
if type(num) != type(1):
print "請輸入乙個整數!"
else:
for i in range(0,num):
temp=num/2
#print remainder
#print "商是:%d"%temp
i=i+1
num=temp
if temp==0:
break
remainder.reverse()
#print remainder
print remainder.count(1)
輸入十進位制數,顯示其二進位制形式中 1 的個數
要求 從鍵盤輸入乙個10進製數 不超過2000 然後輸出其二進位制數中 1 的個數。程式如下 disp str macro x 巨集定義.mov dx,offset x mov ah,9 int 21h endm data segment 資料段.msg1 db 13,10,please input...
輸入十進位制數,輸出其二進位制
include using namespace std intmain for i i 0 i return0 輸入乙個正整數,判斷其位數 intdig int num return counter include using namespace std intmain for i i 0 i re...
計算乙個整數二進位制中1的個數
這是來自牛客網關於乙個二進位制的運算 我的思路為每次和1 2 4 進行按位與運算就可得到二進位制中1的個數 如下 1 2 new coder ponint to offer 11 3 find bit 1 num of a nunber 4 56 include 7 include 8 9int f...