for循环与嵌套(水仙花数与三角形的打印)
## 一.for循环
语法:
for(开始区间; 结束区间; 修改循环条件){
循环体;
}
> 开始区间:初始化表达式(确定开始)int i = 1;
> 结束区间:逻辑表达式(确定结束) int i <= 5;
> 修改循环条件:控制循环条件的表达式,改变变量的值 i++
执行流程:
> 1. 初始化表达式,只执行1次
> 2. 逻辑表达式 如果为true,则执行循环体 如果为false,则结束循环
> 3. 当循环体执行完后,执行修改循环条件的语句
> 4. 接下来,回到第2步,直到条件表达式的值为false,则循环结束
例子:水仙花数(所谓水仙花数是指一个数3位数,其
每位数字立方和等于其本身,如153 = 111 + 333 + 555)
分析:开始区间 int i=100;
结束区间 i<=999;
步长 i++
```java
for (int i = 100; i <= 999; i++) {
// 判断 i == g*g*g + s*s*s +b*b*b
int g = i % 10; // 求个位数
int s = i / 10 % 10; // 求十位数
int b = i / 100; // 求百位
if (i == g * g * g + s * s * s + b * b * b) {
System.out.println(i);
}
}
```
## 二.for循环嵌套
语法:
for(开始区间; 结束区间; 修改循环条件) {
for(开始区间; 结束区间; 修改循环条件)
{ 循环体 }
}
执行流程:
```java
//一共循环了2*3=6次
for(int i=1 ; i<=2; i++){ //外层循环,执行2次
for( int j=1; j<=3;j++){ //内层循环,执行3次
System.out.println(i+","+j);
}
}
```
例子:打印等腰直角三角形
分析:
```java
// i是行数; j是*的个数; k(每行第1个*前面的空格个数)
i j k
1 * 1 2
2 *** 3 1
3 ***** 5 0
//一般这种打印图形的题目只要找出i与j和i与k的关系,就可以解出来
// 要j和i找关系 j=2*i -1
// 要k和i找关系 k=3-i for (int i = 1; i <= 3; i++) { //一共有三行,i<=3
// 先打印空格
for (int k = 1; k <= 3 - i; k++) { //空格k与i的关系3-i
System.out.print(" ");//这里引号里是一个空格
}
// 再打印星星*
for (int j = 1; j <= 2 * i - 1; j++) {//星星j与i的关系为2*i-1
System.out.print("*");
}
// 最后换行,不换行的话,这三行的*会打印在同一行上
//外循环i执行了3次,所以换了三次行
System.out.print("\n");
}
```
for循环与嵌套(水仙花数与三角形的打印)的更多相关文章
- for循环练习题1——水仙花数
/*输出所有的水仙花数,所谓水仙花数是指一个3位数,其各个位上数 字立方和等于其本身. 例如: 153 = 1*1*1 + 3*3*3 + 5*5*5 */class ForTest3{ public ...
- JAVA 基础编程练习题3 【程序 3 水仙花数】
3 [程序 3 水仙花数] 题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身.例 如:153 是一个"水仙 ...
- 用js 的for循环打印三角形,提取水仙花数,求本月多少天
第一题:用for循环打印三角形 //第一个 for(var x = 1;x <= 4;x++){ //控制行数 :由 1 到 4 for(var y = 1;y <= x;y++){ // ...
- 【C语言】(for循环嵌套)找出1000以内的水仙花数
什么是水仙花数? 水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身(例如:1^3 + 5^3+ 3^3 = 153). 分析: 根据定义可知: a*a*a+b*b*b+c*c*c ...
- 水仙花数------"水仙花数 "是指一个三位数,其各位数字立方和等于该数本身。(for循环的嵌套)
package com.zuoye.test;//打印出所有的 "水仙花数 ",所谓 "水仙花数 "是指一个三位数,//其各位数字立方和等于该数本身.//例如: ...
- 【Java基础】for循环实现在控制台打印水仙花数
代码: /* * 需求:在控制台输出所有的”水仙花数” * * 分析: * 什么是水仙花数呢? * 所谓的水仙花数是指一个三位数,其各位数字的立方和等于该数本身. * 举例:153就是一个水仙花数. ...
- 利用for循环如何判定是水仙花数
水仙花数业内的大家可能听说过,但是对于初学者来讲,对于水仙花数还是比较陌生的. 首先要知道的是水仙花数的计算公式:153=1**3+5**3+3**3: 如何去判定这个数是否为水仙花数,最好的办法就是 ...
- 水仙花数的条件:1.是一个三位数,2.个百千位数字的3次方加起来的和等于当前的三位数。如果,想要完美一点可以在外部加while循环
#!/usr/bin/env python# -*- coding: utf-8 -*-print("请输入三位数:")num = input()# 定义常量SumNum = 0# ...
- 初入PHP,(for循环~水仙花数)
找出100-999之间的所有"水仙花数".所谓水仙花数是指一个三位 数,各位数字的立方和等于该数本身.(如153次方=1的3次方+5的3次方+3的3次方)并输出这些数字 想想153 ...
随机推荐
- Python--函数&过程
函数式编程与过程式编程打的区分:过程是没有返回值的函数,过程在python3中也有返回值,为None 函数的作用:代码复用.保持代码的一致性.使代码更容易扩展 过程的定义与调用: 1 def func ...
- Vue3 新特性
一.vue3 为什么要重写 两个主要原因考虑重写vue新版本主要功能: 1.主流浏览器对新的JavaScript语言特性的普遍支持. 2.当前Vue代码库随着时间的推移而暴露出来的设计和体系架构问题. ...
- Spyder汉化教程
汉化包下载地址:https://www.lizenghai.com/archives/523.html 1.解压汉化包 2. 3.1.运行汉化补丁PS C:\WINDOWS\system32> ...
- 移动端响应式布局,rem动态更新
(function(){ var fontSizeMatchDeviceWidth = function(){ var deviceWidth = document.documentElement.c ...
- 【MySQL】究竟什么是MVCC呢?
MVCC是什么呢? MVCC其实就是一个多版本并发控制,即多个不同版本的数据实现并发控制的技术,其基本思想是为每次事务生成一个新版本的数据, 在读数据时选择不同版本的数据即可以实现对事务结果的完整性读 ...
- 破解版BrupSuite安装及其问题解决及环境部署
一 下载 BrupSuite_pro_v1.7.37的压缩包百度网盘链接: https://pan.baidu.com/s/1KkuseybjpuHo-6V4_wh9vw 提取码: 3vcs 说明一下 ...
- 代码规范与计划(Beta阶段)
这个作业属于哪个课程 软件工程 (福州大学至诚学院 - 计算机工程系) 团队名称 WeChair 这个作业要求在哪里 Beta冲刺 这个作业的目标 代码规范与计划 作业正文 如下 其他参考文献 代码规 ...
- redis过期键的策略
一.过期时间设置: 127.0.0.1:6379> expire key seconds //设置键的过期时间为多少秒 127.0.0.1:6379> setex key seconds ...
- ElasticSearch解决深度分页性能存在的问题使用scoll来解决
现在我们全局搜索全部的数据,每次返回3条, 从 scroll 请求返回的结果反映了 search 发生时刻的索引状态,就像一个快照.后续的对文档的改动(索引.更新或者删除)都只会影响后面的搜索请求. ...
- 多线程高并发编程(12) -- 阻塞算法实现ArrayBlockingQueue源码分析(1)
一.前言 前文探究了非阻塞算法的实现ConcurrentLinkedQueue安全队列,也说明了阻塞算法实现的两种方式,使用一把锁(出队和入队同一把锁ArrayBlockingQueue)和两把锁(出 ...