import scala.util.control._
object learnning {
def main(args:Array[String]):Unit={
val n:Int=10
println("第"+n+"个月兔子总数为"+fun(n))
val n1:Int=1
val n2:Int=100
var count:Int=0
//统计素数个数
for(i:Int<-n1 until n2){
if(isPrime(i)){
count=count+1;
System.out.print(i+" ");
if(count%10==0){
println();
}
}
}
println();
println("在"+n1+"和"+n2+"之间共有"+count+"个素数");
for(i:Int<- 100 until 1000){
if(isLotus(i))
print(i+" ");
}
println();
val n3:Int=90;
decompose(n3);
System.out.println("请输入成绩");
var content:Int = Console.readLine().toInt
grade(content);
println("请输入第一个数");
var n6:Int = Console.readLine().toInt
println("请输入第二个数");
var n7:Int = Console.readLine().toInt
max_min(n6,n7);
System.out.print("请输入一串字符:");
val str:String = Console.readLine().toString
countstring(str);
}
private def fun(n:Int):Int={
if(n==1 || n==2)
return 1;
else
return fun(n-1)+fun(n-2);
}
//判断素数
private def isPrime(n:Int):Boolean={
var flag:Boolean = true;
if(n==1)
flag = false;
else {
val loop = new Breaks;
loop.breakable {
for (i:Int<- 2 to Math.sqrt(n).toInt) {
if ((n % i) == 0 || n == 1) {
flag = false;
loop.break()
}
else
flag = true;
}
}
}
return flag;
}
//判断水仙花数
private def isLotus(lotus:Int):Boolean={
var m:Int = 0;
var n:Int = lotus;
var sum:Int = 0;
m = n/100;
n -= m*100;
sum = m*m*m;
m = n/10;
n -= m*10;
sum += m*m*m + n*n*n;
if(sum==lotus)
return true;
else
return false;
}
private def decompose(n:Int):Unit={
print(n+"=");
var n4:Int=n;
val loop = new Breaks;
loop.breakable {
for (i <- 2 until n4 + 1) {
while (n4 % i == 0 && n4 != i) {
n4 /=i;
print(i + "*");
}
if (n4 == i) {
println(i);
loop.break();
}
}
}
}
//成绩等级计算
private def grade(n:Int):Unit={
if(n>100 || n<0)
System.out.println("输入无效");
else{
var str:String = if(n>=90)"分,属于A等" else "属于B等";
System.out.println(n+str);
}
}
//求最大公约数和最小公倍数
private def max_min(m:Int,n:Int){
var temp:Int = 1;
var yshu:Int = 1;
var bshu:Int = m*n;
var m1:Int=m;
var n1:Int=n;
if(n1<m1){
temp = n1;
n1 = m1;
m1 = temp;
}
while(m1!=0){
temp = n1%m1;
n1 = m1;
m1 = temp;
}
yshu = n1;
bshu /= n1;
System.out.println(m+"和"+n+"的最大公约数为"+yshu);
System.out.println(m+"和"+n+"的最小公倍数为"+bshu);
}
//统计输入的字符数
private def countstring(str:String):Unit= {
val E1: String = "[\u4e00-\u9fa5]";
//汉字
val E2: String = "[a-zA-Z]";
val E3: String = "[0-9]";
val E4: String = "\\s";
//空格
var countChinese: Int = 0;
var countLetter: Int = 0;
var countNumber: Int = 0;
var countSpace: Int = 0;
var countOther: Int = 0;
var array_Char = str.toCharArray();
//将字符串转化为字符数组
var n: Int = array_Char.length;
for (i: Int <- 0 until array_Char.length) {
var array_String:String= array_Char(i).toString();
if (array_String.matches(E1)) {
countChinese = countChinese + 1;
}
else if (array_String.matches(E2)) {
countLetter = countLetter + 1;
}
else if (array_String.matches(E3)) {
countNumber = countNumber + 1;
}
else if (array_String.matches(E4)) {
countSpace = countSpace + 1;
}
else {
countOther = countOther + 1;
}
}
println("输入的汉字个数:" + countChinese);
println("输入的字母个数:" + countLetter);
println("输入的数字个数:" + countNumber);
println("输入的空格个数:" + countSpace);
println("输入的其它字符个数:" + countSpace);
}
}
第10个月兔子总数为55
2 3 5 7 11 13 17 19 23 29
31 37 41 43 47 53 59 61 67 71
73 79 83 89 97
在1和100之间共有25个素数
153 370 371 407
90=2*3*3*5
请输入成绩
90
90分,属于A等
请输入第一个数
1
请输入第二个数
2
1和2的最大公约数为1
1和2的最小公倍数为2
请输入一串字符:ds12含~
输入的汉字个数:1
输入的字母个数:2
输入的数字个数:2
输入的空格个数:3
输入的其它字符个数:3 Process finished with exit code 0

  

