实验2 类的基本使用
实验2Scala编程初级实践

实验2Scala编程初级实践实验 2 Scala 编程初级实践⼀、实验⽬的1.掌握 Scala 语⾔的基本语法、数据结构和控制结构;2.掌握⾯向对象编程的基础知识,能够编写⾃定义类和特质;3.掌握函数式编程的基础知识,能够熟练定义匿名函数。
熟悉 Scala 的容器类库的基本层次结构,熟练使⽤常⽤的容器类进⾏数据;4.熟练掌握 Scala 的 REPL 运⾏模式和编译运⾏⽅法。
⼆、实验平台已经配置完成的 Scala 开发环境。
Scala 版本为 2.11.8.三、实验内容和要求1. 计算级数请⽤脚本的⽅式编程计算并输出下列级数的前 n 项之和 Sn,直到 Sn 刚好⼤于或等于 q 为⽌,其中 q 为⼤于 0 的整数,其值通过键盘输⼊。
例如,若 q 的值为 50.0 ,则输出应为: Sn=50.416695 。
请将源⽂件保存为 exercise2-1.scala,在REPL模式下测试运⾏,测试样例:q=1时,Sn=2;q=30时,Sn=30.891459; q=50 时,Sn=50.416695。
import io.StdIn._object lab2{def main(args:Array[String]){var Sn:Float = 0var n:Float = 1println("Input a number for q:")var q = readInt()while(Sn < q){Sn += (n+1)/nn += 1}println(s"Sn = $Sn")}}2. 模拟图形绘制对于⼀个图形绘制程序,⽤下⾯的层次对各种实体进⾏抽象。
定义⼀个 Drawable 的特质,其包括⼀个 draw ⽅法,默认实现为输出对象的字符串表⽰。
定义⼀个 Point 类表⽰点,其混⼊了 Drawable 特质,并包含⼀个 shift ⽅法,⽤于移动点。
所有图形实体的抽象类为Shape,其构造函数包括⼀个 Point 类型,表⽰图形的具体位置(具体意义对不同的具体图形不⼀样)。
实验二 交换机的命令行配置

实验二交换机命令行的基本使用和交换机配置文件管理【引入案例】小李是网络初学者,他尝试将接入公司财务部的一台交换机的名称改为财务部的拼音缩写“CWB”,以便识别。
他的具体的做法是:在成功登陆交换机后,界面显示了<H3C>的命令行提示符,小李这时立即输入了配置交换机名称的命令“sysname cwb”,结果出现了“Unrecognized command found at ‘^’ position”的错误提示。
李同学反复检查了这条命令,确认语法没有错误,到底问题出在哪里?【案例分析】使用H3C交换机的所有配置命令都有一个的前提条件,就是交换机的命令行视图,各种命令行视图可以实现不同的配置功能要求。
若要配置交换机的某个功能特性,必须先进入相应的命令行视图,才能使用该视图下的命令。
只顾着检查命令的语法是否错误而忽略了确认命令所使用的视图,是初学者常犯的错误。
【基本原理】一、命令行视图H3C交换机的命令行提供了二十多种视图,这些视图既相互区别又有联系,可以通过相应的命令在视图间进行切换。
本教材主要介绍下面九种常用的视图以及它们的切换方式:1.用户视图用户可以在用户视图下查看交换机的简单运行状态和统计信息。
当用户与交换机成功建立连接后,输入回车键,命令行显示的<sysname>提示符表明已经进入了用户视图,在用户视图使用quit命令可以断开与交换机的连接。
sysname指设备的机器名,默认情况下华三交换机的机器名为H3C。
2.系统视图系统视图主要用于配置系统参数。
在用户视图下输入“system-view”即可进入系统视图,提示符为[sysname]。
在系统视图下,可以键入不同的命令进入相应的视图,返回时输入quit命令即可切换到用户视图。
3.用户界面视图用户界面视图用于配置用户界面参数。
当用户使用Console口、AUX 口、Telnet或者SSH方式登录设备的时候,系统会分配的用来管理、监控设备和用户间的当前会话的界面称为用户界面。
实验二 荧光显微镜的基本使用方法

