自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(45)
  • 收藏
  • 关注

原创 操作系统实验:虚拟内存页置换算法

该算法实现简单,但性能较差,调出的页面可能是经常访问的页面,而且进程分配物理页面数增加时,缺页并不一定减少(Belady 现象)。在 Java 编程环境下编程模拟实现虚拟内存管理中常见的两种页置换算法,包括先进先出置换(FIFO)和最近最久未使用(LRU)算法,并分析在先进先出 置换算法中 Belay现象产生的原因。但由于LRU算法能更好地捕捉页面的访问模式,因此在相同页帧数量下,LRU算法的缺页次数通常少于FIFO算法。对于给定的页面引用序列,随着页帧数量的增加,两种算法的缺页次数都逐渐减少。

2024-12-22 18:32:12 857

原创 操作系统实验:银行家算法

在避免死锁方法中允许进程动态地申请资源,但在进行资源分配之前,应先计算此次分配资源的安全性,若分配不会导致系统进入不安全状态,则分配,否则等待。而在资源紧张的情况下,算法可能需要更多的计算来确保系统的安全性。通过测试不同的资源请求和释放序列,我们发现银行家算法能够确保系统在资源分配过程中处于安全状态,从而避免死锁的发生。在银行家算法的实现中,我们成功地模拟了资源分配和释放的过程,并验证了算法在避免死锁方面的有效性。在 Java 环境下编程实现进程死锁避免的银行家算法模拟,以便更好的理解此进程死锁解决方案。

2024-12-22 18:28:25 284

原创 操作系统实验:生产者-消费者

线程的终止可以通过自然结束run方法、使用退出标志控制循环结束、调用stop方法(不推荐使用,因为它会强制终止线程并可能引发资源释放问题)或通过interrupt方法中断线程(在阻塞状态下抛出InterruptedException异常)。其中,sleep方法使线程在指定时间内休眠,join方法等待另一个线程执行完毕,wait方法则使线程等待直到被notify或notifyAll唤醒。生产者-消费者问题是经典的进程同步问题,我们通过模拟一个具有有限容量的缓冲池来展示生产者线程和消费者线程如何协同工作。

2024-12-22 18:23:43 1047

原创 软件工程期末复习要点

在计算机系统支持下,能够完成特定功能和性能的程序、数据和相关的文档。

2024-12-22 18:13:23 560

原创 数据库实验:数据库编程

本次实验更加深入了解并掌握T-SQL语句的语法规则、T-SQL流程控制结构、掌握T-SQL的函数和存储过程的创建。

2024-06-27 17:38:14 683

原创 数据库实验:数据库设计

本次实验学习并掌握了数据库设计的基本方法及数据库设计工具,ER模型的设计规则,能够按照一定规则将ER转化为关系模型。

2024-06-27 17:33:55 655

原创 数据库实验:数据的完整性和安全性

本次实验掌握数据库的实体完整性约束定义,完整性检查及违约处理方式,数据库的参照完整性约束定义,完整性检查及违约处理方式,数据库的用户定义完整性约束定义,完整性检查及违约处理方式,触发器的定义及使用,SQL Server 2008的安全控制机制,身份验证模式,理解数据库用户帐户的基本概念,角色的概念,其中数据库的安全性主要反复使用grant 和revok语句。

2024-06-27 17:31:21 1287

原创 数据库实验:SQL语句

建立s,c,sc三张数据表,并给每个属性定义合适数据类型,声明主外码2.数据表的修改 给c表增加字段teacher3.数据表的删除建立一个表名为test的表,并删除4.数据表的索引建立和删除为s表的sname字段建立唯一索引为s表的sdept建立聚簇索引CREATE CLUSTER INDEX S ON DEPT删除s表的唯一索引5.查询学生的学号和所在系6)查询管理系的学生所选修的课程和成绩7)统计有学生选修的课程门数。8)统计胡老师所授每门课程的学生平均成绩。9)统计所有选修人数多于20的课程号和选课人

