P5:判断闰年

输入一个年份,判断其是否为闰年。

非世纪年(不能被100整除的年份)能被4整除的为闰年。(如2004年就是闰年,1999年不是闰年);

世纪年(能被100整除的年份)能被400整除的是闰年。(如2000年是闰年,1900年不是闰年)。

参考示例[python3]:

year = int(input("输入一个年份: "))

if (year % 4) == 0:

if (year % 100) == 0:

if (year % 400) == 0:

print("{0} 是闰年".format(year)) # 整百年能被400整除的是闰年

else:

print("{0} 不是闰年".format(year))

else:

print("{0} 是闰年".format(year)) # 非整百年能被4整除的为闰年

else:

print("{0} 不是闰年".format(year))

P6:输出九九乘方表

按照矩阵格式输出九九乘方表,如下图所示:

九九乘方表.png

参考示例[python3]:

for i in range(1, 10):

print ()

for j in range(1, i+1):

print ("%d*%d=%d" % (i, j, i*j),end=" ") #python3中end默认值为" "

P7:计算π的值

1.利用下列公式计算π的近似值,直到最后一项的绝对值小于10^-5为止

公式

参考示例[python3]:

n=0.0

p=1

while p<=100000:

if p%4==1:

n=n+1/p

else:

n=n-1/p

p=p+2

else:

print (n*4)

2.用蒙特卡罗法计算π的值。

蒙特卡罗法:基于“随机数”的算法,通过计算落在单位圆内的点与落在正方形内的 点的比值求PI。

蒙特卡罗法

from random import random

from math import sqrt

max = 2000000

count = 0

for i in range (1,max):

x, y = random(),random()

dist = sqrt(x**2+y**2)

if dist <= 1:

count = count + 1

pi = 4*(count/max)

print("π的值为%f"%pi)

P8:输出素数

输出指定范围内的所有素数

参考示例[python3]:

from math import sqrt

lower = int(input("输入区间最小值: "))

upper = int(input("输入区间最大值: "))

num=[];

for i in range(lower,upper+1):

if i>1:

j=2

for j in range(2,int(sqrt(i+1))):

if(i%j==0):

break

else:

num.append(i)

print(num)

P9: ASCⅡ码,字符,进制转换

ASCⅡ码与字符互相转换,进制数之间互相转换

参考示例[python3]:

# 用户输入字符

c = input("请输入一个字符: ")

# 用户输入ASCII码,并将输入的数字转为整型

a = int(input("请输入一个ASCII码: "))

# 获取用户输入十进制数

dec = int(input("输入数字:"))

print()

print( c + " 的ASCII 码为", ord(c))

print( a , " 对应的字符为", chr(a))

print()

print("十进制数为:", dec)

print("转换为二进制为:", bin(dec))

print("转换为八进制为:", oct(dec))

print("转换为十六进制为:", hex(dec))

'''

二进制数'100'转十进制:int('100', 2)

八进制数'9'转十进制数:int('09', 8)

十六进制'17'转十进制:int('0x17', 16)

注意必须加引号

'''

P10:字符串操作

字符串a为"Hello",字符串b为"#2#Lisaend"。判断字符串b中是否含有“#2#”,如果有,则将字符串a与字符串b中“#2#”与“end”之间的字符串用空格连接起来,然后输出。输出“biubiubiu”

参考示例[python3]:

a = "Hello"

b = "#2#Lisaend"

if( "#2#" in b) :

i=b.find('end')

print(a+' '+b[3:i])

print("biu"*3)

P11:简易计算器

制作一个简易计算器,可以计算两个数之间的加减乘除

参考示例[python3]:

print("**简易计算器**")

str=input("请输入算式:")

operator=""

while operator=="":

if "+"in str:

operator = "+"

elif "-"in str:

operator = "-"

elif "*"in str:

operator = "*"

elif "/"in str:

operator = "/"

else:

str=input("输入错误,请重新输入:")

x = float(str[:str.find(operator)])

y = float(str[str.find(operator)+1:])

result = {

"+" : x + y,

"-" : x - y,

"*" : x * y,

"/" : x / y

}

print ("结果为:",result.get(operator))

P12:冒泡排序

冒泡排序(Bubble Sort)是一种简单的排序算法。它重复地遍历要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。遍历数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端。

示意图:

冒泡排序.gif

参考示例[python3]:

def bubble_sort(list):

n = len(list)

for i in range(n - 1):

for j in range(0, n - 1 - i):

if list[j] > list[j + 1]:

list[j], list[j + 1] = list[j + 1], list[j]

P13:选择排序

选择排序(Selection Sort )是一种简单直观的排序算法。它的工作原理如下:首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后再从剩余未排序元素中继续寻找最小(大)元素。放到已排序序列的末尾。以此类推,直到所有元素均排序完毕。

示意图:

选择排序.gif

参考示例[python3]:

def selection_sort(list):

n = len(list)

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

min_index = i

for j in range(i + 1, n):

