5. 案例:百钱百鸡
需求:我国古代数学家张丘建在《算经》一书中提出的数学问题:鸡翁一值钱五,鸡母一值钱三,鸡雏三值钱一。百钱买百鸡,问鸡翁、鸡母、鸡雏各几何?
分析:
假设鸡翁 x 只,鸡母 y 只,鸡雏 z 只,则下面的式子是成立的
x + y + z = 100;
5*x + 3*y + z/3 = 100;
如果单独只看一种鸡型,则下面的式子是成立的
0 <= x <= 20
0 <= y <= 33
0 <= z <= 100
使用穷举法就可以罗列出x,y,z的值。
思路:
1 第1层循环,用于表示鸡翁的范围,初始化表达式的变量定义为x=0,判断条件是x<=20
2 第2层循环,用于表示鸡母的范围,初始化表达式的变量定义为y=0,判断条件是y<=33
3 这个时候,用于表示鸡雏的变量z= 100 - x - y
4 判断表达式 z%3==0 和表达式 5*x + 3*y + z/3 = 100 是否同时成立,如果成立,输出对应的x,y,z的值,就是对应的鸡翁,鸡母,鸡雏的值
6. 案例:数组元素求和
需求:有这样的一个数组,元素是{68,27,95,88,171,996,51,210}。求出该数组中满足要求的元素和,要求是:求和的元素个位和十位都不能是7,并且只能是偶数
思路:
1 定义一个数组,用静态初始化完成数组元素的初始化
2 定义一个求和变量,初始值是0
3 遍历数组,获取到数组中的每一个元素
4 判断该元素是否满足条件,如果满足条件就要累加
arr[x]%10!=7 个位不等于7
arr[x]/10%10!=7 十位不等于7
arr[x]%2 == 0 为偶数
5 输出求和变量的值
7. 案例:数组内容相同
需求:设计一个方法,用于比较这两个数组的内容是否相同
思路:
1 定义两个数组,分别使用静态初始化完成数组元素的初始化
2 定义一个方法,用于比较两个数组的内容是否相同
返回值类型:boolean
参数:int[] arr,int[] arr2
3 比较两个数组的内容是否相同,按照下面的步骤实现就可以了
首先比较数组长度,如果长度不相同,数组内容肯定不相同,返回false
其次遍历,比较两个数组中的每一个元素,只要有元素不相同,返回false
最后循环遍历结束后,返回true
4 调用方法,用变量接收
5 输出结果