高中信息技术会考python操作题数列(python高中信息技术学考范围)

http://www.itjxue.com  2023-03-28 02:48  来源:未知  点击次数: 

Python最基础的题,求大佬编个代码。。渣渣表示一脸蒙蔽

1

#!/usr/bin/env?python3.6

def?due(cost):

????if?cost?=?3000:

????????return?cost?*?0.85

????if?cost?=?2000:

????????return?cost?*?0.9

????if?cost?=?1000:

????????return?cost?*0.95

????return?cost

cost?=?input('Please?input?total?cost?of?the?goods:?')

print(f'You?should?pay:?{due(float(cost)):.2f}')

2

a,?b,?c?=?1,?2,?3

n?=?3

while?True:

????n?+=?1

????a,?b,?c?=?b,?c,?(a+b+c)/2.0

????if?c??1200:

????????print(n)

????????break

3

def?gys(m,?n):

????for?i?in?range(min(m,?n),?0,?-1):

????????if?m?%?i?==?n?%?i?==?0:

????????????return?i

4

def?is_wanshu(n):

????yinzi?=?[i?for?i?in?range(1,?n)?if?n?%?i?==?0]

????return?n?==?sum(yinzi)

求助python大神。斐波那契数列,编写程序,利用列表计算斐波那契数列前30项,并以列表形式输出。

##缩进格式看图

l=[1,1]

for i in range(28):

l.append(l[-2]+l[-1])

print(l)

计算机二级Python试题解读:输出斐波那契数列

题目:

根据斐波那契数列的定义,F(0)=0,F(1)=1,F(n)=F(n-1)+F(n-2)(n=2),输出不大于50的序列元素。例如:屏幕输出实例为:0.1.1.2.3…(略)。

代码模板:

考查知识点: while循环结构、多变量赋值。

试题解读

while是循环结构的关键字,后面紧跟循环条件。题目要求输出不大于50的序列元素,变量a存储斐波那契数列元素,即变量a的值不大于50,即条件表达式:

a=50

填写代码的第2个位置为语句:

a,b=_______

该语句为a和b赋值,a是斐波那契数列的第n项元素,b是斐波那契数列的第n+1项元素,且初始a=0,b=1,则应将b赋值给a,a+b赋值给b,即代码位置处写入下面的表达式:

a,b= b,a+b

完整的程序代码:

知识点

1、 while循环结构

while循环结构的语法为:

其中,表达式是循环执行的条件,每次循环执行前,都要对表达式进行计算,表达式返回逻辑值,当表达式返回结果为真时则执行循环体,否则退出循环,如果表达式返回结果在循环开始时就为假,则不执行循环体,直接退出循环;循环体包含一条或多条语句。

单个的变量、逻辑值、数值也是表达式。Python规定,当表达式需要返回逻辑值时,非0的数值为真值,0值为假值。

2、多变量赋值操作

可以在一行赋值语句中创建多个变量,语法规则是 :

变量名称1,变量名称2,……,变量名称n = 值1,值2,……值n

每个变量名称之间用英文逗号分隔。

例如下面的语句创建了两个变量num1和num2,num1的值是20,num2的值是30。

用python编写函数计算斐波那契数列的前n项,并将结果存在Fibonacci.txt中,每行5个

def?Fibonacci(n):

if?n?==?1:

return?1

dic?=?[-1?for?i?in?xrange(n)]

dic[0],?dic[1]?=?1,?1

helper(n-1,?dic)

linesize?=?5

file=open('Fibonacci.txt',?'w')

for?loop?in?range(len(dic)/linesize):

line?=?[]

for?i?in?range(linesize):

line.append(dic[i?+?linesize?*?loop])

file.write("\t".join([str(x)?for?x?in?line])?+?"\n")

file.close()

????

def?helper(n,?dic):

if?dic[n]??0:

dic[n]?=?helper(n-1,?dic)+helper(n-2,?dic)

return?dic[n]

python做斐波那契数列。

直接创建一个类然后调用下面的def函数即可

#斐波那契数列

'''

第一位是1

第二位是1

第三位是2

公式位F(n)=f(n-1)+f(n-2)

'''

def get_Fibonacci_sequence(n):

'''输入n,遍历到第n位的斐波那契数列'''

a,b=0,1

if n=3:#即等于2 相当于1,2位特殊处理

for i in range(n-1):#操作次数是n-1,去除一次第一位的操作

c=a+b

a,b,=b,c

print(b)#这里选择先改变再输出,可以减少1次的循环

def get_Fibonacci_Num(n):

'''输入n,遍历到第n位的斐波那契数列的第n位数'''

a, b = 0, 1

if n = 3: # 即等于2 相当于1,2位特殊处理

for i in range(n - 1): # 操作次数是n-1,去除一次第一位的操作

c = a + b

a, b, = b, c

# 这里选择先改变再输出,可以减少1次的循环

return b

def get_Fibonacci_Num_recursion(n):

'''输入n,遍历到第n位的斐波那契数列的第n位数,递归实现'''

if n==1 or n==2:#特别注意,这里要用逻辑或判断,不能直接用或判断,

return 1

else:

return get_Fibonacci_Num_recursion(n-1)+get_Fibonacci_Num_recursion(n-2)

get_Fibonacci_sequence(11)

print(get_Fibonacci_Num(11))

print(get_Fibonacci_Num_recursion(11))

(责任编辑:IT教学网)

更多