51.题目:学习使用按位与 & 。
程序分析:0&0=0; 0&1=0; 1&0=0; 1&1=1。
print(0&0,0&1,1&0,1&1)
52.题目:学习使用按位或 | 。
程序分析:0|0=0; 0|1=1; 1|0=1; 1|1=1
print(0|0,0|1,1|0,1|1)
53.题目:学习使用按位异或 ^ 。
程序分析:0^0=0; 0^1=1; 1^0=1; 1^1=0
print(0^0,0^1,1^0,1^1)
54.题目:取一个整数a从右端开始的4〜7位。
程序分析:可以这样考虑: (1)先使a右移4位。 (2)设置一个低4位全为1,其余全为0的数。可用(0<<4) (3)将上面二者进行&运算。
a = int(input()) b = a>>4 c = ~(~0 << 4) d = b&c print(d)
55.题目:学习使用按位取反~。
a,b = 0,1 print(~a,~b)
56.题目:画图,学画圆形。
import turtle pen = turtle.Turtle() pen.circle(50) print(pen) turtle.mainloop()
57.题目:画图,学画直线。
import turtle pen = turtle.Turtle() pen.forward(100) print(pen) turtle.mainloop()
58.题目:画图,学画方形。
import turtle pen = turtle.Turtle() pen.forward(50) pen.right(90) pen.forward(50) pen.right(90) pen.forward(50) pen.right(90) pen.forward(50) print(pen) turtle.mainloop()
59.题目:画图,综合例子。
程序分析:利用for循环控制100-999个数,每个数分解出个位,十位,百位。
if __name__ == '__main__': from Tkinter import * canvas = Canvas(width = 300,height = 300,bg = 'green') canvas.pack(expand = YES,fill = BOTH) x0 = 150 y0 = 100 canvas.create_oval(x0 - 10,y0 - 10,x0 + 10,y0 + 10) canvas.create_oval(x0 - 20,y0 - 20,x0 + 20,y0 + 20) canvas.create_oval(x0 - 50,y0 - 50,x0 + 50,y0 + 50) import math B = 0.809 for i in range(16): a = 2 * math.pi / 16 * i x = math.ceil(x0 + 48 * math.cos(a)) y = math.ceil(y0 + 48 * math.sin(a) * B) canvas.create_line(x0,y0,x,y,fill = 'red') canvas.create_oval(x0 - 60,y0 - 60,x0 + 60,y0 + 60) for k in range(501): for i in range(17): a = (2 * math.pi / 16) * i + (2 * math.pi / 180) * k x = math.ceil(x0 + 48 * math.cos(a)) y = math.ceil(y0 + 48 + math.sin(a) * B) canvas.create_line(x0,y0,x,y,fill = 'red') for j in range(51): a = (2 * math.pi / 16) * i + (2* math.pi / 180) * k - 1 x = math.ceil(x0 + 48 * math.cos(a)) y = math.ceil(y0 + 48 * math.sin(a) * B) canvas.create_line(x0,y0,x,y,fill = 'red') mainloop() #答案来自菜鸟教程
60.题目:计算字符串长度。
a =input() print(len(a))
61.题目:打印出杨辉三角形(要求打印出10行如下图)。
a = [[1],[1,1],[1,1],[1,1],[1,1],[1,1],[1,1],[1,1],[1,1],[1,