Scala编程实验一

1.可否定义一个sum函数呢?返回指定区间的值的和?例如,区间[1,4]的和为1+2+3+4=10返回指定区间值的平方的和呢?立方呢?

import scala.io.StdIn
object helloworld {
  def sum(x:Int,y:Int):Int= {
    var num = 0;
    for (i <- x to y) {
      num += i;
    }
    num
  }
  def main(args: Array[String]) {
  val x,y=readInt();
//    val y=readInt();
  print(sum(x,y))
}
}

 平方就i*i,立方就i*i*i

2.定义一个gcd函数,计算两个数的最大公因数

object gcd {
  def gcde(x:Int,y:Int): Int ={
    var i =0;
    if(x<y){
      i=x;
    }
    else{
      i=y
    }
    var flag = true
    while(flag){
      if(x%i==0&&y%i==0){
        flag=false     }
       i=i-1;
    }
    i=i+1;
    i
  }
  def main(args: Array[String]){
  val x,y=readInt();
  print(gcde(x,y));
}
}

3.scala实现杨辉三角。

object yhsj {
  def main(args: Array[String]) {
    //杨辉三角
    val a =Array.ofDim[Int](10,10)
    for(i<- 0 until a.length){
      a(i)(0)=1
      a(i)(i)=1
    }
    for(i <-2 until a.length ){
      for(j <-1 until a(i).length){
        a(i)(j)=a(i-1)(j-1)+a(i-1)(j)
      }
    }

    for(i <-0 until a.length){
      for(j <- 0 until a(i).length  if j<=i){
        print(a(i)(j)+"\t")
      }
      println()
    }
  }

}
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

fanstuck

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值