Scala题目01

1、简单输出

现有数组包含元素1-9
  • 1.对每个元素乘2后输出
  • 2.对每个偶数乘2后输出
package com.qf.bigdata.spark.work

/**
 * @Author 25741 
 * @Description TODO
 * @Date 2022/5/18 11:05
 * @Version 1.0
 */
object Work01_0518 {
    def main(args: Array[String]): Unit = {
        //Array:长度不可变,数组中内容可变
        var arr: Array[Int] = Array(1, 2, 3, 4, 5, 6, 7, 8, 9)

        //1、对每个元素乘 2 后输出
        println(arr.map(_ * 2).mkString(","))

        //2、对每个偶数乘2后输出
        println(arr.filter(_ % 2 == 0).map(_ * 2).mkString(","))
    }
}

2、猜数字游戏

规则:实现一个猜数字游戏,要求有10次机会猜数字,数字范围为0~100的范围。
每局游戏电脑随机一个数字,玩家有10次机会猜测。每次猜测电脑会提示猜测的
数字与目标数字是否偏大或者偏小。如果玩家猜测的数字正好是电脑随机的那一
个,则提示游戏成功并结束游戏。如果超过10次玩家还没有猜测出结果,则提示
游戏失败,游戏结果。

    package com.qf.bigdata.spark.work
    
    import scala.io.StdIn
    import scala.math.random
    import scala.util.control.Breaks.{break, breakable}
    
    /**
     * @Author 25741
     * @Description TODO
     * @Date 2022/5/18 11:32
     * @Version 1.0
     */
    
    /**
     * 2、实现一个猜数字游戏,要求有10次机会猜数字,数字范围为0~100的范围。
     * 每局游戏电脑随机一个数字,玩家有10次机会猜测。
     * 每次猜测电脑会提示猜测的数字与目标数字是否偏大或者偏小。
     * 如果玩家猜测的数字正好是电脑随机的那一个,测提示游戏成功并结束游戏。
     * 如果超过10次玩家还没有猜测出结果,则提示游戏失败,游戏结果
     */
    object Work02_0518 {
    
        //生成随机数
        def getRandom(min:Int, max:Int): Int = {
            Math.floor(random() * (max - min + 1) + min).toInt
        }
    
        //猜数字,十次机会
        def guess(): Unit = {
            val result: Int = getRandom(0, 100)
            println("你一共有十次机会!")
            breakable{
                for(i <- 1 to 10) {
                    println(s"第${i}次猜测")
                    println("请输入猜测的数字:")
                    val number: Int = StdIn.readInt()
                    if(result == number) {
                        println("恭喜你猜对了!")
                        break;
                    }else if(result < number) {
                        println("你猜大了!")
                    }else {
                        println("你猜小了!")
                    }
                }
                println("你输了!")
            }
        }
    
        def main(args: Array[String]): Unit = {
            guess()
        }
    }
    

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值