实验二荧光显微镜的基本使用方法荧光显微术是在细胞或组织水平上对生物大分子进行定位和动态观察的最常用的实验方法。
它广泛地应用于核酸、蛋白质、细胞器、细胞骨架、激素、离子等多种细胞结构或物质的定位和功能分析。
很多生命科学的研究工作都需要频繁地使用荧光显微镜。
比如,采用荧光探针的原位分子杂交用于确定某个基因在组织中的表达或在染色体上的定位(Polak et al. 1999; Andreeff and Wiley-Liss 1999),绿色荧光蛋白基因(gfp)用于了解某个基因产物在组织和细胞中的特异性分布(Chalfie et al. 1994; Haseloff and Amos 1995)等等。
然而,在我们接触的一些低年级研究生中,一些同学并没有很好地掌握荧光显微镜的基本原理和使用方法。
他们拍摄的荧光显微照片往往不能满足国际性高水平学术刊物的要求。
这种状况既不利于科研效率的提高,也限制了研究成果的发表。
因此,了解荧光显微术中的一些基本原理和注意事项、掌握荧光显微镜的基本使用方法是非常重要和有意义的。
本实验讲解荧光显微镜的基本结构和使用方法。
要求学生通过细胞核、细胞质DNA的荧光显微显示以及转绿色荧光蛋白基因拟南芥根、茎、叶细胞的观察掌握荧光显微术的基本原理和注意事项,熟练掌握荧光显微镜的使用方法。
实验目的:1. 了解荧光显微镜的基本结构;2. 掌握荧光显微术的基本原理和注意事项;3. 掌握核酸的荧光显示技术,直观地认识细胞质DNA的存在;4. 了解绿色荧光蛋白(GFP)在蛋白质定位等研究中的应用,直观地认识GFP的荧光显微效果。
实验内容:1.荧光显微镜的基本原理和结构荧光显微镜的放大成像原理与普通透射光显微镜完全相同。
不同的是荧光显微镜需要另外的激发光光源和光路。
因此,只要加上激发光光源和光路,再换上允许激发光通过的目镜(荧光显微镜的目镜在透镜玻璃的材质上与普通透射光显微镜不同),一台普通的透射光显微镜就可以被升级成一台荧光显微镜了。
实验2复习

实验2复习名词解释:1、部分报告法:部分报告法运用随机原理,使报告分段进行,有效地控制住报告时滞引起的误差。
2、全部报告法:呈现完刺激刺激之后让被试尽可能多地回忆识记的内容。
3内隐记忆:其根本特征是被试并非有意识地知道自己拥有这种记忆,但它可以在对特定任务的操作中自然地表现出来。
4、间接测量&直接测量间接测量:指导语不要求被试做有意识提取直接测量:指导语明确要求被试做有意识回忆,而是通过被试在一定特定任务上的表现来间接推断其行为背后的心理过程。
5、元记忆:反映人类记忆的独特特征,是人对自己记忆系统的认知,包括对记忆系统的内容、功能的认识和评价,以及对记忆过程的监控。
6、FOK:人们相信某信息能从记忆中提取出来,但现在又提取不出来的一种心理状态,发生在记忆提取失败之后。
7、系列再生:先让被试1再生出先前所记忆的材料,然后让被试2看被试1所再生的材料,并在一段时间后对此进行再生,而被试3又在被试2再生的基础上进行回忆,这样依次进行下去,就得出了一条”记忆链”。
8、重复再生:让同一个被试在不同的延时条件下对学习材料作多次回忆,将回忆的内容与原始材料进行比较,来测量被试记忆不断衰退和变化的情形;9、词语遮蔽效应:一般来说,在大多数情况下,对外部刺激事件的词语化有助于记忆,但当所需记忆的事件难以用语言来把握时,词语化可能反而会有损记忆,导致错误记忆发生。
10、前瞻记忆:是指对于预定事件或未来要执行的行为的记忆,即对于某种意向的记忆。
11、TAP效应:即迁移恰当加工,是指进行中任务和靶事件加工类型一致时,前瞻记忆的表现好于不一致时的现象。
12、一致性编码效应:识记时处于消极情绪状态的被试记住了更多的消极的材料,而处于愉快情绪状态的被试记住了更多令人愉快的内容。
13、共作效应:即如果有进行相同活动的其他人在场,当事人的作业效绩会有所提高。
14、观众效应他人对于相对受控的旁观者发生了促进效应。
15、重复启动:是指前后呈现的刺激是完全相同的,即后呈现的测验刺激完全相同于前面呈现的启动刺激。
3.lab2_ISE软件的使用

