Python编程教程,NOIP,2011,提高组初赛错题简析

Python编程教程是一个较为基础的教程,讲解了Python的基本语法、数据类型和常用的操作,包括控制语句、循环语句、函数定义等等。在NOIP 2011 提高组初赛中,有几道题目涉及到Python编程,这篇文章将对其中错题进行简析,并深度讲解涉及到的Python知识点。

首先是P1147. 人口普查,这是一道基础的输入输出题,需要注意的是Python中的input()函数不需要指定读取数据的类型,它会自动根据输入的类型进行转换。代码如下:

```

n = int(input())

count = 0

for i in range(n):

info = input().split()

age = int(info[1])

if age >= 18:

count += 1

print(count)

```

接下来是P1125. 牛客网,这是一道较为简单的质数判断题,需要注意Python中求平方根的函数为math.sqrt(),代码如下:

```

import math

def is_prime(n):

for i in range(2, int(math.sqrt(n))+1):

if n % i == 0:

return False

return True

n = int(input())

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

if is_prime(i):

print(i)

```

然后是P1912. 连续自然数和,这是一道较为简单的数学推导题,需要注意Python中递推的写法与C++不同,代码如下:

```

n = int(input())

sum = 1

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

if i % 2 == 0:

sum -= i

else:

sum += i

print(sum)

```

最后是P1908. 统计单词数,这道题需要注意一些细节问题,如输入时字符串末尾可能含有空格或换行符,需要使用strip()函数去除它们;还需要注意统计单词时忽略大小写,需要使用lower()函数转换。代码如下:

```

import re

s = input().strip().lower()

word_list = re.split('[^a-zA-Z]+', s)

count = 0

for word in word_list:

if word == 'doge':

count += 1

print(count)

```

本文对Python编程教程中NOIP 2011 提高组初赛的相关题目进行了简要分析,涉及到了Python中的一些基础知识点,如输入输出、循环语句、条件语句、函数定义、数学运算、字符串处理等等。Python是一门简洁高效的编程语言,学习它有助于提高编程效率和开发体验,具有广泛的应用场景。

如果你喜欢我们阿吉时码(www.ajishima.com.cn)的文章, 欢迎您分享或收藏分享网文章 欢迎您到我们的网站逛逛喔!SLG资源分享网
友情提示:抵制不良游戏,拒绝盗版游戏。 注意自我保护,谨防受骗上当。 适度游戏益脑,沉迷游戏伤身。 合理安排时间,享受健康生活。适龄提示:适合18岁以上使用!
点赞(36) 打赏

评论列表 共有 0 条评论

暂无评论
立即
投稿
发表
评论
返回
顶部