当前位置:文档之家› 实验报告四

实验报告四

实验报告四
实验报告四

电子信息工程学系实验报告——适用于计算机课程

课程名称:操作系统Array实验项目名称:银行家算法实验时间:2014.4.4-4.20

班级:计算机122 姓名:李鹏辉学号:201210704214

实验目的:

1.理解死锁避免相关内容;

2.掌握银行家算法主要流程;

3.掌握安全性检查流程。

操作系统中的死锁避免部分的理论进行实验。要求实验者设计一个程序,该程序可对每一次资源申请采用银行家算法进行分配。

实验环境:

PC机、windows2000 操作系统、Turbo C 2.0 / VC++6.0

实验内容及过程:

设计一个有N个进程并行的进程调度程序。

进程调度算法:采用最高优先数优先的调度算法(即把处理机分配给优先数最高的进程)和先来先服务算法。具体描述如下:

每个进程有一个进程控制块( PCB)表示。进程控制块可以包含如下信息:进程名、优先数、到达时间、需要运行时间、已用CPU时间、进程状态等等。

分析:进程的优先数及需要的运行时间可以事先人为地指定(也可以由随机数产生)。进程的到达时间为进程输入的时间。

进程的运行时间以时间片为单位进行计算。

每个进程的状态可以是就绪 W(Wait)、运行R(Run)、或完成F(Finish)三种状态之一。

就绪进程获得 CPU后都只能运行一个时间片。用已占用CPU时间加1来表示。

如果运行一个时间片后,进程的已占用 CPU时间已达到所需要的运行时间,则撤消该进程,如果运行一个时间片后进程的已占用CPU时间还未达所需要的运行时间,也就是进程还需要继续运行,此时应将进程的优先数减1(即降低一级),然后按照优先数的大小把它插入就绪队列等待CPU。

每进行一次调度程序都打印一次运行进程、就绪队列、以及各个进程的 PCB,以便进行检查。

重复以上过程,直到所要进程都完成为止。

调度算法的参考流程图如下:

死锁避免定义:在系统运行过程中,对进程发出的每一个资源申请进行动态检查,并根据检查结果决定是否分配资源:若分配后系统可能发生死锁,则不予分配,否则予以分配。

由于在避免死锁的策略中,允许进程动态地申请资源。因而,系统在进行资源分配之前预先计算资源分配的安全性。若此次分配不会导致系统进入不安全状态,则将资源分配给进程;否则,进程等待。其中最具有代表性的避免死锁算法是银行家算法。

1 系统安全状态

1)安全状态

所谓系统是安全的,是指系统中的所有进程能够按照某一种次序分配资源,并且依次地运行完毕,这种进程序列{ P1 ,P2 …Pn}就是安全序列。如果存在这样一个安全序列,则系统是安全的。

并非所有的不安全状态都会转为死锁状态,但当系统进入不安全状态后,便有可能进入死锁状态;反之,只要系统处于安全状态,系统便可避免进入死锁状态。所以避免死锁的实

2)安全状态之例

假设系统有三个进程,共有12台磁带机。各进程的最大需求和T0时刻已分配情况如下表:

答:T0时刻是安全的,因为存在安全序列:P2 →P1→ P3

不安全序列:P1→…

P3→…

P2→P3→P1

3)由安全状态向不安全状态的转换

如果不按照安全序列分配资源,则系统可能会由安全状态进入不安全状态。例如,在T0时刻以后,P3又请求1台磁带机,若此时系统把剩余3台中的1台分配给P3,则系统便进入不安全状态。因为,此时也无法再找到一个安全序列,例如,把其余的2台分配给P2,这样,在P2完成后只能释放出4台,既不能满足P1尚需5台的要求,也不能满足P3尚需6台的要求,致使它们都无法推进到完成,彼此都在等待对方释放资源,即陷入僵局,结果导致死锁。

2 利用银行家算法避免死锁

1)银行家算法中的数据结构

①可利用资源向量Available。

这是一个含有m个元素的数组,其中的每一个元素代表一类可利用的资源数目,其初始值是系统中所配置的该类全部可用资源的数目,其数值随该类资源的分配和回收而动态地改变。如果Available[j]=K,则表示系统中现有Rj类资源K个。

②最大需求矩阵Max。

最大需求矩阵Max。这是一个n×m的矩阵,它定义了系统中n个进程中的每一个进程对m类资源的最大需求。如果Max[i,j]=K,则表示进程i需要Rj类资源的最大数目为K。

③分配矩阵Allocation

这也是一个n×m的矩阵,它定义了系统中每一类资源当前已分配给每一进程的资源数。如果Allocation[i,j]=K,则表示进程i当前已分得R j类资源的数目为K。

④需求矩阵Need

这也是一个n×m的矩阵,用以表示每一个进程尚需的各类资源数。如果Need[i,j]=K,则表示进程i还需要Rj类资源K个,方能完成其任务。

Need[i,j]=Max[i,j]-Allocation[i,j]

2)银行家算法

设Requesti是进程Pi的请求向量,如果Requesti[j]=K,表示进程Pi需要K个Rj 类型的资源。当Pi发出资源请求后,系统按下述步骤进行检查:

(1) 如果Requesti[j]≤Need[i,j],便转向步骤2;否则认为出错,因为它所需要的资源数已超过它所宣布的最大值。

(2) 如果Requesti[j]≤Available[j],便转向步骤(3);否则,表示尚无足够资源,Pi须等待。

(3) 系统试探着把资源分配给进程Pi,并修改下面数据结构中的数值:

Available[j]∶=Available[j]-Requesti[j];

Allocation[i,j]∶=Allocation[i,j]+Requesti[j];

Need[i,j]∶=Need[i,j]-Requesti[j];

(4) 系统执行安全性算法,检查此次资源分配后,系统是否处于安全状态。若安全,才正式将资源分配给进程Pi,以完成本次分配;否则,将本次的试探分配作废,恢复原来的资源分配状态,让进程Pi等待。

行家算法的参考流程图如下:

3)安全性算法

(1) 设置两个向量:

① 工作向量Work: 它表示系统可提供给进程继续运行所需的各类资源数目,它含有m 个元素,在执行安全算法开始时,Work ∶=Available ;

② Finish: 它表示系统是否有足够的资源分配给进程,使之运行完成。开始时先做Finish [i ]∶=false; 当有足够资源分配给进程时, 再令Finish [i ]∶=true 。