if list[min_index] > list[j]:

min_index = j

if i != min_index:

list[min_index], list[i] = list[i], list[min_index]

P14:插入排序

插入排序(Insertion Sort)是一种简单直观的排序算法。它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。插入排序在实现上,在从后向前的扫描过程中,需要把已排序元素逐步向后挪位,为最新元素提供插入空间。

示意图:

插入排序.gif

参考示例[python3]:

def insertion_sort(list):

n = len(list)

for i in range(1, n):

for j in range(i, 0, -1):

if list[j] < list[j - 1]:

list[j], list[j - 1] = list[j - 1], list[j]

else:

break

python编程题-python编程练习题相关推荐

  1. python编程题-python编程题库

    广告关闭 腾讯云双11爆品提前享,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高满返5000元! 上期题目连接:1000道python题库系列分享十一(9道)上期题目答案:? 本期 ...

  2. python入门作业编程题-Python编程:从入门到实践——【作业】——第六章(字典)...

    第六章作业 6-1人 : 使用一个字典来存储一个熟人的信息, 包括名. 姓. 年龄和居住的城市. 该字典应包含键first_name . last_name . age 和city . 将存储在该字典 ...

  3. python基础题-python基础练习题(一)

    1.执行 Python 脚本的两种方式 python进入解释器 python 1.py 2.简述位.字节的关系 8位是一个字节 3.简述 ascii.unicode.utf-8.gbk 的关系 最开始 ...

  4. java接口编程题_Java接口练习题

    1.说出下面程序的执行结果: interface InterfaceA { String S = "good "; void f(); } abstract class Class ...

  5. java 字符串编程题_Java编程题——在一个字符串中查找第一个非重复的字符

    编写一个Java程序来查找一个字符串中第一个非重复的字符,这是在编程测试中很常见的一个问题,因为字符串处理在程序员面试中是一个普遍的话题.面试前最好是准备好一些熟知的编程问题,例如使用递归反转字符串, ...

  6. python入门作业编程题-Python语言编写有趣练习题!

    1. 登录作业: 写一个登录程序,登录成功之后,提示XXX欢迎登录,登录失败3次后,提示账户锁定 username = "admin" passwd = "1234&qu ...

  7. 李白喝酒 c语言编程题,python算法练习题:李白喝酒

    话说大诗人李白,一生好饮.一天,他提着酒壶,从家里出来,酒壶中有酒2斗. 他边走边唱:无事街上走,提壶去打酒.逢店加一倍,遇花喝一斗.这一路上,他一共遇到店5次,遇到花10次,已知最后一次遇到的是花, ...

  8. 测验六python编程题,Python编程第六章习题.py

    # 习题6-1 使用一个字典 存信息打出来 durian_mille_crepe_cake={'durian':'炒了', 'mille crepe':'煎了', 'cake':'抹上', } pri ...

  9. python入门作业编程题-python入门(一)作业

    一,流程控制之if...else 1. 如果:女人的年龄>30岁,那么:叫阿姨,否则:叫小妞 1 age_of_girl = 21 2 if age_of_girl >30:3 print ...

最新文章

  1. srcache_nginx redis 构建缓存系统应用一例
  2. CSS布局之品字布局
  3. 设计模式之模板模式学习笔记
  4. [转]WebPack 常用功能介绍
  5. 数据库集群的级联复制完整实现
  6. linux中sort命令实例,Linux命令之排序命令sort使用实例
  7. getprofile()获取不到路径_获取链接文件Document——Dynamo Python系列教程(一)
  8. 服务器RAID技术基础
  9. hdu 1542 Atlantis (线段树+扫描线)
  10. HNOI2019 退役记
  11. java中的泛型(一)
  12. Hadoop1.0之集群搭建
  13. [转载] python 语音识别 中文_python中文语音识别
  14. rapidxml往xml文件循环写入内容
  15. magisk下载里显示没有模块_太极Magisk模块
  16. Typora的历史版本下载地址
  17. Linux的capability分析
  18. 诛仙3服务器查询系统,《诛仙3》4月1日服务器数据互通公告
  19. 数据分析-数据来源、字段类型、数据采集陷阱
  20. 四、文件管理(三)文件系统

热门文章

  1. https://www.threatminer.org/domain.php?q=blackschickens.xyz ——域名的信誉查询站点 还可以查IP...
  2. JS垃圾回收——和其他语言一样,JavaScript 的 GC 策略也无法避免一个问题:GC 时,停止响应其他操作,这是为了安全考虑...
  3. [JAVA][Liferay] Configure sharding in multiple sites
  4. CodeForces - 261B Maxim and Restaurant
  5. video/audio在ios/android上播放兼容
  6. 在openshift上自定义node.js的版本
  7. 最快删除大量文件的方法
  8. 解密回声消除技术之一(理论篇)
  9. JSON是什么?它能带来什么?
  10. GridView控件添加鼠标移入移出时背景行变色的效果