Scala
完成打印下图的函数设计,要求:
1、函数逻辑使用while循环设计
2、函数使用柯里化的方式定义两个函数,一个函数接收层数和打印符号,另一个函数只接收层数且默认打印“*”号。
object Test1 {
def main(args: Array[String]): Unit = {
//打印菱形的上半部分
def f1(line:Int,symbol:Char='*')={
var i=1
while(i<=line) { //第一层循环控制行数
var j: Int = 1
while (j<=i+line-1) {
if (j <= line - i) {
print(" ")
}
else {
print(symbol)
}
j+=1
}
println()
i+=1
}
}
//打印菱形的下半部分
def f2(line:Int,symbol:Char)={
var i1=1
while(i1<=line-1){//第一层循环控制行数
var j1: Int = 1
while (j1<=(2*line-1-i1)) {
if (j1 <=i1) {
print(" ")
}
else {
print(symbol)
}
j1+=1
}
println()
i1+=1
}
}
f1(5)
f2(5,'*')
}
}