(2) 从进程集合中找到一个能满足下述条件的进程:

出错返回:(进程阻塞) 结束

是 申请失败。

以上分配作废,恢复原来的分配状态: Available[j] = Available[j] + Request[i][j] Allocation[i][j]= Allocation[i][j]-Request[i][j] Need[i][j] = Need[i][j]+Request[i][j]

N

Y

N

Y

Request[i][j]> Need[i][j]

出错返回:return(erro

Request[i][j]> Available[j]

出错返回:(进程阻塞)

Available[j] = Available[j] – Request[i][j] Allocation[i][j]= Allocation[i][j] + Request[i][j] Need[i][j] = Need[i][j] – Request[i][j]

假定分配:

输入初始参数(资

源分配及请求情

开始

假定分配之后,系统安

全吗?

申请成功。输出各种

数据的变化

图 银行家算法流程图

② Need[i,j]≤Work[j];若找到,执行步骤(3),否则,执行步骤(4)。 (3) 当进程Pi 获得资源后,可顺利执行,直至完成,并释放出分配给它的资源,故应执行: Work[j]∶=Work[i]+Allocation[i,j];

Finish[i]∶=true;

go to step (2);

(4) 如果所有进程的Finish[i]=true都满足,则表示系统处于安全状态;否则,系统处于不安全状态。

安全性算法的参考流程图如下:

实验结果及分析:

Y

所有finish都为true?

输出安全序列

N

Y

N 存在Finish[i] =false

&&Need[i][j]< Available[j]

初始化Work和Finish

Finish[i]=true,Work[j]=Work[j]+ Allocation[j]

所有进程都找完了?

Y

开始

图安全性算法流程图

创建基本信息

进程1申请资源成功

教科版六年级下册科学实验报告单.doc

六年级下册科学实验报告单 实验课题:放大镜下的发现 学校:实验时间:小组成员: 实验目的:知道放大镜的使用方法及其作用。 实验器材:放大镜、报纸、书本、树叶、电脑 放大镜2只【3X、5X 各一】/每组 实验原理:放大镜能把物体的像放大。 实验步骤: 1、用放大镜观察树叶,把看到的记录下来。把放大镜放在字的上方,逐渐向外移动,发现透过镜片后,字体变大了。 2、用放大镜观察报纸、书本,把看到的记录下来。 3、用放大镜观察电脑、电视机的屏幕。 实验现象: 在放大镜下观察到的物体比用肉眼看到的物体更大。 实验结果:放大镜可以把物体的像放大。

实验课题:放大镜的特点 学校:实验时间:小组成员: 实验目的:知道放大镜的使用方法及其作用。 实验器材:放大镜1只、玻璃塑料瓶1个、圆柱玻璃杯1只、烧杯1只、烧瓶1只、保鲜膜3张、透明塑料绳2米 猜测:放大镜能放大是因为它不同于普通玻璃,形状与平板玻璃有较大差异。 实验步骤: 1、比较放大镜与平板玻璃:放大镜的中间鼓,周围较薄,而平板玻璃厚度均匀,没有放大功能。 2、在圆柱玻璃杯、烧杯、烧瓶中灌上清水,透过瓶体观察物体,发现比直接观察看到的图像要大 3、再次比较圆柱烧杯和烧瓶,我们发现,圆烧瓶比烧杯放大的倍数要大。 实验现象: 放大镜的镜片是透明、中央厚、边缘薄,具有放大图像的功能。 实验结果:放大镜的镜片特点是透明、中央厚、边缘薄,凡是和放大镜镜片具有同样特点的器物,都具有放大功能。

实验课题:放大镜的放大倍数 实验时间:小组成员: 实验目的:知道放大镜把物体放大了多少倍。 实验器材:不同放大倍数的放大镜、布、纸、邮票 实验原理:通过观察、记录和测量,可以算出放大镜的放大倍数。 实验步骤: 1、把放大镜放在有格的纸上或放在书上,看看它能把物体放大多少倍。 2、用放大镜观察布、邮票的某部分,并把观察到的内容记录下来,看看它能把物体放大多少倍。 实验现象:同一放大镜的最大放大倍数是一定的。 实验结果: 通过观察、测量和计算,算出了不同放大镜的放大倍数。

实验四-排序-实验报告

数据结构实验报告 实验名称:实验四排序 学生姓名: 班级: 班内序号: 学号: 日期:2012年12月21日 1、实验要求 题目2 使用链表实现下面各种排序算法,并进行比较。 排序算法: 1、插入排序 2、冒泡排序 3、快速排序 4、简单选择排序 5、其他 要求: 1、测试数据分成三类:正序、逆序、随机数据。 2、对于这三类数据,比较上述排序算法中关键字的比较次数和移动次数(其中关键字交换计为3次移动)。 3、对于这三类数据,比较上述排序算法中不同算法的执行时间,精确到微秒(选作)。

4、对2和3的结果进行分析,验证上述各种算法的时间复杂度。编写测试main()函数测试线性表的正确性。 2、程序分析 存储结构 说明:本程序排序序列的存储由链表来完成。 其存储结构如下图所示。 (1)单链表存储结构: (2)结点结构 struct Node { int data;

Node * next; }; 示意图: 关键算法分析 一:关键算法 (一)直接插入排序 void LinkSort::InsertSort() 直接插入排序是插入排序中最简单的排序方法,其基本思想是:依次将待排序序列中的每一个记录插入到一个已排好的序列中,直到全部记录都排好序。 (1)算法自然语言 1.将整个待排序的记录序列划分成有序区和无序区,初始时有序区为待排序记录序列中的第一个记录,无序区包括所有剩余待排序的记录; 2.将无须去的第一个记录插入到有序区的合适位置中,从而使无序区减少一个记录,有序区增加一个记录; 3.重复执行2,直到无序区中没有记录为止。 (2)源代码 void 2. 3. 4.重复执行2和3 直接插入排序过程

六年级科学下册实验报告单新版

六年级下科学实验报告单 班级六年级学 生 姓 名 实验形式分组观察 实验名称放大镜下的晶体实验时间实验目的用放大镜观察晶体。 仪器器材放大镜、食盐、白糖、碱面、味精 实验过程1、让放大镜靠近观察的物体,观察对象不动,人眼和观察对象之间的距离不变,然后移动手持放大镜在物体和人眼之间来回移动,直至图像大而清楚。 2、把观察到的图像用铅笔在白纸上描绘下来。 实验结果 教师批注实验成绩

六年级下科学实验报告单 班级六年级学 生 姓 名 实验形式分组观察 实验名称放大镜的观察及怎样的放大镜倍数大实验时间实验目的知道放大镜把物体放大了多少倍。 仪器器材 放大镜科学书或报纸上的照片、计算机或电视机屏幕。柱形、球形的透明器皿、塑料薄膜、铁丝、普通玻璃片、平面镜片、水。 实验过程 1.正确用放大镜观察物体。 2.比较用肉眼观察和用放大镜观察的不同。 实验结果 教师批注实验成绩

六年级下科学实验报告单 班级六年级学 生 姓 名 实验形式分组实验 实验名称观察洋葱表皮细胞实验时间实验目的通过观察洋葱表皮细胞,说明植物体是由细胞组成的。 仪器器材 学生显微镜、洋葱、载玻片、盖玻片、碘酒、清水、培养皿、美工刀、镊子、烧杯 实验过程 1、按要求取镜、安放、对光。 2、制做临时装片。 3、安装临时装片:将临时切片放到显微镜上,调整显微镜与临时切片位 置,直到可以观察到清晰的图像为止。4、调好后各小组轮流观察。并画出洋葱表皮细胞图。 实验结果 教师批注实验成绩

班级六年级学生人数39人实验形式分组实验实验名称生物细胞的观察实验时间3月23日实验目的 1. 学会临时装片的制作。 2.认识并绘制植物细胞结构图。 仪器器材学生显微镜、植物叶切片 实验过程1、制作植物细胞的临时装片 2、观察 3、收镜 实验结果学生通过观察了解了生物的细胞组成和结构。 教师批注实验有序实验成绩优

排序操作实验报告

数据结构与算法设计 实验报告 (2016 — 2017 学年第1 学期) 实验名称: 年级: 专业: 班级: 学号: 姓名: 指导教师: 成都信息工程大学通信工程学院

一、实验目的 验证各种简单的排序算法。在调试中体会排序过程。 二、实验要求 (1)从键盘读入一组无序数据,按输入顺序先创建一个线性表。 (2)用带菜单的主函数任意选择一种排序算法将该表进行递增排序,并显示出每一趟排序过程。 三、实验步骤 1、创建工程(附带截图说明) 2、根据算法编写程序(参见第六部分源代码) 3、编译 4、调试 四、实验结果图 图1-直接输入排序

图2-冒泡排序 图3-直接选择排序 五、心得体会 与哈希表的操作实验相比,本次实验遇到的问题较大。由于此次实验中设计了三种排序方法导致我在设计算法时混淆了一些概念,设计思路特别混乱。虽然在理清思路后成功解决了直接输入和直接选择两种算法,但冒泡

排序的算法仍未设计成功。虽然在老师和同学的帮助下完成了冒泡排序的算法,但还需要多练习这方面的习题,平时也应多思考这方面的问题。而且,在直接输入和直接选择的算法设计上也有较为复杂的地方,对照书本做了精简纠正。 本次实验让我发现自己在算法设计上存在一些思虑不周的地方,思考问题过于片面,逻辑思维能力太过单薄,还需要继续练习。 六、源代码 要求:粘贴个人代码,以便检查。 #include #define MAXSIZE 100 typedef int KeyType; typedef int DataType; typedef struct{ KeyType key; DataType data; }SortItem,SqList[MAXSIZE]; /*******直接插入顺序表*******/ void InsertSort(SqList L,int n) { int i,j,x; SortItem p; for(i=1;i

北京理工大学数据结构实验报告4

《数据结构与算法统计》 实验报告 ——实验四 学院: 班级: 学号: 姓名:

一、实验目的 1、熟悉VC 环境,学会使用C 语言利用顺序表解决实际问题。 2、通过上机、编程调试,加强对线性表的理解和运用的能力。 3、锻炼动手编程,独立思考的能力。 二、实验内容 从键盘输入10个数,编程实现分别用插入排序、交换排序、选择排序算法进行排序,输出排序后的序列。 三、程序设计 1、概要设计 为了实现排序的功能,需要将输入的数字放入线性表中,进行进一步的排序操作。 (1)抽象数据类型: ADT SqList{ 数据对象:D={|,1,2,,,0}i i a a Elem Set i n n ∈=≥ 数据关系:R1=11{,|,,1,2,,}i i i i a a a a D i n --<>∈= 基本操作: InPut(SqList &L) 操作结果:构造一个线性表L 。 OutPut(SqList L) 初始条件:线性表L 已存在。 操作结果:按顺序在屏幕上输出L 的数据元素。 InsertSort(SqList &L) 初始条件:线性表L 已存在。 操作结果:对L 的数据元素进行插入排序。 QuickSort(SqList &L) 初始条件:线性表L 已存在。 操作结果:对L 的数据元素进行快速排序。 SelectSort(SqList &L) 初始条件:线性表L 已存在。 操作结果:对L 的数据元素进行选择排序。 }ADT SqList ⑵主程序流程 由主程序首先调用InPut(L)函数创建顺序表,调用InsertSort(L)函数进行插入排序,调用OutPut(L)函数显示排序结果。 再由主程序首先调用InPut(L)函数创建顺序表,调用QuickSort(L)函数进行交换排序,调用OutPut(L)函数显示排序结果。 再由主程序首先调用InPut(L)函数创建顺序表,调用SelectSort(L)函数进行选择排序,调用OutPut(L)函数显示排序结果。 ⑶模块调用关系

三年级下册科学实验报告单

河北版三年级下册科学实验报告单 实验操作要求及评分标准 1. 清点器材(15分) (1)有清点实验器材的动作。(5分)(2)能准确说出器材名称。(10分) 2. 进行实验(50分) (1)正确使用仪器,合乎规范,注意安全。(10分) (2)按正确的实验步骤,通过观察、实验、制作等活动,进行操作。(30分)(3)实验过程中,集中精力,仔细观察,及时做好记录。(10分) 3. 填写实验报告(20分) (1)简要写出实验步骤。(10分) (2)记录实验现象,得出实验结论。(10分) 4. 整理仪器、收拾桌面(15分)(1)仪器归位、摆放整齐。(10分)(2)桌面整洁。(5分) (一)实验名称: 观察物体发生时的现象 实验器材:鼓和鼓槌、绿豆、钢锯条。实验步骤: 1.把绿豆放在鼓皮上,用鼓槌敲击鼓,观察绿豆。 2.把锯条放在课桌上,一半落空,一只手按住桌上一端,另一只手拨动锯条。 实验现象:1. 绿豆跳动 2. 锯条颤抖 实验结论:物体发声时振动。 (二)实验名称: 水能传声

实验器材:水槽、砂纸。 实验步骤: 1. 水槽中加满水。 2. 一个同学在水中磨砂纸,另一个同学将耳朵贴在水槽边听。 实验现象:听到了磨砂纸声音。实验结论:水能传声音。 (三)实验名称: 光的传播实验实验目的: 研究光是怎样传播的。 实验器材:手电筒一个、完全相同的中间带孔的硬纸片三张、纸屏一个。 实验步骤: 1. 将三张中间带孔的硬纸片、纸屏排在一条直线上(孔在一条直线上),用手电筒从一端向纸屏上照射,观察现象。 2. 将中间的硬纸片错开,用手电筒从一端向纸屏上照射,观察现象。实验现象:孔在一条直线上时,观察到纸屏上有光;将中间的硬纸片错开,孔不在一条直线上时,观察到纸屏上没有光。 实验结论:光是沿直线传播的。 (四)实验名称:光的反射实验 实验目的:光是否可以被反射。 实验器材:手电筒一个、中间带缝的硬纸片1张、平面镜一个、纸和尺子。 实验步骤:将中间带缝的硬纸片、平面镜放在纸上,排在一条直线上,用手电筒从硬纸片缝隙一端向平面镜上照射,改变平面镜摆放的角度观察现象,画出光的传播路线。

四年级下册科学实验报告单

温度计的秘密 实验名称:液体热胀冷缩实验 实验器材:保温杯(内装热水)、小烧杯(一个装有冷水)、水胀缩实验小瓶(由带塞针剂小药瓶、红色水、细饮料管构成,在管外套一个小胶圈,用来标记管内液面高度)、用与上面相同的方法组装的煤油胀缩实验小瓶、酒精胀缩实验小瓶。 实验结论:根据水、煤油、酒精有热胀冷缩性质,归纳出液体都有热胀冷缩的性质。 注意事项:小药瓶要贴上标签,不要混用。 实验记录单

实验名称:气体热胀冷缩实验 实验器材:锥形烧瓶、大烧杯、小气球、细线、盛开水的保温瓶 试验方法:用细线把小气球扎于锥形瓶口。把锥形瓶放入烧杯后,灌进开水加热,由于瓶内空气受热膨胀,原来垂下的气球就会竖立胀大。把锥形瓶取出,随着瓶内空气冷却收缩,气球又逐渐变小。 实验结论:气体具有热胀冷缩的性质 注意事项:1.锥形瓶与气球的连接处不能漏气。为使现象明显,可预先向瓶内吹一些气。 2.锥形瓶可用开口较小、容量较大的其他薄壁玻璃瓶代替。如果能找到壁很薄的气球,光靠手掌提供的热量(双手握瓶),也能使气球竖立起来。 实验记录单

实验名称:固体热胀冷缩实验 实验材料:铁垫圈一个,木板、小钉两个,酒精灯、镊子、冷水、烧杯 实验方法:1.在木板上钉两个钉,便两钉间的距离正好通过铁垫圈 2.加热前,观察铁垫圈确能从铁钉间通过 3.将铁垫圈在酒精灯火焰上加热 4.观察加热后铁垫圈能不能从两钉间通过 5.将铁垫圈在冷水里浸一下,观察能不能从两钉间通过。 实验结论:固体具有热胀冷缩的性质 注意事项:1.垫圈最好是铜的,直径要大一些。 2.两钉间距要恰好通过铁垫圈,缝隙越小越好。 实验记录单

(完整word版)查找、排序的应用 实验报告

实验七查找、排序的应用 一、实验目的 1、本实验可以使学生更进一步巩固各种查找和排序的基本知识。 2、学会比较各种排序与查找算法的优劣。 3、学会针对所给问题选用最适合的算法。 4、掌握利用常用的排序与选择算法的思想来解决一般问题的方法和技巧。 二、实验内容 [问题描述] 对学生的基本信息进行管理。 [基本要求] 设计一个学生信息管理系统,学生对象至少要包含:学号、姓名、性别、成绩1、成绩2、总成绩等信息。要求实现以下功能:1.总成绩要求自动计算; 2.查询:分别给定学生学号、姓名、性别,能够查找到学生的基本信息(要求至少用两种查找算法实现); 3.排序:分别按学生的学号、成绩1、成绩2、总成绩进行排序(要求至少用两种排序算法实现)。 [测试数据] 由学生依据软件工程的测试技术自己确定。 三、实验前的准备工作 1、掌握哈希表的定义,哈希函数的构造方法。 2、掌握一些常用的查找方法。 1、掌握几种常用的排序方法。 2、掌握直接排序方法。

四、实验报告要求 1、实验报告要按照实验报告格式规范书写。 2、实验上要写出多批测试数据的运行结果。 3、结合运行结果,对程序进行分析。 五、算法设计 a、折半查找 设表长为n,low、high和mid分别指向待查元素所在区间的下界、上界和中点,key为给定值。初始时,令low=1,high=n,mid=(low+high)/2,让key与mid指向的记录比较, 若key==r[mid].key,查找成功 若keyr[mid].key,则low=mid+1 重复上述操作,直至low>high时,查找失败 b、顺序查找 从表的一端开始逐个进行记录的关键字和给定值的比较。在这里从表尾开始并把下标为0的作为哨兵。 void chaxun(SqList &ST) //查询信息 { cout<<"\n************************"<=1;j--) if(ST.r[j].xuehao

六年级下册科学实验报告单.doc

六年级下册科学实验报告单 班级:六( 2)执教教师日期:2月 19日 实验名称用不同倍数的放大镜观察物体 实验分析对比用放大镜和肉眼观察有什么不同 实验目标实验器材注意事项 实 验 过 程正确使用放大镜观察物体 放大镜 .科学书或报纸上的照片 .柱形 .球形透明器皿 .铁丝 .水 不要摔坏放大镜 教师活动学生活动 老师分发材料.讲清放大镜的构造. 作学生在老师的指导下. 正用及用途 .确使用放大镜观察物体. 边巡视边指导比较用肉眼观察和用放 大镜观察的不同 . 用不同信数的放大镜观 察物体 . 实验结论放大镜不仅使物体的图像放大了.还能观察到很多细节 . 回顾与反思通过实验 .学生知道了放大镜的特点及作用.效果较好 . 城关四小科学实验报告 班级:六( 2)执教教师日期:2月 26日 实验名称用不同信数的放大镜观察物体

1/21

实验分析实验目标实验器材注意事项 实 验 过 程对比用放大镜和肉眼观察有什么不同 正确使用放大镜观察物体 放大镜 .科学书或报纸上的照片 .柱形 .球形透明器皿 .铁丝 .水 不要摔坏放大镜 教师活动学生活动 老师分发材料.讲清放大镜的构造. 作学生在老师的指导下. 正用及用途 .确使用放大镜观察物体. 边巡视边指导比较用肉眼观察和用放 大镜观察的不同 . 用不同信数的放大镜观 察物体 . 实验结论放大镜不仅使物体的图像放大了.还能观察到很多细节 . 回顾与反思通过实验 .学生知道了放大镜的特点及作用.效果较好 . 城关四小科学实验报告 班级:六( 2)执教教师日期:3月5日 实验名称用显微镜观察洋葱表皮细胞 实验分析了解洋葱表皮细胞的制作方法 实验目标观察细胞的结构 .培养学生探究生物结构的兴趣 实验器材洋葱、小刀、镊子、显微镜、载玻片、磺酒、吸水纸、滴管、培养皿 注意事项不要伤手

算法排序问题实验报告

《排序问题求解》实验报告 一、算法的基本思想 1、直接插入排序算法思想 直接插入排序的基本思想是将一个记录插入到已排好序的序列中,从而得到一个新的,记录数增1 的有序序列。 直接插入排序算法的伪代码称为InsertionSort,它的参数是一个数组A[1..n],包含了n 个待排序的数。用伪代码表示直接插入排序算法如下: InsertionSort (A) for i←2 to n do key←A[i] //key 表示待插入数 //Insert A[i] into the sorted sequence A[1..i-1] j←i-1 while j>0 and A[j]>key do A[j+1]←A[j] j←j-1 A[j+1]←key 2、快速排序算法思想 快速排序算法的基本思想是,通过一趟排序将待排序序列分割成独立的两部分,其中一部分记录的关键字均比另一部分记录的关键字小,则可对这两部分记录继续进行排序,以达到整个序列有序。 假设待排序序列为数组A[1..n],首先选取第一个数A[0],作为枢轴(pivot),然后按照下述原则重新排列其余数:将所有比A[0]大的数都排在它的位置之前,将所有比A[0] 小的数都排在它的位置之后,由此以A[0]最后所在的位置i 作为分界线,将数组A[1..n]分成两个子数组A[1..i-1]和A[i+1..n]。这个过程称作一趟快速排序。通过递归调用快速排序,对子数组A[1..i-1]和A[i+1..n]排序。 一趟快速排序算法的伪代码称为Partition,它的参数是一个数组A[1..n]和两个指针low、high,设枢轴为pivotkey,则首先从high 所指位置起向前搜索,找到第一个小于pivotkey 的数,并将其移到低端,然后从low 所指位置起向后搜索,找到第一个大于pivotkey 的数,并将其移到高端,重复这两步直至low=high。最后,将枢轴移到正确的位置上。用伪代码表示一趟快速排序算法如下: Partition ( A, low, high) A[0]←A[low] //用数组的第一个记录做枢轴记录 privotkey←A[low] //枢轴记录关键字 while low=privotkey do high←high-1 A[low]←A[high] //将比枢轴记录小的记录移到低端 while low

六年级科学实验报告单下册

放大镜下的新发现 日期: 年月日 年级:六年级 实验者: 实验名称: 放大镜下的新发现 实验器材、药品: 放大镜、水、小字体的书、昆虫各种小晶体(盐、糖等) 实验方法与步骤: 1、认识放镜的构造, 了解放大镜的应用。 2、用放大镜瞧书、报纸等(自己的发现) 3、了解其它有方大功能的物体, 水滴放大镜。 4、用放大镜观察昆虫, 了解放大镜下的昆虫世界。 5、用方、放大镜观察晶体。(盐、白糖) 实验结论: 在放大镜下瞧到的物体比实际的大得多。

奇特的身体构造 实验名称:奇特的身体构造 日期: 年月日 年级:六年级 实验者: 实验器材: 放大镜2 只、蝇子蟋蟀蝴蝶等动物的标本1 套 步骤: 1、观察昆虫的触角: 发现触角不就是一根直的,而就是一节一节的; 2、苍蝇的眼: 发现不就是一个,网格状的分布着几千个小眼; 3、蝴蝶的鳞片: 彩色的鳞片其实就是扁平的细毛; 4、蟋蟀的外壳: 光滑的外壳上,还有许多“小刺”; 5、苍蝇的脚: 脚的底端有“吸盘”, 所以可以在天花板上倒立 结论: 我认为观察的小昆虫与肉眼大不相同, 借助放大镜, 可以观察到小动物的细微之处

美丽的晶体 实验名称: 美丽的晶体 日期: 年月日 年级:六年级 实验者: 实验器材: 药品: 食盐、白糖、碱面、味精、放大镜、实验方法与步骤 1、用肉眼观察食盐、白糖、碱面、味精。 2、再用放大镜观察食盐、白糖、碱面、味精。实验结论: 晶体的形状多种多样, 但它们都很有规则。

制作晶体 实验名称:制作晶体 日期: 年月日 年级:六年级 实验者: 实验器材: 放大镜2 只、食盐20 克、白糖20 克、碱面20 克、味精20 克、滴管 4 支、玻璃片 4 片、100ml 烧杯 4 只我的猜测: 小颗粒的晶体形状与大颗粒的形状应该就是相同的 步骤: 1、将四只烧杯中分别放入50ml 的清水, 2、分别加入食盐、白糖、味精、碱面, 搅拌, 使其溶化 3、分别用滴管汲取它们的饱与溶液, 滴在玻璃片上,让水分自然蒸发 4、用放大镜观察玻璃片上晶体的形状观察到的现象: 这四种晶体的几何形状就是不同的 结论: 我认为不同物质的晶体颗粒的形状就是不同的, 同种物质的大小颗粒,晶体的形状就是相同的

最新三年级科学下册实验报告单

实验一、温度和温度计 活动1:感受1号杯和2号杯里水的冷热 1号杯水() 2号杯水() 活动2:观察温度计 .观察常用液体温度计的主 要构造。 你观察温度计上有摄氏度 (℃)的标记吗? 你观察温度计上每一小格表 示多少? 最高()最低() 你观察温度计的最高温度和 最低温度是多少? 实验现象温度计里面的液柱热了就会上升,冷了就会下降。 活动3:下面的温度你会读和写吗? 28摄氏度写作: 20摄氏度写作: 零下5摄氏度写作: -21℃读作: 31℃读作: 实验要求:用温度计测量水的温度。 实验用品:400ml烧杯一个一支温度计适量冷水和一暖壶热水吸水纸废物瓶。 步骤操作要求评分标准满分得分1 清点仪器用品按材料清单清点材料用品是否齐全(5分)。 5

2 观察温度计的 零刻线、分度值 和量程。 A、观察温度计的零刻线。(10分) B、观察温度计的分度值和量程 。(10分) 20 3 用手感知水温。将手指伸入烧杯中(冷水)或将手放在烧杯 外壁(热水),手的感觉 (10分),估测水的温度(10分)。 20 4 将温度计测量 水的温度。 A、手拿温度计上端,将其竖直放入水中。(10 分) B、温度计的玻璃泡要完全浸没在水中,玻璃 泡不要碰烧杯的侧壁和底部。(10分) C、等示数稳定时再读数。读数时,要让玻璃 泡继续停留在水中。(10分) D、视线要和温度计的示数保持相平。连续三 次测水的温度分别为、、 ,平均水温为。(15分) 45 5 整理仪器,擦拭 桌面。 A、将温度计擦干放回原处。(5分) B、擦拭桌面。(5分) 10 实验三、水结冰了 一、实验名称:水结冰了 二、实验目的:观察水在不同温度下温度计的读数 三、实验步骤: 1、在试管里加入一半的纯净水,用温度计测量并记录试管里水的温度 2、拿一只保温杯(或在普通塑料杯外包裹一块干毛巾)在杯内装满碎冰, 把试管插入碎冰中,用温度计观测试管里水温的变化 3、在碎冰里加入较多的食盐,保持几分钟持续观测试管里的水温 4、观测试管里的水开始结冰时的温度 四、实验器材:试管、保温杯、温度计、碎冰块、食盐、纯净水。 水结冰了的实验记录表

教科版-四年级下册-科学实验报告单.doc

教科版小学科学四年级下册实验 一、实验名称:让小灯泡发光 实验目的:利用电来点亮小灯泡 实验器材:导线1根、电池1节、小电珠1个。 实验步骤:选择连接方式使小灯泡发光。 1、导线连接小灯泡的螺纹与电池底部的锌壳,电池铜帽与小灯泡的锡粒接触,观察现象。 2、导线连接小灯泡的锡粒与电池底部的锌壳,电池铜帽与小灯泡螺纹接触,观察现象。 3、导线连接电池铜帽与小灯泡螺纹,小灯泡的锡粒与电池底部的锌壳接触,观察现象。 4、整理器材。 实验结论:小灯泡亮了。

二、实验名称:简单电路 实验目的:连接带灯座的电路,让小灯泡亮起来 实验材料:小灯泡、小灯座、电池、电池盒各1个、导线2根。 实验步骤:组装电路 1、在电池盒的两端各连接好一根导线,把电池正确安装在电池盒里。 2、用连接电池的两根导线的另一端接触小灯泡,确定能使小灯泡发光。 3、将小灯泡安装在灯座上,再连接上导线,小灯泡亮了。 4、拆分器材。 5、整理器材。 实验结论:一段导线和一节电池能点亮一个小灯泡。

三、实验名称:电路检测器 实验目的:制作一个电路检测器,并且排除电路中的故障 实验器材:一个由2个灯泡、灯座、1节电池、电池盒连接组成的出故障的电路,一个“电路检测器”。操作步骤: 1、组装一个“电路检测器”。用电池、小电珠、导线制作一个电路检测器; 2、先预测再用电路检测器检测电路中所发生的故障, 3、说出故障原因,并且采用替换法把电路重新接亮。 实验结论:电路检测器能检测出电路故障。

四、实验名称:检测导体和绝缘体 实验目的:检测哪些物体是导体,哪些物体是绝缘体 实验材料:木片、塑料片、回形针、钥匙、纸板、橡皮、布、丝绸、玻璃、铅笔、铜丝、铁钉、铝片、陶瓷……,1个电路检测器。 实验步骤: 1、从以上物品中选择6种检测。 2、检查电路检测器。 3、检测每种物品,观察现象:使小灯泡发光,说明被鉴别的材料容易导电;小灯泡不发光,说明被鉴别的材料不容易导电(注意要重复检测)。 4、能说出导体、绝缘体的概念,并将被检测物品正确的分为导体和绝缘体两组。 5、整理器材。 实验结论: 在我们选取的材料中,铜片、钥匙…是导体;纸条、木片…是绝缘体。

微机原理实验报告冒泡排序

一、实验目的 (1)学习汇编语言循环结构语句的特点,重点掌握冒泡排序的方法。 (2)理解并掌握各种指令的功能,编写完整的汇编源程序。 (3)进一步熟悉DEBUG的调试命令,运用DEBUG进行调试汇编语言程序。 二、实验内容及要求 (1)实验内容:从键盘输入五个有符号数,用冒泡排序法将其按从小到大的顺序排序。 (2)实验要求: ①编制程序,对这组数进行排序并输出原数据及排序后的数据; ②利用DEBUG调试工具,用D0命令,查瞧排序前后内存数据的变化; ③去掉最大值与最小值,求出其余值的平均值,输出最大值、最小值与平均值; ④用压栈PUSH与出栈POP指令,将平均值按位逐个输出; ⑤将平均值转化为二进制串,并将这组二进制串输出; ⑥所有数据输出前要用字符串的输出指令进行输出提示,所有数据结果能清晰显示。 三、程序流程图Array (1)主程序:MAIN

(2)

就是 NAME BUBBLE_SORT DATA SEGMENT ARRAY DW 5 DUP(?) ;输入数据的存储单元 COUNT DW 5 TWO DW 2 FLAG1 DW 0 ;判断符号标志 FLAG2 DB 0 ;判断首位就是否为零的标志FAULT DW -1 ;判断出错标志 CR DB 0DH,0AH,'$' STR1 DB 'Please input five numbers seperated with space and finished with Enter:','$' STR2 DB 'The original numbers:','$' STR3 DB 'The sorted numbers:','$' STR4 DB 'The Min:','$' STR5 DB 'The Max:','$' STR6 DB 'The Average:','$' STR7 DB 'The binary system of the average :','$' STR8 DB 'Input error!Please input again!''$' DATA ENDS CODE SEGMENT MAIN PROC FAR ASSUME CS:CODE,DS:DATA,ES:DATA START: PUSH DS AND AX,0 PUSH AX MOV AX,DATA MOV DS,AX LEA DX,STR1 MOV AH,09H ;9号DOS功能调用,提示输入数据 INT 21H CALL CRLF ;回车换行 REIN: CALL INPUT ;调用INPUT子程序,输入原始数据CMP AX,FAULT ;判断就是否出错, JE REIN ;出错则重新输入

大数据结构实验四题目一排序实验报告材料

数据结构实验报告 实验名称:实验四——排序 学生姓名:XX 班级: 班内序号: 学号: 日期: 1.实验要求 实验目的: 通过选择实验内容中的两个题目之一,学习、实现、对比、各种排序的算法,掌握各种排序算法的优劣,以及各种算法使用的情况。 题目1: 使用简单数组实现下面各种排序算法,并进行比较。 排序算法如下: 1、插入排序; 2、希尔排序; 3、冒泡排序; 4、快速排序; 5、简单选择排序; 6、堆排序; 7、归并排序; 8、基数排序(选作); 9、其他。 具体要求如下: 1、测试数据分成三类:正序、逆序、随机数据。 2、对于这三类数据,比较上述排序算法中关键字的比较次数和移动次数(其中关 键字交换记为3次移动)。 3、对于这三类数据,比较上述排序算法中不同算法的执行时间,精确到微妙。 4、对2和3的结果进行分析,验证上述各种算法的时间复杂度。 5、编写main()函数测试各种排序算法的正确性。 2. 程序分析 2.1 存储结构

存储结构:数组 2.2 关键算法分析 一、关键算法: 1、插入排序 a、取排序的第二个数据与前一个比较 b、若比前一个小,则赋值给哨兵 c、从后向前比较,将其插入在比其小的元素后 d、循环排序 2、希尔排序 a、将数组分成两份 b、将第一份数组的元素与哨兵比较 c、若其大与哨兵,其值赋给哨兵 d、哨兵与第二份数组元素比较,将较大的值赋给第二份数组 e、循环进行数组拆分 3、对数据进行编码 a、取数组元素与下一个元素比较 b、若比下一个元素大,则与其交换 c、后移,重复 d、改变总元素值,并重复上述代码 4、快速排序 a、选取标准值 b、比较高低指针指向元素,若指针保持前后顺序,且后指针元素大于标准值,后 指针前移,重新比较 c、否则后面元素赋给前面元素 d、若后指针元素小于标准值,前指针后移,重新比较 e、否则前面元素赋给后面元素 5、简单选择排序 a、从数组中选择出最小元素 b、若不为当前元素,则交换 c、后移将当前元素设为下一个元素 6、堆排序 a、生成小顶堆 b、将堆的根节点移至数组的最后 c、去掉已做过根节点的元素继续生成小顶堆

三年级科学下册实验报告单

三年级科学下册实验报 告单 Document number【980KGB-6898YT-769T8CB-246UT-18GG08】

实验一、温度和温度计 28摄氏度写作: 20摄氏度写作: 零下5摄氏度写作: -21℃读作: 31℃读作: 实验要求:用温度计测量水的温度。 实验用品:400ml烧杯一个一支温度计适量冷水和一暖壶热水吸水纸废物瓶。

实验三、水结冰了 一、实验名称:水结冰了 二、实验目的:观察水在不同温度下温度计的读数 三、实验步骤: 1、在试管里加入一半的纯净水,用温度计测量并记录试管里水的温 度 2、拿一只保温杯(或在普通塑料杯外包裹一块干毛巾)在杯内装满 碎冰,把试管插入碎冰中,用温度计观测试管里水温的变化 3、在碎冰里加入较多的食盐,保持几分钟持续观测试管里的水温 4、观测试管里的水开始结冰时的温度 四、实验器材:试管、保温杯、温度计、碎冰块、食盐、纯净水。 水结冰了的实验记录表

结论: 1、水在低温环境中,温度会不断下降,当温度下降到0℃时开始结冰,由液态变为固态。 2、结冰后温度会继续下降,一直降到与环境的温度相同为止。 3、水在结冰的过程中要向周围放出热量。 实验四、冰融化了 一、实验目的:观察冰融化过程中温度的变化 二、实验步骤: 1、从冰箱中取出一些冰块,把冰块放入烧杯内,用温度计测 量并录 录冰块的温度 2、让冰块自行融化,在冰块融化过程中,按均匀的时间间隔 测量温度 3、当冰块完全融化成水时,记录温度计的读数 三、实验器材:烧杯一只、温度计、记录表、可封口的小塑料 袋一只、 冰块若干 2、温度会不断上升,当上升到0℃时,冰块开始融化,在融化过程中一直保持0℃。 3、冰块完全融化成水后,温度继续上升,一直到室温。 4、冰块融化的过程中需要吸收热量。 实验五、磁铁有磁性

四年级科学实验报告单

四年级科学实验报告单

4课.小吊车 活动1:做小吊车(分组实验) 制作目的:做小吊车并研究小吊车原理 制作材料及工具:小纸盒吊车臂吊臂支架线绳两个铁丝钩一个剪刀锥子胶水钩码 制作过程: 1.小组分工合作 2.观察小吊车模型组装各部分 ①四个点要对称,固定牢固; ②绳子要从前往后穿,不要穿反了; 3.调试小吊车分别拉动两根线,看看小吊车的臂能否灵活运动. 实验现象:小吊车能提起或放下钩码 实验原理:放松上牵引绳,拉紧下牵引绳,吊臂向下运动;拉紧上牵引绳,放松下牵引绳,吊臂向上运动。 8课.快与慢 实验目的:研究小车运动的快慢(分组实验) 实验材料:秒表(或电子手表)、长尺、玩具车(学生自带),橡皮泥,马达、电池等(学生自带) 实验过程: 1.小组做好分工:赛车手、计时员、测量员、记录员。 2.找好起点(必要时确定好终点); 3.秒表做好归零; 4.在相同时间内必须进行多次测量(不少于3次),并做好记

录 5. .在相同距离内必须进行多次测量(不少于3次),并做好记录 实验原理: 1:相同时间内经过的距离越长,物体运动的速度越快 2:相同距离下所用的时间越短,物体运动的速度越快 9推和拉 实验目的:能够用实验体验探究出力有大小和方向,推和拉都是力。(分组实验) 实验过程: (1)三人一组,两人活动,另一人裁判,交替进行。 (2)活动前,要做好准备工作,推手掌双方要站在相距100厘米的位置,手掌放在中间位置,在准备过程中,不允许用力推或拉对方。 (3)裁判员下达命令后,双方用力推或拉,力争战胜对方。 (4 ) 同一规则再做拉手臂游戏。 实验现象:两个同学同时推,力气大的一方会将力气小的一方推出界线,要想赢,就要增大脚与地面的摩擦力,发现力有大小。用力推时,必须对正方向,方向偏了,也会输,发现了力有方向。 实验原理:推和拉的用力,方向和结果是不同的。推和拉会使物体移动位置或变形,推和拉是一种力,方向不同,大小不同,使物体移动的位置远近也不同。 6课.做沙盘(分组实验)

各种排序实验报告

【一】需求分析 课程题目是排序算法的实现,课程设计一共要设计八种排序算法。这八种算法共包括:堆排序,归并排序,希尔排序,冒泡排序,快速排序,基数排序,折半插入排序,直接插入排序。 为了运行时的方便,将八种排序方法进行编号,其中1为堆排序,2为归并排序,3为希尔排序,4为冒泡排序,5为快速排序,6为基数排序,7为折半插入排序8为直接插入排序。 【二】概要设计 1.堆排序 ⑴算法思想:堆排序只需要一个记录大小的辅助空间,每个待排序的记录仅占有一个存储空间。将序列所存储的元素A[N]看做是一棵完全二叉树的存储结构,则堆实质上是满足如下性质的完全二叉树:树中任一非叶结点的元素均不大于(或不小于)其左右孩子(若存在)结点的元素。算法的平均时间复杂度为O(N log N)。 ⑵程序实现及核心代码的注释: for(j=2*i+1; j<=m; j=j*2+1) { if(j=su[j]) break; su[i]=su[j]; i=j; } su[i]=temp; } void dpx() //堆排序 { int i,temp; cout<<"排序之前的数组为:"<=0; i--) { head(i,N); } for(i=N-1; i>0; i--) {

temp=su[i]; su[i]=su[0]; su[0]=temp; head(0,i-1); } cout<<"排序之后的数组为:"<

