Python基础经典编程练习题,含答案

1、输出N以内的所有素数

描述:编程找出N(即小于等于N)的所有素数。

输入:输入一个正整数

输出:在同一行中从小到大依次输出不大于n的全部素数,每个数字后面一个空格。

示例:

输入:97

输出:2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97

python 复制代码
def is_prime(n):
    """判断素数的函数,接收一个正整数为参数,参数是素数时返回True,否则返回False
    减小判定区间,减少循环次数,提升效率"""
    if n < 2:
        return False      # 0、1、负数以及偶数都不是素数 
    for i in range(2, int(n ** 0.5) + 1):
        if n % i == 0:    # 能被2到其n-1之间的数整除的数不是素数
            return False
    else:
        return True       # for循环正常结束,未遇到return的数是素数


def output_prime(number):
    """接收一个正整数为参数,遍历从0到number之间的所有整数
    在一行中输出不大于number的所有素数,函数无返回值"""
    for i in range(number + 1):         # 遍历小于n的整数
        if is_prime(i):   # i为素数时输出i
            print(i, end=' ')  # 输出后不换行,空格分隔输出


positive_int = int(input())  # 输入一个正整数
output_prime(positive_int)      # 调用无返回值函数,不需要用print()

2、斐波纳契数列

描述:求斐波纳契(Fibonacci)数列:1, 1, 2, 3, 5, 8... 的前n项,n的值从键盘输入。

输入:"10"

输出:"1,1,2,3,5,8,13,21,34,55"

注意:

(1)‬输入使用 input(),不要增加额外的提示信息‬;

(2)输出使用 print(),不要增加额外的输出信息‬;

(3)Python中input函数返回值是字符串, 可以使用 int(input()) 或 eval(input()) 来进行转换‬。

python 复制代码
def f(n):
    if n==1 or n==2:
        return 1
    else:
        return f(n-1)+f(n-2)
m=eval(input())        
s=""
for i in range(1,m+1):
    s+="{},".format(f(i))
print(s[:-1])
相关推荐
蒋星熠6 小时前
实证分析:数据驱动决策的技术实践指南
大数据·python·数据挖掘·数据分析·需求分析
独行soc7 小时前
2025年渗透测试面试题总结-250(题目+回答)
网络·驱动开发·python·安全·web安全·渗透测试·安全狮
云边有个稻草人7 小时前
部分移动(Partial Move)的使用场景:Rust 所有权拆分的精细化实践
开发语言·算法·rust
一晌小贪欢7 小时前
Pandas操作Excel使用手册大全:从基础到精通
开发语言·python·自动化·excel·pandas·办公自动化·python办公
松涛和鸣8 小时前
11.C 语言学习:递归、宏定义、预处理、汉诺塔、Fibonacci 等
linux·c语言·开发语言·学习·算法·排序算法
IT痴者9 小时前
《PerfettoSQL 的通用查询模板》---Android-trace
android·开发语言·python
2501_9411112410 小时前
C++与自动驾驶系统
开发语言·c++·算法
2501_9411116910 小时前
C++中的枚举类高级用法
开发语言·c++·算法
jz_ddk10 小时前
[算法] 算法PK:LMS与RLS的对比研究
人工智能·神经网络·算法·信号处理·lms·rls·自适应滤波
Miraitowa_cheems11 小时前
LeetCode算法日记 - Day 106: 两个字符串的最小ASCII删除和
java·数据结构·算法·leetcode·深度优先