Hinweise zu lernen Python „Python-Programmierung schnell starten - lassen Sie die mühsame Arbeit automatisieren“ der beiden

Problem zwei
eine Funktion namens collatz () einzutragen, die einen Parameter mit dem Namen Nummer hat. Wenn das Argument eine gerade Zahl ist, dann Collatz () die Anzahl // 2, auszudrucken und den Wert zurückgibt. Wenn die Zahl ungerade ist, collatz () zu drucken und das Rück 3 * Nummer + 1. Dann ein Programm schreiben, das dem Benutzer erlaubt , eine ganze Zahl eingeben, und weiterhin diese Nummer collatz () aufrufen, bis die Funktion gibt einen Wert von 1 (Überraschenderweise diese Sequenz für jede ganze Zahl gültig ist, verwenden Sie diese Sequenz, werden Sie früher oder später 1 erhalten ! auch Mathematiker , warum in der Studie der so genannte nicht bestimmen kann. Ihr Programm „Collatz - Sequenz“ ist es manchmal die „einfachste, unmöglich mathematisches Problem“) genannt.

def collatz(number):#定义函数
	try:
		new_num=int(number)#判断num是否为正整数
	except:
		print('请输入正整数')#显示出错原因
	else:
		new_num=new_num%2#偶数余数为0,其他为奇数
		if not new_num: #偶数
			number=int(number)//2
		else:#奇数
			number=int(number)*3+1
	print(number)
	return number
# number=input('输入整数')
# nex=collatz(number)#初始赋值
#判断nex是否为整数并且不等于0
# if isinstance(nex,int)and int(number) != 0:
# 	while nex !=1:
# 		nex=collatz(nex)#循环赋值
Veröffentlicht 23 Originalarbeiten · erntete Lob 5 · Aufrufe 392

Ich denke du magst

Origin blog.csdn.net/weixin_43287121/article/details/104478819
Empfohlen
Rangfolge