题目:有1、2、3、4四个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
程序分析:可填在百位、十位、个位的数字都是1、2、3、4。组成所有的排列后再去 掉不满足条件的排列。
程序源代码:
for i in range(1,5):
for j in range(1,5):
for k in range(1,5):
if(i!=k) and (i!=j) and (j!=k):
print(i*100+j*10+k)
题目:一个整数,它加上100和加上268后都是一个完全平方数,请问该数是多少?
程序分析:在10000以内判断,将该数加上100后再开方,加上268后再开方,如果开方后的结果满足如下条件,即是结果。请看具体分析:
程序源代码:
for i in range(10000):
x=int(math.sqrt(i+100))
y=int(math.sqrt(i+268))
if(x*x==i+100)and (y*y==i+268):
print (i)
题目:输入三个整数x,y,z,请把这三个数由小到大输出。
程序分析:我们想办法把最小的数放到x上,先将x与y进行比较,如果x>y则将x与y的值进行交换,然后再用x与z进行比较,如果x>z则将x与z的值进行交换,这样能使x最小。
程序源代码:
1=[]
for i in range(3):
x=int(raw_input("integer:\n"))
1.append(x) #append() 方法向列表的尾部添加一个新的元素
1.sort() #sort() 函数用于对原列表进行排序,如果指定参数,则使用比较函数指定的比较函数
print(1)