≥ log 2 n
(2)四位双向环形计数器
module counter ( input wire clk , input wire reset_n , input wire slow_cnt, always @(posedge clk) input wire direction, if (~reset_n) temp <= 4'b1110; output wire [ 3 : 0 ] count_out); else if (en) wire cout1,cout2,en; case ( {direction,temp}) wire[25:0] en_cnt; 5'b0_0111: temp<= 4'b1011; assign en= ~slow_cnt || cout2 5'b0_1011: temp<= 4'b1101; div_n #(128,7) div_128( 5'b0_1101: temp<= 4'b1110; .cout(cout1), 5'b0_1110: temp<= 4'b0111; 128分频器实例: .cin(1'b1), 5'b1_0111: temp<= 4'b1110; n=128,counter_bit=7 .clk(clk)); 5'b1_1011: temp<= 4'b0111; div_n #(390625,19) div_390625( 5'b1_1101: temp<= 4'b1011; .cout(cout2), 5'b1_1110: temp<= 4'b1101; 390625分频器实例: .cin(cout1), default: temp<= 4'b1110; n=390625, .clk(clk)); endcase counter_bit=19 reg[3:0] temp; assign count_out=temp; endmodule
实验二数据类型、输入输出函数的使用

(5)ex3_5.c
#include <stdio.h>
main()
{
int x,y;
float a,b;
char num1,num2;
scanf("x=%d,y=%d",&x,&y);
scanf("%f,%e",&a,&b);
scanf("%c%c",&num1,&num2);
printf("x=%d,y=%d,a=%f,b=%f,num1=%c,num2=%c\n",x,y,a,b,num1,num2);
2、格式输出函数printf( )中格式控制字符与附加格式说明符(修饰符)的
使用;
3、格式输入函数scanf( )中格式控制字符与附加格式说明符(修饰符)的
使用;
4、使用赋值语句和输入/输出函数进行顺序结构程序设计。
【实验思考】
1、请分别说明输入、输出格式字符串的特点与作用。
2、字符串常量与字符常量有什么区别。
putchar(n2);
putchar('\n');
}
2、编程:要求从键盘输入数据,使整型变量a=10,b=8,字符型c1=‘A’,c2=‘a’,实型变量x=3.1,y=64.54,
并按规定格式输出变量的值。源文件以ex3_7.c命名保存。
要求输出格式如下:
a=_10,b=_8
C1=_A,c2=__a
3、整型、浮点型、字符型变量如何定义,在内存中分别占据的存储单元是多少?
X=_3.1,y=64.54
3、编写一个程序,从键盘输入梯形的上底、下底和高的值(浮点数),计算并输出其面积,源程序以ex3_8.c命名,并保存在自己的文件夹内。
实验2:服务器控件的使用

