scala实现彩票算法

scala实现彩票算法

(1)具体实现代码如下:

package hw1

import scala.util.control._

/**
 * @author BIGDATA
 */
object Cp {
  var input=new Array[Int](7)
  var cp=new Array[Int](7)
  var level=0
  def main(args:Array[String]):Unit={
     //var num=readInt
    buy()
    printUsr();
    kaijiang();
    printzhongJ();
    duijiang();
    fajiang();
   }
  def buy():Unit={
    println("请输入1-35之间的七个整数:")
    var i=0
    while(i<7)
    {
        input(i)=readInt
        if(input(i)>=1 && input(i)<=35)
        {
          val loop = new Breaks
          loop.breakable {
            for(j<- 0 to i-1)
            {
              if(input(i)==input(j))
              {
                println("输入重复,请重新输入:")
                i-=1
                loop.break()
              }
            }
          }
          i+=1
        }
        else
          {
            println("输入数据越界,请重新输入:")
            i-=1
          }
       }
  }
  def printUsr():Unit={
    println("用户所买的号码是:")
    for(i<- 0 to 6) print(input(i)+" ")
    println()
  } 

  def kaijiang():Unit={
    var i=0
    while(i<7)
    {
      cp(i)=(math.random*35+1).toInt
      val loop = new Breaks
      loop.breakable {
        for (j <- 0 to i-1)
        {
          if (cp(i)==cp(j))
          {
            i-=1
            loop.break()
          }
        }
      }
      i+=1
    }
  }

  def  printzhongJ():Unit={
   println("系统中将号码为:")
   for(i<- 0 to 6) print(cp(i)+" ")
   println()
  }

  def duijiang():Unit={
    printf("用户中奖等级为:")
    for(i<- 0 to 6)
    {
      val loop1 = new Breaks
      loop1.breakable {
        for(j <- 0 to 6)
        {
          if(input(i)==cp(j))
          {
            level+=1
            loop1.break()
          }
        }
      }
    }
  }

  def fajiang():Unit={
    level match{
    case 7 => println("1等奖")
    case 6 => println("2等奖")
    case 5 => println("3等奖")
    case 4 => println("4等奖");
    case 3 => println("5等奖")
    case 2 => println("6等奖")
    case 1 => println("7等奖");
    case 0 => println("好遗憾,没有中奖!")
    }
  }

}

(2)运行结果如下:

时间: 2024-10-13 17:49:16

scala实现彩票算法的相关文章

C#排列组合类,写彩票算法的朋友们可以来看一看

public class PermutationAndCombination<T>    {        /// <summary>        /// 交换两个变量        /// </summary>        /// <param name="a">变量1</param>        /// <param name="b">变量2</param>       

Spark之Scala学习

1. Scala集合学习: http://blog.csdn.net/lyrebing/article/details/20362227 2. scala实现kmeans算法 http://www.thinksaas.cn/group/topic/93852/ 3. Spark之Scala学习网站 http://spark.apache.org/docs/latest/mllib-decision-tree.html 4. Spark wordcount开发并提交到集群运行: http://ww

彩票分析与预测平台-开发简介

开发背景 作为一个如假包换的挨踢工人,平时不抽烟.不喝酒的实在无趣.除了平日看看电影.研究下技术没别的事情可做了.突发奇想找点乐子打发下无聊的下班时间.一天经朋友介绍推荐我去玩下彩票跟股票,听说消遣之余说不定还能赚点小钱.我想闲着也是闲着,作为一名IT码农也可以拿出看家本领来,给自己找点事情做下也不错,说干就干!抱着学习的态度玩一下也好.对于彩票和股票,那就先从彩票开始吧!(PS:就个人而言,股票还算一个什么高大上的东西) 说起彩票,目前常见的有三大分类:数字.高频.竞技.还有各种地方性彩票!彩

Spark MLlib算法调用展示平台及其实现过程

1. 软件版本: IDE:Intellij IDEA 14,Java:1.7,Scala:2.10.6:Tomcat:7,CDH:5.8.0: Spark:1.6.0-cdh5.8.0-hadoop2.6.0-cdh5.8.0 : Hadoop:hadoop2.6.0-cdh5.8.0:(使用的是CDH提供的虚拟机) 2. 工程下载及部署: Scala封装Spark算法工程:https://github.com/fansy1990/Spark_MLlib_Algorithm_1.6.0.git

Scala 运算符和集合转换操作示例

Scala是数据挖掘算法领域最有力的编程语言之一,语言本身是面向函数,这也符合了数据挖掘算法的常用场景:在原始数据集上应用一系列的变换,语言本身也对集合操作提供了众多强大的函数,本文将以List类型为例子,介绍常见的集合变换操作. 一.常用操作符(操作符其实也是函数) ++ ++[B](that: GenTraversableOnce[B]): List[B] 从列表的尾部添加另外一个列表++: ++:[B >: A, That](that: collection.Traversable[B])

scala学习笔记一

Scala是数据挖掘算法领域最有力的编程语言之一,语言本身是面向函数,这也符合了数据挖掘算法的常用场景:在原始数据集上应用一系列的变换,语言本身也对集合操作提供了众多强大的函数,本文将以List类型为例子,介绍常见的集合变换操作. 一.常用操作符(操作符其实也是函数) ++ ++[B](that: GenTraversableOnce[B]): List[B] 从列表的尾部添加另外一个列表 ++: ++:[B >: A, That](that: collection.Traversable[B]

Spark MLBase分布式机器学习系统入门:以MLlib实现Kmeans聚类算法

1.什么是MLBaseMLBase是Spark生态圈的一部分,专注于机器学习,包含三个组件:MLlib.MLI.ML Optimizer. ML Optimizer: This layer aims to automating the task of ML pipeline construction. The optimizer solves a search problem over feature extractors and ML algorithms included inMLI and

scala 基础知识总结

在最开始处引入 log 相关的 包 import org.apache.log4j.{Logger,Level} 在需要屏蔽日志输出的地方加上这两行代码 // 屏蔽不必要的日志显示在终端上 Logger.getLogger("org.apache.spark").setLevel(Level.ERROR) Logger.getLogger("org.eclipse.jetty.server").setLevel(Level.OFF) // scala io Case

选择排序详解

选择排序 选择排序是最简单的排序方法之一,它的做法是这样的:首先,找出数组中最小的那个元素,将最小的元素与第一个元素的位置互换,然后找出数组中第二小的元素,与数组中第二个元素互换位置(如果要比较的元素是当前最小,则自己和自己交换),以此类推,直到遍历了整个数组.这种方法叫做选择排序,因为它会不断地选择剩余元素中的最小者. 表格1-1排序步骤 初始值: 1 10 -5 9 8 7 3 第一趟: -5 10 1 9 8 7 3 第二趟: -5 1 10 9 8 7 3 第三趟: -5 1 3 9 8