六年级下实验报告单答案2015

班级小组长报告日期实验名称:放大镜下的新发现 实验目的:激发学生探究科学的兴趣 所需器材:放大镜2只【3X、5X 各一】/每组 实验步骤、过程及分析:步骤:1、用放大镜观察书上的字 把放大镜放在字的上方,逐渐向外移动,发现透过镜片后,字体变大了; 2、用放大镜观察钱币上的微缩文字 将放大镜放在钱币的微缩文字上方,可以看到微缩文字为“RMB 100”, 而不用放大镜却看不清楚; 3、用放大镜观察照片: 我们用放大镜观察了一只小鸟的照片,可以看到鸟的羽毛上的小绒羽,而 只用肉眼看,却不能发现; 4、用放大镜观察电脑、电视机的屏幕: 用10X的放大镜观察屏幕上的图像,发现图像都是由红、蓝、绿三种 色点组成的,单看屏幕的一块地方,根本就不是画面。观察到的现象:用放大镜观察物体,比肉眼看的清晰,原来不能看到的细微之处也能看清了 结论:我认为放大镜不仅能放大物体的图像,还能看到物体的 许多细节。

班级小组长报告日期 实验名称:奇特的身体构造 实验目的:认识到昆虫有它独特的特征 所需器材:放大镜2只、蝇子蟋蟀蝴蝶等动物的标本1套 实验步骤、过程及分析:步骤: 1、观察昆虫的触角:发现触角不是一根直的,而是一节一节的; 2、苍蝇的眼:发现不是一个,网格状的分布着几千个小眼; 3、蝴蝶的鳞片:彩色的鳞片其实是扁平的细毛; 4、蟋蟀的外壳:光滑的外壳上,还有许多“小刺”; 5、苍蝇的脚:脚的底端有“吸盘”,所以可以在天花板上倒立 观察到的现象:观察的小昆虫和肉眼大不相同,借助放大镜,可以观察到小动物的细微之处 结论:我认为用放大镜观察的小昆虫和肉眼大小不相同, 借助放大镜,可以观察到小动物的细微之处