onclick="Button1_Click" Text="Button" />
标准服务器控件
标签控件:Label 文本框控件:TextBox 按钮控件: Button(标准命令按钮) LinkButton(超级链接按钮) ImageButton(图像按钮) 选择控件:RadioButton(单选按钮) RadioButtonList(单选按钮组) CheckBox(复选按钮) CheckBoxList(复选按钮组) 列表控件:DropDownList (下拉列表) ListBox (列表框) BulletedList (项目列表) 图像控件:Image、ImageMap 容器控件:Panel
正则表达式验证控件 RegularExpressionValidator
自定义验证控件CustomValidator 验证组控件ValidationSummary
创建验证控件
验证控件的工作是监视另一个控件并验证其内容的有效 性,如文本框控件、单选按钮控件等。因此,首先要有一 个需要验证的对象,然后在其旁边拖入一个验证控件。验 证控件与一般的Web服务器控件的不同之处在于,一般情 况下,验证控件在页面运行时是不显示的,即这种控件对 于用户来说是不可见的。除非输入了未通过验证的信息, 在页面中才显示未通过验证的提示信息。当Web页面使用 验证控件进行验证时,可以通过Page对象的IsValid属性 判断验证是否通过,如果IsvVlid属性的返回值“True”, 表 示页面所有控件都已通过验证,否则表示至少有一个控件 没有通过验证。
实验二---类与对象的定义与使用

}
void paixuYuwen() //按语文成绩排序;
{
Student str[50],*p,q;
int i,j;
p=stu;
for(p=stu,i=0;i<n;i++)
{ str[i]=*p;
*p++;
}
for(i=0;i<n-1;i++,p++)
{
for(j=0;j<n-1-igt;str[j+1].yuwen)
{
q=str[j];
str[j]=str[j+1];
str[j+1]=q;
}
}
}
for(i=0;i<n;i++)
{
printf("学号:%d姓名:%s数学:%.2f语文:%.2f英语:%.2f总成绩:%.2f平均成绩:%.2f\n",str[i].num,str[i].name,str[i].shuxue,str[i].yuwen,str[i].yingyu,str[i].zongcj,str[i].avg);
}
}
void paixuCJ()
{
int flag;
printf("1->按数学成绩排序\n2->按语文成绩排序\n3->按英语成绩排序\n4->按总成绩排序\n5->按总分\n");
printf("请选择成绩由低到高的排序方式:");
scanf("%d",&flag);
switch(flag){
case 0:paixuShuxue();break;
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验2 类的基本使用
一、实验目的
1.掌握类的定义;
2.熟悉方法及属性的定义与使用;
3. 掌握对象中的对象用法。
二、实验要求
1.认真完成实验内容并得到正确的程序运行结果。
2.为你的程序加上注释,使得其清晰可读。
3.利用调试程序来修改你程序的逻辑错误
4.本次实验要求写实验报告
三、实验原理
1.类定义:客观世界中的事物往往需要从属性与行为两个方面进行描述,在JAVA中,分别用数据成员与函数成员来表现,并且将它们封装在一起,形成一种抽象数据类型——类。
类具有数据成员和成员函数两种成员,类成员分为公开的(public)和私有的(private)两类。
外界不能访问一个对象的私有部分,它们与对象间的信息传送只能通过公开成员函数等特定方法进行。
类接口定义的基本格式为
四、主要仪器及耗材
计算机及eclipse软件
五、实验内容与步骤
1. 设计一个商品类,实现类Commodity,要求:
①包括编号、名称、产地、单价属性;
②通过构造函数对各属性附值;
③定义一个取得折扣价的方法,输入折扣值返回折扣价。
④在CommodityTest的main( )里创建对象创建,输出对象属性及6.5价的价格。
2.编写一类似开心农场游戏中的植物类,要求:
①在edu.dali包里实现类Plant
②具有名称、颜色、种类、金钱数、经验值(exp)、生长周期(天)、果实;
③植物可以有多个果实,每个果实为Fruit类型的对象,具有编号、名称、重量、颜色、形状、卖出价格属性。
④通过一个方法取得果实卖出总价。
⑤在PlantTest类的main方法里创建Plant对象,并输出名称、颜色、种类、金钱数、经验值、生长周期属性,输出该Plant对象的果实数量及总价。
提示:植物果实可用对象集合实现
public class MyClass {
private String classNo;
private String className;
List<Student> studentList=new ArrayList();
}
Main(){
Student s1=new Student();
Student s2=new Student();
MyClass c1=new MyClass ();
c1.studentList.add(s1);
c1.studentList.add(s2);
int studnetNum;
studnetNum=c1. studentList.size(); }
六、实验注意事项
1. 注意访问修饰符的合理使用
七、思考题
1、Plant与Fruit之间是什么关系?。