求一个数的所有约数,并存储到列表中,再计算内存
**```
#先定义一个列表
list=[]
int_approximate=int(input(‘请输入一个整数:’))
#遍历这个列表 ,第一个数到输入数本身
for i in range(1,int_approximate+1):
#如果这个整数(int_approximate)能整除列表中每一个数(i)
if int_approximate % i ==0:
#把(i)存储到列表中
list . append ( i )
print(f ’ 约数是{ i } ’ , end= ’ ')
#求列表的内存(注意不要打太大,不然会卡住,因为计算机要算一段时间)
import sys
print ( sys.getsizeof ( list ) )
> D:\ProgramData\Anaconda3\python.exe C:/Users/Administrator/Desktop/python.py
请输入666
约数是1 约数是2 约数是3 约数是6 约数是9 约数是18 约数是37 约数是74 约数是111 约数是222 约数是333 约数是666 192
Process finished with exit code 0
**
## ~~斐波那契数列,用循环和列表分别处理,并计算内存,比较其中差距~~
**
***`
循环方式
int_1=1
int_2=1
int_3=3
int1=int(input ('请输入一个整数:'))
#第三个数小于输入数
while int_3<=int1:
把int_1+int_2的值想加赋值给int_2
int_1 , int_2 = int_2 , int_1+int_2
print (f"数列是:{int_2}" , end=' \t ')
int_3+=1
#求占用的内存字节 1kb=1024字节就和手机流量一样1G=1024m
import sys
print ( sys.getsizeof(int_3))
`***
> D:\ProgramData\Anaconda3\python.exe C:/Users/Administrator/Desktop/python.py
请输入一个整数:6
数列是:2 数列是:3 数列是:5 数列是:8 28
Process finished with exit code 0
列表方式
list1=[1,1 ]
m=3
n=int(input(’ 请输入第几个数:’))
while m<=n:
list1.append(list1[-2]+list1[-1])
m+=1
print(f’数列是{list1} ’ )
import sys
print(sys.getsizeof(list1))
D:\ProgramData\Anaconda3\python.exe C:/Users/Administrator/Desktop/python.py
请输入第几个数:6
数列是[1, 1, 2]
数列是[1, 1, 2, 3]
数列是[1, 1, 2, 3, 5]
数列是[1, 1, 2, 3, 5, 8]
112
Process finished with exit code 0
***求最大公约数,并存储到列表(greatest common factor) ***
***number1=int(input('请输入一个整数: '))
number2=int(input(' 请输入另一个整数:'))
list1 = []
list2 = []
for i in range(1,number1+1):
if number1 % i == 0:
list1.append(i)
for i in range(1,number2+1):
if number2 % i == 0:
list2.append(i)
print(list1)
print(list2)
#遍历列表,list1列表长度倒序,和终点,以及步长
for k in range(len(list1)-1,-1,-1):
#如果列表list1第k个索引在list2这个列表里面
if list1 [k] in list2:
print(f'最大公约数',list1[k])
#求到最大公约数运算停止
break***
D:\ProgramData\Anaconda3\python.exe C:/Users/Administrator/Desktop/python.py
请输入一个整数: 666
请输入另一个整数:999
[1, 2, 3, 6, 9, 18, 37, 74, 111, 222, 333, 666]
[1, 3, 9, 27, 37, 111, 333, 999]
最大公约数 333
Process finished with exit code 0
该博客探讨了如何求一个整数的所有约数并将它们存储到列表中,然后计算列表的内存占用。此外,还涉及到了斐波那契数列的生成及其内存计算,并展示了求两个数的最大公约数的过程。
3145

被折叠的 条评论
为什么被折叠?