Spark记录-Scala记录(基础程序例子)的更多相关文章

  1. Spark记录-Scala语法基础

    参考:http://docs.scala-lang.org/cheatsheets/index.html.http://docs.scala-lang.org/.http://www.scala-la ...

  2. Spark记录-Scala集合

    Scala列表 Scala列表与数组非常相似,列表的所有元素都具有相同的类型,但有两个重要的区别. 首先,列表是不可变的,列表的元素不能通过赋值来更改. 其次,列表表示一个链表,而数组是平的. 具有类 ...

  3. 关于spark与scala版本问题记录

    记录一下版本问题: spark与scala版本对应问题: 1.官网会给出,如下,spark2.3.1默认需要scala2.11版本 2.在maven依赖网中也可以看到,如下 3.关于idea开发版本中 ...

  4. Spark记录-Scala类和对象

    本章将介绍如何在Scala编程中使用类和对象.类是对象的蓝图(或叫模板).定义一个类后,可以使用关键字new来创建一个类的对象. 通过对象可以使用定义的类的所有功能. 下面的图通过一个包含成员变量(n ...

  5. Spark记录-Scala数组

    Scala提供了一种数据结构叫作数组,数组是一种存储了相同类型元素的固定大小顺序集合.数组用于存储数据集合,但将数组视为相同类型变量的集合通常更为有用. 可以声明一个数组变量,例如:numbers,使 ...

  6. Spark记录-Scala字符串

    Scala字符串 在Scala中的字符串和Java中的一样,字符串是一个不可变的对象,也就是一个不能修改的对象.可以修改的对象,如数组,称为可变对象.字符串是非常有用的对象,在本节的最后部分,我们将介 ...

  7. Spark记录-Scala函数与闭包

    函数声明 Scala函数声明具有以下形式 - def functionName ([list of parameters]) : [return type] Scala 如果不使用等号和方法体,则隐式 ...

  8. Spark记录-Scala变量/访问修饰符/运算符

    变量是保存存储值的内存位置的名称.这意味着当创建变量时,可以在内存中保留一些空间. 根据变量的数据类型,编译器分配内存并决定可以存储在预留内存中的内容.因此,通过为变量分配不同的数据类型,可以在这些变 ...

  9. java+hadoop+spark+hbase+scala+kafka+zookeeper配置环境变量记录备忘

    java+hadoop+spark+hbase+scala 在/etc/profile 下面加上如下环境变量 export JAVA_HOME=/usr/java/jdk1.8.0_102 expor ...

随机推荐

  1. 浅谈 iOS 中的 Activity Indicator

    Activity Indicator 是iOS开发中必不可少的一个视图.本文就简单地总结一下这个Activity Indicator 的使用方法. 默认 Activity Indicator 以下的函 ...

  2. Visual Studio控制台程序输出窗口一闪而过的解决方法

    转载大牛的博客,自己也遇到了类似的问题,解决方法很详细,也很管用   刚接触 Visual Studio的时候大多数人会写个Hello World的程序试一下,有的人会发现执行结束后输出窗口会一闪而过 ...

  3. Json和Map互转,四个包(org.json/net.sf.json/com.google.gson/com.alibaba.fastjson)

    目前使用的(org.json/net.sf.json/com.google.gson/com.alibaba.fastjson)这四种json-map互转,其他的以后在补充.............. ...

  4. Excel读取Word Table元素

    Option Explicit Sub Mian() Application.ScreenUpdating = False Application.DisplayAlerts = False Appl ...

  5. Nginx浅析

    Nginx浅析 Nginx是什么 总的来说,Nginx其实就是一个和apache类似的服务器软件. Nginx是一款轻量级的Web服务器/反向代理服务器以及电子邮件代理服务器,并在一个BSD-like ...

  6. linux内核分析第二次实验

    http://blog.sina.com.cn/s/blog_78e559950102wnqp.html

  7. 《Linux内核分析》课程第二周学习总结

    姓名:何伟钦 学号:20135223 ( *原创作品转载请注明出处*) ( 学习课程:<Linux内核分析>MOOC课程http://mooc.study.163.com/course/U ...

  8. 第二个Sprint冲刺第 九天(燃尽图)

  9. DOM父节点、子节点例子

    父节点 <body> <ul id="oUl"> <li><a href="#">隐藏1</a>&l ...

  10. Docker(二十二)-Docker Swarm常用命令

    #查看集群节点 docker node ls #创建nginx服务 #docker pull hub.test.com:5000/almi/nginx:0.1 #下载私有仓库镜像 docker ser ...