2024-06-27 17:26:01 1364

原创 Java黑皮书9.13

【代码】Java黑皮书9.13。

2024-06-23 16:53:12 404

原创 Java黑皮书9.12

题目。

2024-06-23 16:48:33 293

原创 Java黑皮书9.11

画出该类的UML图并实现这个类。编写一个测试程序,提示用户输入a、b、c、d、e、f的值, 然后显示它的结果。如果ad-bc为0,就报告“The equation has no solution.”。参见编程练习题3.3的运行示例。• 一个名为isSolvable()的方法,如果ad-bc不为0则返回true。• 方法getX()和getY()返回这个方程的解。• 一个参数为a、b、c、d、e、f的构造方法。• a、b、c、d、e、f的六个get方法。• 私有数据域a、b、c、d、e和f。

2024-06-23 16:44:34 724

原创 Java黑皮书9.10

画出该类的UML图并实现这个类。编写一个测试程序,提示用户输入a、b和c的值,然后显示判别式的结果。为二次方程式 a x 2 + b x + c − 0 ax^2+bx+c-0 ax2+bx+c−0设计一个名为QuadraticEquation的类。• 一个名为getDiscriminant()的方法返回判别式, b 2 − 4 a c b^2-4ac b2−4ac。如果判别式为负,这些方法返回0。• 代表三个系数的私有数据域a、b和c。• 一个参数为a、b和c的构造方法。• a、b、c的三个get方法。

2024-06-23 16:38:55 938

原创 Java黑皮书9.9

题目。

2024-06-23 16:29:45 567

原创 Java黑皮书9.8

如果风扇是打开的,那么该方法在一个组合的字符串中返回风扇的速度、颜色和半径。一个名为 on 的 boolean 类型私有数据域,表示风扇是否打开(默认值为 fa1se)。一个名为radius 的 double类型私有数据域,表示风扇的半径(默认值为5)。一个名为 co1or的string类型数据域,表示风扇的颜色(默认值为 blue)。一个名为speed的int类型私有数据域,表示风扇的速度(默认值为SLOW)。(风扇类Fan)设计一个名为Fan 的类来表示一个风扇。一个创建默认风扇的无参构造方法。

2024-06-23 16:17:36 1044

原创 Java黑皮书9.7

编写一个测试程序,创建一个账户ID为1122、余额为20000美元、年利率为4.5%的Account 对象。一个用于创建带特定id 和初始余额的账户的构造方法。一个名为 annualInterestRate的double类型私有数据域存储当前利率(默认值为0)。假设所有的账户都有相同的利率。一个名为 dateCreated的 Date类型的私有数据域,存储账户的开户日期。一个名为 balance 的 double类型私有数据域(默认值为0)。一个名为id的int类型私有数据域(默认值为0)。

2024-06-23 15:55:13 1201

原创 Java黑皮书9.6

画出该类的UML图并实现这个类。编写一个测试程序,用于测量使用选择排序对100 000个数字进行排序的执行时间。• —个名为getElapsedTime()的方法,以毫秒为单位返回秒表记录的流逝时间。• 一个名为start()的方法,将startTime重设为当前时间。• 具有访问器方法的私有数据域startTime和endTime。• 一个名为stop()的方法,将endTime设置为当前时间。• 一个无参构造方法,使用当前时间来初始化startTime。

2024-06-23 15:20:25 494

原创 Java黑皮书9.5

Java API有一个在包java.util中的类GregorianCalendar,可以使用它获得某个日期的年、月、日。它的无参构造方法构建一个当前日期的实例,get(GregorianCalendar.YEAR)、get(GregorianCalendar.MONTH)、get(GregorianCalendar.DAY_OF_MONTH)方法返回年、月和日。• GregorianCalendar类有方法setTimeInMillis(Iong),可以用它来设置从1970年1月1日算起的一个特定时间。

2024-06-23 14:59:32 349

