无名 发表于 2022-5-8 18:05:13

【限定72小时】Java基础语法实战


搬砖网络,侵权立删
1.判断101-200之间有多少个素数,并输出所有素数。 素数又叫质数,就是除了1和它本身之外,再也没有整数能被它整除的数。也就是素数只有两个因子。http://cdn.u1.huluxia.com/g3/M01/BD/D3/wKgBOV5wP1iAOOaeAABwyL8y0ok614.jpg


2. 古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?http://cdn.u1.huluxia.com/g3/M01/BD/D3/wKgBOV5wP1iAG7NsAACSlHnvrao626.jpg


上面的方法采用了递归的方法,递归的方法有个问题就是如果递归的次数太多的话就会发生栈内存溢出的错误,但是我想查第50个月的兔子数量的时候就卡住不动了,就又写了下面的For循环的方法来获取兔子总数,发现一旦我想查较大的月份的时候,就会出现负数只,思考之后发现原来是int类型的数据类型装不下兔子的数量啦,所以赶紧将返回的sum的数据类型改为了long类型,就解决了问题,把上面应用递归的方法返回值也改为long类型,也能查看较大月份的兔子数量啦,其实只要把题目的规律找到了,后面的编程都是很简单的。http://cdn.u1.huluxia.com/g3/M01/BD/D4/wKgBOV5wP1iAVeW_AACWZhmguO8408.jpg
页: [1]
查看完整版本: 【限定72小时】Java基础语法实战