- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
.专业
.专业.专注.
word
word可编辑
实验编号:2 四川师大《OS应用开发技术》实验报告_2017年9月2L日
计算机科学学院 2015级_班 实验名称:Swift类和子类
姓名 学号: 指导老师:________ 实验成绩:
实验二__ Swift类和子类
实验目的及要求
用Swift语言编写类和子类,掌握类和子类的定义及使用
实验内容
⑴ 实现Person类:
要求具有 firstName, lastName , age, gender 等存储属性,fullName 计算属
性;其中gen der是枚举类型 (male, female);
具有指定构造函数和便利构造函数 ;
两个Person实例对象可以用==和!=进行比较;
Person实例可以直接用 print输出;
Person增加run方法(方法里面直接 print输出Person XXX is running;
从Person分别派生 Teacher类和Student类:
Teacher类增加属性title,实例可以直接用 print输出;
Student类增加属性stuNo,实例可以直接用 print输出;
Teacher和Student重载run方法(方法里面直接 print输出Teacher XXX is
running 禾口 Student XXX is running)
分别构造多个 Person、Teacher和Student对象,并将这些对象存入同一个数组
中;
(4) 新建一个协议 SchoolProtocol ,协议包括一个 department属性(Enum ,自己实现
enum的定义)和 lendBook方法(随便写点内容,能区隔即可);
(5)修改Teacher和Student ,让这两个类实现该协议
(6)对数组执行以下要求
a)分别统计 Person、Teacher和Student对象的个数并放入一字典中 ,统计完
后输出字典内容;
b) 对数组按以下要求排序并输出 :age、fullName、gender+age ;
c)对数组进行穷举,调用每个对象的run方法,同时调用满足协议
SchoolProtocol 对象的 lendBook 方法;
3、主要仪器设备及药品:iMac ( Mac OS、XCode)
三.实验结果的分析与评价(该部分如不够填写,请另加附页)
(1)找出从1-10000的所有质数,将找出的质数存入可变数组,对数组进行
正反排序并输出结果(采用5种以上的方法实现);
代码:
func searchPrimNum() - [In t]{
var cha ngeArray = [2,3]
//定义可变数组
var recordIsPrim = 0
//用于记录判断质数
.专业
.专业.专注.
word
word可编辑
.专业
.专业.专注.
.word
.word可编辑 .
for x in 4...10000 {
for y in 2..x {
if x%y==0{
recordlsPrim+=1 break
}
}
if recordIsPrim==0 {
cha ngeArray.appe nd(x)
}
recordlsPrim=0
}
retur n cha ngeArray
}
var primNum = searchPrimNum()
//升序排序primNum.sort()
//升序排序
print(数组升序排列为:)
prin t(primNum)
*************使其降序排列*****************
*************
使其降序排列
*****************
//第一种实现数组降序排列方法
func compare(m:l nt, n:l nt) - Bool { return mn
}
primNum.sort(by: compare)
print(第一种数组降序排列为:)
prin t(primNum)
/////////////////第二种
/////////////////
第二种 //////////////
primNum.sort(by: {
(m:l nt,n :l nt) - Bool in
return mn
})
print(第二种数组降序排列为:)
prin t(primNum)
////////////////// 第三种 //////////////
primNum.sort{
(m,n) -Bool in
return mn
}
print(第三种数组降序排列为:)
prin t(primNum)
////////////// 第四种 ///////////////////
primNum.sort{ (m,
您可能关注的文档
最近下载
- 2025年江苏省公务员省考《行测》联考-部分真题(A类).pdf VIP
- 校园消防安全台账范本.docx
- 2024版加油站安全生产管理台账样本.doc VIP
- 精品解析:江苏省南京市玄武外国语学校、科利华中学2022-2023学年八年级下学期期中语文试题(解析版).docx VIP
- PC工法桩专项施工方案 .doc
- foreign language classroom anxiety.pdf VIP
- JT_T 410-2022CN交通运输行政执法标识.pdf
- 标准图集-22TJ310装配式钢筋桁架楼承板系列产品-下册.pdf VIP
- 汽车基础知识在线试题答案2.pdf VIP
- 地质勘查坑探规范.pdf VIP
文档评论(0)