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 ...
随机推荐
- Python 学习 第三篇:数组类型(列表、字典和元组)
列表和字段都可以在原处进行修改,可以按照需求增长或缩短,并且可以包含任何类型的对象或被嵌套.列表和字典存储的是对象的引用,而不是拷贝. 一,列表 列表是有序的序列,每一个列表项的顺序是固定的,这使得列 ...
- 杂谈---小故事小道理,面试中的小技巧(NO.2)
本篇是接着上一篇面试随笔的,上一次有猿友反应写的有些“扯淡”,LZ思来想去最大的原因可能是由于上一章写的全是一些大忌,既然是大忌,那么在现实当中发生的概率还是相对较小的,大部分人还是很少在面试中犯如此 ...
- shell脚本之基础
配置启动界面 vim /etc/inittab/ init3配置网卡 重启生效system-config-network网卡配置文件vim /etc/sysconfig/network-script ...
- CentOS7 Rsync服务搭建-Rsync+Inotify架构实现实时同步
一.rsync 概念 1.rsyncrsync是类unix/linux系统下的数据镜像备份工具.使用快速增量备份工具Remote Sync可以远程同步,支持本地复制,或者与其他SSH.rsync主机同 ...
- Seay源代码审计系统的配置和安装
2014年7月31日 Seay源代码审计系统2.1 时隔刚好一年之久,源代码审计系统再次更新,这次主要优化审计体验,优化了漏洞规则,算是小幅更新,原来使用者打开程序会提示自动更新. 1.优化原有规则, ...
- 06-docker组件如何协作
容器启动过程如下: Docker 客户端执行 docker run 命令. Docker daemon 发现本地没有 httpd 镜像. daemon 从 Docker Hub 下载镜像. 下载完成, ...
- 公钥与私钥的理解,以及https的应用原理
1.公钥与私钥原理1)鲍勃有两把钥匙,一把是公钥,另一把是私钥2)鲍勃把公钥送给他的朋友们----帕蒂.道格.苏珊----每人一把.3)苏珊要给鲍勃写一封保密的信.她写完后用鲍勃的公钥加密,就可以达到 ...
- PAT甲题题解-1037. Magic Coupon (25)-贪心,水
题目说了那么多,就是给你两个序列,分别选取元素进行一对一相乘,求得到的最大乘积. 将两个序列的正和负数分开,排个序,然后分别将正1和正2前面的相乘,负1和负2前面的相乘,累加和即可. #include ...
- 团队week9
1. Bug bash ▪ How many bugs is found in your bug bash? Bug很多,就前端的用户管理部分发现的bug就有14个. 2. Write a blog ...
- 实训一(cocos2d-x相关)
实训内容简介: 大四开始前系里安排的的集中实践环节,根据要求,开发app应用软件. 目标app:Stick_mxj 目的:继续对cocos2d-x的学习,完成实践环节,解决现在对引擎不是很清楚的一些问 ...