原创 Java黑皮书9.4

编写一个程序,创建种子是1000的Random对象,然后使用nextInt(100)方法显示0到100之间前50个随机整数。

2024-06-23 14:52:46 141

原创 Java黑皮书9.3

编写程序创建一个Date对象,设置它的流逝时间分别为10000、100000、1000000、10000000、100000000、1000000000、10000000000、100000000000,然后使用toString()方法分别显示上述日期。

2024-06-23 14:46:28 302

原创 Java黑皮书9.2

【代码】Java黑皮书9.2。

2024-06-23 14:36:50 173

原创 Java黑皮书9.1

【代码】Java黑皮书9.1。

2024-06-23 14:14:49 218

原创 数据结构实验:查找

根据输入的姓名,通过哈希表来查找对应的哈希值,如果找到则返回对应的位置索引,否则返回-1表示没有找到。计算哈希值:根据除留余数法,将姓名的每个字符的ASCII码值相加得到哈希值,然后取哈希值与哈希表大小的余数作为最终的哈希值。3. 查找姓名:根据哈希函数计算出哈希值,并进行线性探测再散列,直到找到对应的姓名或遍历完整个哈希表。需要构造一个具有30个人的班级姓名的哈希表,使用汉语拼音表示姓名,假设姓名最长为20个字符。需要进行哈希函数的计算,处理冲突的线性探测再散列,并进行插入和查找操作。

2024-04-23 15:38:10 850 1

原创 数据结构实验:排序

给出n个学生的考试成绩信息,每条信息由学号、姓名与分数组成。要求首先按学号对信息进行排序,然后再按分数进行排序,并要求分数相同的仍然按学号有序,输出每次排序的结果。【基本要求】自定义任意一组n个学生,n>=20,学号、姓名和分数可任意取值(不得抄袭雷同)。要求分别实现根据学号和分数两种不同的排序,【测试数据】自定义二十组以上的学生,包括学号、姓名和分数,注意:不得抄袭雷同。学号: %d, 姓名: %s, 分数: %d\n"学号: %d, 姓名: %s, 分数: %d\n"比较函数,用于按分数排序。

2024-01-05 14:43:23 974

原创 计算方法实验:MATLAB语法与基本编程方法练习

通过这次的MATLAB语法与基本程序练习,基本熟悉了操作和命令的使用,让我对MATLAB的基本使用有了了解,对MATLAB的使用也愈发熟练,有些不会的,我也会自己查阅资料,例如:将向量t的0元素用机器零代替,这样的过程使学习与提高的过程。通过这次的MATLAB语法与基本程序练习,基本熟悉了操作和命令的使用,让我对MATLAB的基本使用有了了解,对MATLAB的使用也愈发熟练,有些不会的,我也会自己查阅资料,例如:将向量t的0元素用机器零代替,这样的过程使学习与提高的过程。

2023-12-24 18:02:19 585

原创 计算方法实验:用拉格朗日插值法计算插值问题

