ID: 20034087

4.1 算计及其特征 课件(共14张PPT)

日期:2024-11-22 科目:信息技术 类型:高中课件 查看:53次 大小:711461B 来源:二一课件通
预览图 1/7
算计,及其,特征,课件,14张,PPT
  • cover
(课件网) 算法及其特征 教 学 目 标 了解算法的基本特征,感受算法在解决问题中的重要性。 能够使用自然语言和数字化工具描述算法。 通过解决“水仙花问题”,了解枚举法的含义,并能使用枚举法解决相关问题。 测 测 你 的 IQ 把人和鬼都送到对岸,每次最多只能坐下两人。任何一边鬼都不能比人多,否则鬼吃人,游戏结束。 一 算 法 …… 解决问题的方法及步骤 算 法 二 利用算法思想解决问题 输出三位数的水仙花数。水仙花数是指一个n位数(n>=3),它的每个位上的数字的n次幂之和等于它本身。例如:13+53+33=153。 已知条件: 三位数的水仙 花数满足: X=A3+B3+C3 求解: 满足条件的所 有三位数 过程分析: 1.如何求解1个三位数X的各个数位: A B C A=X//100 B=X//10%10 C=X%10 百 十 个 2.如何判断ABC是否是水仙花数 A3+B3+C3 X = 分析问题 B=X%100//10 设计算法 流程图 伪代码 自然 语言 活动一:使用画程软件将流程图补充完整 课 堂 活 动 编写代码与调试 活动二:将程序补充完整,判断一个三位数是否是水仙花数 x=int(input("请输入一个三位数")) a=x//100 b=① c=x%10 if a**3+b**3+c**3==x: print(②,"是水仙花数") ③: print(x,"不是水仙花数") 课 堂 活 动 二 如何求出三位数里面的所有水仙花数? 过程分析: 1.三位数的范围: 2.使用什么结构遍历所有的三位数: 循环:for x in range(100,1000): 100~999 是 否 否 是 c=x%10 b=x//10%10 x<=999 利用算法思想解决问题 编写代码与调试 活动三:改进活动二的程序,找出三位数里面的所有水仙花数。 for x in range(100,1000): a=x//100 xxx xxx 课 堂 活 动 Tab键→控制缩进,按一次相当于四个空格 三 枚举算法 第一个数100 第二个数101 第三个数102 …… 第900个数999 100不是水仙花数 101不是水仙花数 102不是水仙花数 …… 999不是水仙花数 列 举 验 证 枚 举 法: 从一串钥匙中找出适配的钥匙 鸡兔同笼问题 1234可以组成多少位不同的四位数 …… 优点:比较直观,易于理解 缺点:效率比较低 把所有可能的答案一一列举 四 算法的特征 分析 现象(可多选) 算法的特征 哪些信息属于输入: 输入项: □0个输入 □多个输入 哪些信息属于输出: 输出项: □0个输出 □多个输出 执行的结果: 执行的结果:□确定的 □不确定的 得到结果需要的步骤? 执行的步骤:□有限 □无限 执行完需要的时间 执行的时间:□有限 □无限 无/有 有 是/不是水仙花数 √ √ √ √ 0个或多个输入 一定有输出 确切性 有穷性 可行性 算法有哪些特征呢? √ √ for x in range(100,1000): a=x//100 b=x//10%10 c=x%10 if a**3+b**3+c**3==x: print(x,"是水仙花数") x=int(input("请输入一个三位数")) a=x//100 b=x//10%10 c=x%10 if a**3+b**3+c**3==x: print(x,"是水仙花数") else: print(x,"不是水仙花数") 课 堂 小 结 课 堂 小 练 谁是冠军 面试的冠军在A 、 B 、 C 、 D四位同学中。已知四人中有一人说了假话。 A说:“不是我。”B说:“是C。”C说:“是D。”D说:“C说的不对。”你能判断出到底谁是冠军吗? champion=['A','B','C','D'] #设置选手列表 for i in champion: cond=(i!='A')+(i=='C') + (i=='D')+(①) if cond==②: print("冠军是:",i) 提示:A说:“不是我。”可以表示为“i!='A'”,其中i为枚举的冠军选手编号。 THE END ... ...

~~ 您好,已阅读到文档的结尾了 ~~