for循环语句 案例:输出数据
需求:在控制台输出1~5和5~1的数据
分析:
①:反复进行输出的动作,使用循环结构
for (初始化语句;条件判断语句;条件控制语句) {
}
②:从1开始到5结束,设置初始化从1开始
for(int i=1;条件判断语句;条件控制语句) {
}
③:从1开始到5结束,设置判断条件为没有到5的时候继续执行,执行到超过5程序结束
for (int i=1;i <=5;条件控制语句) {
}
④:从1到5,每次增加1,设置条件控制每次 +1
for(int i =1;i <=5; i++){
}
⑤:将反复进行的事情写入循环结构内部,打印对应数据
for(int i =1 ; i<=5 ; i++){
System.out.println(i);
}
for循环语句 案例:求和
需求:求1~5之间的数据和,并把求和结果在控制台输出
分析:
①:求和的最终结果必须保存起来,需要定义一个变量,用于保存求和结果,初始值为0
int sum = 0;
②:从1开始到5结束的数据,使用循环结构完成
for (int i = 1;i <= 5; i++) {
}
③:将反复进行的事情写入循环结构内部,此处反复进行的事情是将数据i加到用于保存最终求和的变量sum中
for (int i = 1;i <= 5; i++) {
sum += i;
}
④:当循环执行完毕时,将最终数据打印出来
System.out.println("1~5之间的数据和是:"+ sum);
for循环语句 案例:求偶数和
需求:求1~100之间的偶数和,并把求和结果在控制台输出
分析:
①:对1~100的数据求和与1~5的数据求和几乎完全一样,仅仅是结束条件不同
int sum = 0;
for(int number = 1;number<=100;number++){
sum += number;
}
②:对1~100的偶数求和,需要对求和操作添加限制条件
int sum = 0;
for (int number = 1; number<=100;number++) {
if (执行的限制条件) {
sum += number;
}
}
③:限制条件是偶数才参与运算,因此条件应该是判断是否是偶数
int sum = 0;
for (int number = 1; number<=100;number++) {
if (i % 2 == 0) {
sum += number;
}
}
④:当循环执行完毕时,将最终数据打印出来
System.out.println("1~100之间的偶数和是:" + sum);
for循环语句 案例:水仙花
需求:在控制台输出所有的“水仙花数”
分析:①:三位数的个位数字如何求371 1就是原始数字对10进行取余运算的结果 371 % 10 = 1
②:三位数的百位数字如何求
371 3就是原始数字除以100的结果(整除) 371 / 100 = 3
③:三位数的十位数字如何求
371 371通过除以10,可以将7移动到个位上(整数) 371 / 10 = 37
37通过对10进行取余运算可以得到最后一位的值7 37 % 10 = 7
371 / 10 % 10 = 7
④:思考:任意数字的指定位上的数值如何求
先使用整除操作将要求的数字移动到个位上,再使用取余操作取出最后一位上的值
分析:
①:输出所有的水仙花数必然要使用到循环,遍历所有的三位数,三位数从100开始,到999结束
for (int number = 100;number <= 999;number++){ ...... }
②:不是每个三位数都是水仙花数,因此需要判定,满足条件的数字才进行输出
if (执行的限制条件){ ...... }
③:判定条件是将三位数中的每个数值取出来,计算立方和后与原始数字比较是否相等
if( ? + ? + ? == 原数) { 输出原数 }
④:在计算之前获取三位数中每个位上的值
int a = 原数上的个位;
int b = 原数上的十位;
int c = 原数上的百位;
if ( a*a*a+b*b*b+c*c*c == 原数){
输出原数
}
综合分析:
①:先建立循环
②:取出三位数中的个位十位百位数字
③:计算是否满足条件,满足条件输出
for循环语句 案例:统计
需求:统计“水仙花数”一共有多少个,并在控制台输出个数
分析:①:定义变量count,用于保存“水仙花数”的数量,初始值为0
int count = 0;
②:在判定水仙花数的过程中,满足条件不再输出,更改为修改count的值,使count+1
if ( a*a*a+b*b*b+c*c*c == 原数) {
count++;
}
③:打印输出最终结果
System.out.println("水仙花共有:" +count+ "个");