Spark记录-Scala记录(基础程序例子)
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记录(基础程序例子)的更多相关文章
- Spark记录-Scala语法基础
参考:http://docs.scala-lang.org/cheatsheets/index.html.http://docs.scala-lang.org/.http://www.scala-la ...
- Spark记录-Scala集合
Scala列表 Scala列表与数组非常相似,列表的所有元素都具有相同的类型,但有两个重要的区别. 首先,列表是不可变的,列表的元素不能通过赋值来更改. 其次,列表表示一个链表,而数组是平的. 具有类 ...
- 关于spark与scala版本问题记录
记录一下版本问题: spark与scala版本对应问题: 1.官网会给出,如下,spark2.3.1默认需要scala2.11版本 2.在maven依赖网中也可以看到,如下 3.关于idea开发版本中 ...
- Spark记录-Scala类和对象
本章将介绍如何在Scala编程中使用类和对象.类是对象的蓝图(或叫模板).定义一个类后,可以使用关键字new来创建一个类的对象. 通过对象可以使用定义的类的所有功能. 下面的图通过一个包含成员变量(n ...
- Spark记录-Scala数组
Scala提供了一种数据结构叫作数组,数组是一种存储了相同类型元素的固定大小顺序集合.数组用于存储数据集合,但将数组视为相同类型变量的集合通常更为有用. 可以声明一个数组变量,例如:numbers,使 ...
- Spark记录-Scala字符串
Scala字符串 在Scala中的字符串和Java中的一样,字符串是一个不可变的对象,也就是一个不能修改的对象.可以修改的对象,如数组,称为可变对象.字符串是非常有用的对象,在本节的最后部分,我们将介 ...
- Spark记录-Scala函数与闭包
函数声明 Scala函数声明具有以下形式 - def functionName ([list of parameters]) : [return type] Scala 如果不使用等号和方法体,则隐式 ...
- Spark记录-Scala变量/访问修饰符/运算符
变量是保存存储值的内存位置的名称.这意味着当创建变量时,可以在内存中保留一些空间. 根据变量的数据类型,编译器分配内存并决定可以存储在预留内存中的内容.因此,通过为变量分配不同的数据类型,可以在这些变 ...
- java+hadoop+spark+hbase+scala+kafka+zookeeper配置环境变量记录备忘
java+hadoop+spark+hbase+scala 在/etc/profile 下面加上如下环境变量 export JAVA_HOME=/usr/java/jdk1.8.0_102 expor ...
随机推荐
- 浅谈 iOS 中的 Activity Indicator
Activity Indicator 是iOS开发中必不可少的一个视图.本文就简单地总结一下这个Activity Indicator 的使用方法. 默认 Activity Indicator 以下的函 ...
- Visual Studio控制台程序输出窗口一闪而过的解决方法
转载大牛的博客,自己也遇到了类似的问题,解决方法很详细,也很管用 刚接触 Visual Studio的时候大多数人会写个Hello World的程序试一下,有的人会发现执行结束后输出窗口会一闪而过 ...
- 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互转,其他的以后在补充.............. ...
- Excel读取Word Table元素
Option Explicit Sub Mian() Application.ScreenUpdating = False Application.DisplayAlerts = False Appl ...
- Nginx浅析
Nginx浅析 Nginx是什么 总的来说,Nginx其实就是一个和apache类似的服务器软件. Nginx是一款轻量级的Web服务器/反向代理服务器以及电子邮件代理服务器,并在一个BSD-like ...
- linux内核分析第二次实验
http://blog.sina.com.cn/s/blog_78e559950102wnqp.html
- 《Linux内核分析》课程第二周学习总结
姓名:何伟钦 学号:20135223 ( *原创作品转载请注明出处*) ( 学习课程:<Linux内核分析>MOOC课程http://mooc.study.163.com/course/U ...
- 第二个Sprint冲刺第 九天(燃尽图)
- DOM父节点、子节点例子
父节点 <body> <ul id="oUl"> <li><a href="#">隐藏1</a>&l ...
- Docker(二十二)-Docker Swarm常用命令
#查看集群节点 docker node ls #创建nginx服务 #docker pull hub.test.com:5000/almi/nginx:0.1 #下载私有仓库镜像 docker ser ...