格式:
for ( 循环变量 <- 数据集) {
for(){
for(){
}
}
}
说明:
1.for可以替换成while循环
2.循环的嵌套可以有多个,数量不限。
3.里外层循环执行的次数不相同。
编写代码打印输出如下图形:
1
22
333
4444
55555
for(i <- 1 to 5){ //代表行,一共有五行
for(j <- 1 to i){ // 具体一行中输出什么内容
print(i)
}
println() //换行
}
白鸡百钱问题
公鸡1只,价格5钱;
母鸡1只,价格3钱;
小鸡3只,价格1钱;
用100钱买100只鸡,问公鸡,母鸡,小鸡各有多少只?
for(x <- 0 to 20){
for(y <- 0 to 33){
var z = 100 - x - y
//小鸡的数量一定是3的倍数
if(z%3==0 && 5*x + 3*y +z/3 == 100){
println(x,y,z)
}
}
}
结果:
(0,25,75)
(4,18,78)
(8,11,81)
(12,4,84)
打印乘法口诀表
for(i <- 1 to 9){
for(j <- 1 to i){
// print(s"${j}×${i}=${i*j} ")
printf("%d×%d=%-3d", j, i, i*j)
//%d 表示一个占位符,表示会以整数的形式输出对应的值
//%-3d 表示一个占位符,表示会以整数的形式输出对应的值,这是数字占3个字符的宽度,左对齐
}
println()
}
结果:
1×1=1
1×2=2 2×2=4
1×3=3 2×3=6 3×3=9
1×4=4 2×4=8 3×4=12 4×4=16
1×5=5 2×5=10 3×5=15 4×5=20 5×5=25
1×6=6 2×6=12 3×6=18 4×6=24 5×6=30 6×6=36
1×7=7 2×7=14 3×7=21 4×7=28 5×7=35 6×7=42 7×7=49
1×8=8 2×8=16 3×8=24 4×8=32 5×8=40 6×8=48 7×8=56 8×8=64
1×9=9 2×9=18 3×9=27 4×9=36 5×9=45 6×9=54 7×9=63 8×9=72 9×9=81