实验4实验报告

学号:20164477 姓名:陈家凤 实验四数据库表的创建和管理 一、目的与要求 1.掌握数据库表的两种创建方法; 2.掌握完整性约束的设置方法; 3.掌握导入导出数据的操作方法; 二、实验准备 1.了解完整性约束的概念,分类; 2.了解T-SQL创建、修改和删除表的语法格式; 3.了解数据导入导出。 三、实验内容 (一) 在对象资源管理器中创建数据库表 创建数据库studb,存储属性为默认,在studb数据库中建立数据表。结构如图4-1所示: 图4-1 图4-2

图4-3 图4-4 图4-5 图4-6

需要定义的约束有: 1.主键和外键,依据图中标识建立 在SC表中右击—>关系—>按箭头步骤(两次添加) 图4-7 图4-8

图4-9 2.S表中在s_name上建立唯一键约束。 S表中在s_name上右击—>索引/键—>添加 图4-10

3.C表中设置check约束为ccredit不能为负数 C表中在ccredit中右击—>check约束—>按箭头步骤 图4-11 3.SC表中score默认值为0 SC表中score右击—> check约束—>按箭头步骤 图4-12

(二) 使用T-SQL语句修改表 1.在S表中增加新的列,列名sfzh,数据类型为varchar(18)。alter table dbo.S add sfzh varchar(18) 图4-13 图4-14 2.在C表中增加外键约束,外键是cpno,参考C表的cno列。alter table dbo.C add constraint FK_cpno foreign key(cpno) references dbo.C(cno) 图4-15 3.在SC表中删除默认值约束。 alter table dbo.SC drop constraint DF_SC_score 图4-16

相关主题
文本预览
相关文档 最新文档