新大榭论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

《新大榭》- 创大榭地方网络社区先锋品牌 新大榭始终专注于地方网络社区平台的建设 关于我们- [大记事]- 留言建议- [新手报道]

发布 .新大榭软件管家(Excel版) V6.0版 财务/仓库/生产/销售/采购/行政/人事/校园 .公告 - 客户 - 打赏 - 职场 - Excel - Python.

新大榭镜像-音乐-法律-图书-高中课堂-实验 广告是为了能更好的发展 [欢迎商家支持本站互利共赢] 广告位招租.首页黄金广告位等您来!联系 13566035181

查看: 112|回复: 1

[必修1] 7152 - 《信息技术》(必修一)P067【思考与练习】

 关闭 [复制链接]
发表于 2021-3-17 12:36:05 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转新大榭论坛!

您需要 登录 才可以下载或查看,没有账号?注册

x
第三章:算法的程序实现
1 ~+ t/ S0 F/ w( h3 b: H
// 3.1  用计算机编程解决问题的一般过程《思考与练习》 第 - 67 - 页
1. 请描述用计算机编程验证“哥德巴赫猜想”的一般过程。
, r2 ?( x; z3 S1 ]4 j5 c
哥德巴赫猜想:编写函数,接收一个偶数,输出两个素数,并且两个素数之和等于原来的偶数,如果有多组,则全部输出。

/ E# V% y  m1 M7 @例1> 答:仔细又重新梳理了一下思路:
5 V* P0 p9 ^# M$ ]/ d, z可以定义两个函数,一个判断是否为素数,一个分解。利用前面的两个函数生成n范围内的素数列表。如果两层for循环中的两个迭代变量之和等于参数n,就将这两个变量加入列表中,循环完所有的情况后返回列表,并打印输出。
游客,如果您要查看本帖隐藏内容请回复

AP067_01_01_7152.zip

919 Bytes, 下载次数: 17, 下载积分: 财富 -1 点

例1 源代码

新大榭Python学习社区培训、Excel业务指导、办公软件定制、网站建设;新大榭探索实验室欢迎您!http://lab.daxie.net.cn/
Q群推荐 大榭本地求职招聘QQ群,欢迎转发分享本地招聘信息资讯! 官方招聘1群(已满);官方招聘2群:315816937 *
 楼主| 发表于 2021-5-29 02:08:19 | 显示全部楼层
2. 为了分析某网站中不同中文词的出现频率,利用现有的工具软件无法满足所有的统计要求,要求自己编写程序来解决。请结合本事例,通过流程图来描述用计算机解决问题的一般过程。& u& C( G! z# [
例1> 答:
游客,如果您要查看本帖隐藏内容请回复
. ^; M: z( q# A4 a
注意:请先安装第三方库 jieba,运行 CMD,输入 python -m pip install jieba --user (其他库安装方法类似)
课外拓展: 用python,统计一个txt中某三个中文词语出现的次数?(福利)* p+ d- x/ O. k: J

方法一:使用自带的count
/ q! C: Q4 n% J/ o" C3 m
  1. words = ["信息", "知识", "智慧"]& Z' V4 }( n2 \1 q% h7 O
  2. def countInFile(filename):2 R- C! w6 K  h, N. Y1 D
  3.     with open(filename) as f:$ [2 C9 @- k( i1 }0 J. j+ h" r
  4.         contents = f.read()
    - U  M! X; h" k5 m7 b
  5.         return sum(contents.count(x) for x in words)8 J$ w. H, `" Z$ ?9 N8 A/ G! D
  6. print(countInFile('1.txt'))
    3 k3 {2 [; O8 I1 o$ b
复制代码
方法二:使用正则表达式
  1. """
    ) D7 ]/ b- i* {" V6 M8 [/ x
  2. 《信息技术》(必修一)P67页第2题(分析某网站中不同中文词的出现频率)! x- _9 u! T: }2 |

  3. ; a4 Z4 J8 w+ q0 L" N
  4. Version: Python 3.x
    * V: b" n0 y. \' y  ]4 E  w
  5. Team: 新大榭
    - X1 x1 k- g" l" ?: }8 M7 p# l
  6. Author: 张黎斌. W' m' E2 \$ @
  7. update: 2021-05-294 _! D8 Y: a) W2 M
  8. Level: B# o. X4 P, x9 `# H1 }1 G) O7 V

  9. 2 F& Z8 L* L2 n
  10. """
    0 F  a* ?: W8 T- v( s
  11.   z( A0 k( z) @8 ~0 v
  12. # 源代码如下,仅供参考!, y7 c2 H) O2 a1 O

  13. $ e. V: Q+ U" _1 R4 |) q; C
  14. import re+ H- s5 n5 ?+ |
  15. words = "信息|知识|智慧"2 C$ p- X! o% Z+ d2 T
  16. def countInFile(filename):, h9 J8 G- B  F* P" H! t( Q. q7 P
  17.     with open(filename) as f:
    - V: Q4 b) O& Y5 r1 o( v
  18.         contents = f.read()7 P- L: Y2 i' M9 Q4 w
  19.         return sum(1 for match in re.finditer(words, contents))
    $ E8 f5 w: ^3 d7 u: w
  20. print(countInFile('1.txt'))
    4 _# ^* T" V. D7 z. a/ R
复制代码

AP067_02_01_7152.zip

902 Bytes, 下载次数: 17, 下载积分: 财富 -1 点

第二题,例1,源代码

新大榭Python学习社区培训、Excel业务指导、办公软件定制、网站建设;新大榭探索实验室欢迎您!http://lab.daxie.net.cn/
新大榭官方公益帮帮群:6603298 官方Excel学习交流群:82064486  欢迎您加入
您需要登录后才可以回帖 登录 | 注册

本版积分规则

文字版|小黑屋|新大榭 ( 浙ICP备16018253号-1 )|点击这里给站长发消息|

GMT+8, 2026-8-22 00:47 , Processed in 0.080269 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表