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])
相关推荐
yaoxin5211232 分钟前
397. Java 文件操作基础 - 创建常规文件与临时文件
java·开发语言·python
dFObBIMmai12 分钟前
MySQL主从同步中大事务导致的延迟_如何拆分大事务优化同步
jvm·数据库·python
szccyw015 分钟前
mysql如何限制特定存储过程执行权限_MySQL存储过程安全访问
jvm·数据库·python
小白学大数据21 分钟前
Python 自动化爬取网易云音乐歌手歌词实战教程
爬虫·python·okhttp·自动化
Yzzz-F2 小时前
Problem - 2205D - Codeforces
算法
风之所往_2 小时前
Python 3.0 新特性全面总结
python
2401_882273722 小时前
如何在 CSS 中正确加载本地 JPG 背景图片
jvm·数据库·python
Lucas_coding2 小时前
【Claude Code Router】 Claude Code 兼容 OpenAI 格式 API, Claude code 接入本地部署模型
人工智能·python
测试员周周2 小时前
【AI测试系统】第5篇:从 Archon 看 AI 工程化落地:为什么"确定性编排+AI 弹性智能"是终局?
人工智能·python·测试
智者知已应修善业2 小时前
【51单片机2个按键控制流水灯运行与暂停】2023-9-6
c++·经验分享·笔记·算法·51单片机