Scratch编程-7.数位分离 算法教学课件(16张ppt)

资源下载
  1. 二一教育资源

Scratch编程-7.数位分离 算法教学课件(16张ppt)

资源简介

(共16张PPT)
第七课:数位分离
学习大纲
第一章
学习目标
第二章
编码实现
第三章
每课一练
第四章
总结拓展


CONTENTS
第五节
创新作业
1、学习目标
学习目标
求余数,还有一个常用的方法----数位分离,就是将一个整数各位上的数字分别提取出来,进行一些计算和处理
本节学习在scratch中将自然数进行数位分离
基本原理
1、两位数的数位之和
例如,有这样一个需求,询问并输入一个两位的整数X,计算其各个位
与十位数字之和。假设X = 25,则输出7(2+5=7)。
新建变量a用于存放十位上的数字,变量b存放个位上的数字。先来看个位,用X除以10的余数,即可得到各位数字,例如,25÷10=2......5,搭建积木如下:
基本原理
十位上的数字,就是X除以10的整数商,搭建积木如下:
输出两位数的数位之和,就是输出a + b,搭建积木如下:
两位数的数之和的代码如右图
基本原理
三位数的数位之和的代码
假设X是一个三位数,例如,X = 325,个位上的数字,仍是X除以10的余数。但十位数字不再是X数以10的商了,因为此时商是32,而不是2了。要对这个商再次除以10的余数,才可得到十位的数字2,搭建积木如下:
对于一个三维数的百威数字,可以除以100再除以10取余数,也可以直接除以100并向下取整,结果是不变的,搭建积木如下:
基本原理
数位分离方法总结
按照以下方法求任意位数的整数部分:
各位的数字都是除以10的余数。
十位的数字是除以10的商,再取除以10的余数。
百位的注资是除以100的商,再取除以10的余数。
......
注意:在已知位数的情况下,最高位的数字可以不用再对10取余数。
Tips
在scratch中,还有一种方法可以进行数位分离,即利用字符串的字符来实现。scratch变量的数据类型是自动识别的,一个数字也可以是字符,利用字符串进行数位分离的代码如下图:
注意:这种分离方式,仅存在于scratch中,不能再其他高级语言中使用,对进一步学习高级语言也没有帮助,所以我们的课程,仍然以余数的方式来介绍。
任务
将一个三位数进行数位分离并逆序输出
询问输入一个三位数,将其逆序输出。如果收尾数字是0,则只输出后两位数字,
即不输出前导0.例如,输入123,输出321;输入250,输出52.
1、实现步骤:
(1)变量X:存放输入的三位数。
(2)变量 a, b ,c :分别存放数位分离后的百位、十位、个位上的数字。
任务
2、数位分离搭建图:分离百位、十位、个位上的数字,分别放入变量 a , b , c 中。
任务
3、逆序输出
逆序输出三位数时不需要输出前导 0 。例如,一个三位数250,分离出 a = 2,b = 5,
c = 0,不能输出052,而应输出52,所以不能用连接字符的方式逆序输出,可以将分离出来的数位重新创建为一个三位数,算式及搭建的积木如下:
c * 100 + b * 10 + a
这样就重构了一个新的整数,没有前导0。当a = 2,b = 5,c = 0时,0*100+5*10+2=52
代码总览
逆序输出三位数的代码如图所示:
执行结果
启动程序,输入X的值分别为250,逆序输出三位数,如图所示:
数位分离的过程:首先把各个数位分离出来并放入变量中,再按要求进行处理。数位分离时用到的指令有一下三个积木
实战
将一个四位数数位分离并按要求输出
【要求】输入一个四位数,将千位与百位交换,十位与个位交换后输出。例如输入6128,输出1682;输入5040,输出504
【提示】不输出前导
下 课 啦!

展开更多......

收起↑

资源预览