通过这次实验,我更加深入地了解了复合梯形求积公式和复合辛普生求积公式,以及如何运用他们进行解题,并熟练的运用MATLAB进行解题,锻炼了我的思维能力,使我更加灵活熟练度使用MATLAB。用复合梯形求积公式和复合辛普生求积公式计算定积分(+小实验 7) (大实验见 p317,实验 6 数值积分(1)(2)【小实验 7】 求函数在指定点处的数值导数:𝑓𝑓(𝑥𝑥) =被积函数 f = 4 / (1 + x * x)"积分区间为(0,1)"区间等分数为 10"

2023-12-24 17:58:24 424

原创 计算方法实验:二分法与迭代法

(1)在区间[0,1]内用二分法求方程ex+10x-2=0的近似根,要求误差不超过0.5x10-3(2)取初值x0=0,用迭代公式xk+1=(2-e^xk)/10(k=0,1,2,…)求方程ex+10x-2=0的近似根,要求误差不超过0.5x10-3利用matlab提供的rand函数生成10000个符合均匀分布的随机数,根据下述要求,写出相应函数,检验随机数的性质。(1)均值和标准方差。(2)最大元素和最小元素。(3)大于0.8的随机数个数占总数的百分比。

2023-12-24 17:54:27 975

原创 计算方法:函数插值

2.有三个多项式𝑝𝑝1(𝑥𝑥) = 𝑥𝑥3 + 2𝑥𝑥2 + 7, 𝑝𝑝2(𝑥𝑥) = 𝑥𝑥 − 5, 𝑝𝑝3(𝑥𝑥) = 𝑥𝑥3 + 5𝑥𝑥 + 1,进行下列操作: (1)求𝑝𝑝(𝑥𝑥) = 𝑝𝑝2(𝑥𝑥)𝑝𝑝1(𝑥𝑥) + 𝑝𝑝3(𝑥𝑥);【小实验 5】 1.利用 randn 函数生成符合正态分布的 10*5 的随机矩阵 A,写出完成下列操作的命令: (1) A 各列元素的中值和标准方差;从实验六的计算结果可以看出,实现同样的计算步骤,用Matlab实现的计算结果和C语言相比,略靠近于精确值。

2023-12-24 17:51:41 405

原创 计算方法实验:用拉格朗日插值法计算插值问题

例如,对于数列{pi}={5, 3, 8, 2, 9},Huffman 树的构造过程如下: 1. 找到{5, 3, 8, 2, 9}中最小的两个数,分别是 2 和 3,从{pi}中删除它们并将和 5 加 入,得到{5, 8, 9, 5},费用为 5。2. 找到{5, 8, 9, 5}中最小的两个数,分别是 5 和 5,从{pi}中删除它们并将和 10 加入, 得到{8, 9, 10},费用为 10。5. 现在,数列中只剩下一个数 27,构造过程结束,总费用为 5+10+17+27=59。

2023-12-24 17:47:52 922

原创 计算方法实验:牛顿迭代法

【小实验 2】从键盘输入一个 4 位整数,按如下规则加密后输出。加密规则:每位数字都加 7,然后用和除以 10 的余数取代该数字;然后讲第一位数和第三位数交换,第二位数与第 四位数交换。

2023-12-24 17:43:17 623

原创 计算方法实验:解方程

【小实验 3】工资计算方法如下: (1)工时数超过 120h 者,超过部分加发 15%;(2)工时数低于 60h 者,扣发 2000 元;(3)其余每小时按 95 元计发。编程,按输入的工号和该号员工的工时数,计算应发工资。

2023-12-24 17:40:08 534

原创 用雅克比迭代法和高斯-赛德尔迭代法求解线性方程组

(1)计算出从车辆入场时间到离场时间之间的时间差,传入的时间格式(如:2023-10- 01 16:10:32),计算出的时间是以小时为单位。如果停车时长小于等于 12 小时,那么按照以下方式来进行处理: ①判断停车的时间是否在白天的 07:00-19:00 之间。③ 如果停车时间是在横跨白天和夜晚停车,但停车时长小于等于 12 小时的话,那么 按昼夜交替停车标准来进行收费。用雅克比迭代法和高斯-赛德尔迭代法求解线性方程组(+小实验 4) (大实验见 p314,实验 4 解线性方程组的迭代法(1)(2)

2023-12-24 17:35:30 771

原创 数据结构实验:图

printf("请输入顶点 %c 的邻接顶点:", ALG->adjlist[i].vex);printf("请输入顶点 %c 的邻接顶点:", ALG->adjlist[i].vex);printf("顶点 %c :", ALG.adjlist[i].vex);printf("顶点 %c :", ALG.adjlist[i].vex);printf("请输入第%d条边的弧头和弧尾: ", i);printf("图为空\n");printf("请输入图的顶点:");printf("请输入开始节点:");

2023-12-20 19:44:51 1092 1

原创 数据结构实验:树与二叉树

用二叉链表作为存储结构,定义函数createBiTree(BiTree* bi_tree)建立二叉树,声明遍历函数。puts("请按先序序列输入一颗二叉树的结点数据,以'*'来代表空值:");puts("请按先序序列输入一颗二叉树的结点数据,以'*'来代表空值:");printf("\n先序序列:");printf("\n中序序列:");printf("\n后序序列:");printf("\n先序序列:");printf("\n中序序列:");printf("\n后序序列:");

2023-12-20 19:39:26 1093 1

原创 数据结构实验:回文判断

从键盘以此读入一个以@为结束符的字符序列,判断此序列是否为形如“序列1 & 序列2”模式的字符序列。例如,字符序列“a+b&b+a”是属于该模式的序列,而“1+3&3-1”则不是回文。通过该实验,掌握栈的相关基本概念,认识栈是插入和删除集中在一端进行的线性结构,掌握栈的“先入后出”操作特点。如果&后新输入的字符与栈s弹出的字符不依次对应相等,输出序列1与序列2不相同,返回FALSE*字符序列“a+b&b+a”形如“序列1 & 序列2,而“1+3&3-1”则不是回文。定义存放输入字符栈的栈s。

2023-12-20 19:32:51 760 1

原创 数据结构实验:约瑟夫环问题

首先刚开始的次序为1,2,3,...,7,8。从第一个人开始遍历,数到m,也就是第m个人就出去,先打印出列人的序号,再把这个结点从表中删除,继续遍历,继续找到下一个出列的人打印序号。报max的人出列,将他的密码作为新的m值,从他在顺时针方向上的下一个人开始重新从1报数,如此下去,直至所有人全部出列为止。然后我们进入约瑟夫环问题,成员依次报数,每当达到报数上限时,先覆盖上限值,再在循环单链表中删除当前节点,继续新一轮的报数,知道链表中剩下最后一个储存数据的结点。printf("请输入m的值\n");

2023-12-20 19:28:38 1451 2

原创 微机原理课程设计:8253定时计数器方波实验

1、了解8253芯片的工作原理,熟悉8253初始化编程方法以及时间常数的计算,掌握8253芯片实现硬件定时计数的方法。3、学生在实验课前必须认真预习教材与资料中的相关内容,绘制流程图,编写源程序,为实验做好充分准备,实验后撰写实验报告。2、熟悉8253内部结构和与8088的接口逻辑,熟悉8253芯片的工作方式及控制字。1、建立本实验的工程文件,绘制实验的原理图方案,连接仿真线路。2、根据要求,计算时间常数,编写程序利用8253,产生方波。利用8253,编程仿真实现产生方波。3、利用示波器观察输出的波形。

2023-12-20 19:08:48 2291 1

原创 微机原理实验:流水灯实验

1、通过对并行接口8255编程、调试,掌握仿真工具软件Proteus的使用方法,掌握8255的基本编程及调试方法,掌握编写控制并行接口程序的方法。2、学生在实验前必须认真预习教材与资料中的相关内容,绘制流程图,编写源程序,为实验做好充分准备,实验后撰写实验报告。2、编写程序源代码,实现8255控制8个指示灯,循环点亮(瞬间只有一个灯亮)。11111110B 字模。实现8255控制8个指示灯,循环点亮(瞬间只有一个灯亮)。1、建立实验工程文件,绘制实验的原理图方案;

2023-12-20 19:06:06 7079 2

原创 微机原理课程设计:电子时钟

课程设计内容:电子时钟(CLOCK)

2023-12-20 19:00:09 6491 5

原创 C语言:用筛选法求100以内的素数

用筛选法求100以内的素数

2022-12-25 12:40:34 7083 6

原创 C语言:输入两个数,用辗转相除法计算它们的最大公约数

C语言:输入两个数,用辗转相除法计算它们的最大公约数

2022-12-23 13:13:18 2365 1

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除