题目来自:群内家长提问

题目描述:告诉你一个数字n,请你编程找出一个数k(万能钥匙),这是一个整数,满足以下四个条件

1、它是一个奇数

2、它能被5整除

3、它所有的因数和为n

4、它小于1000

输入:一个整数n

输出:一个整数k,即万能钥匙

例如:输入数字n=48

输出;35(因为35的因数为1+5+7+35=48)

思路:这个题目提到了两个数n和K,n是由用户输入,k要满足四个条件,我们来分析一下这个条件:

1、能被5整除,那么这个数的尾数就是0或5,它又是一个奇数,那么就排除了尾数是0的,因此这个数就可能是5,15,25,35...

2、它所有的因数和为n,因此需要计算这个数的所有因数和,只要通过穷举法,依次计算5,15,25,35...的因数和,只要因数和等于输入n就找到了k

程序与源码下载--->>scratch算法练习-万能钥匙

第一步:定义一个计算因数和的积木,用来计算所有因数之和

scratch算法练习-万能钥匙

第二步:穷举发,从k=5开始尝试,每次k增加10(见思路1)直到k=n或者k>1000(k要求小于1000)结束程序。

scratch算法练习-万能钥匙

本站内容未经许可,禁止任何网站及个人进行转载。