- 博客(39)
- 资源 (9)
- 收藏
- 关注
原创 【编译原理】【C#】简易Chomsky文法类型判别器
文章目录一、设计要求二、算法原理三、源代码四、测试运行五、资源下载一、设计要求使用任一种编程语言实现对非文法、0型文法、1型文法、2型文法、3型文法这四种文法类别进行分类。程序的输入为一行文法,非终结符有英文大写字母构成,终结符包含{小写字母、数字、基本运算符、左右括弧},文法的书写格式形如 “A::=aB”、“aB::=cDaa”。二、算法原理Chomsky按产生式的类型把文法分为0、1、2、3型文法四种类型。【0型文法】产生式形式:α→β,箭头左边的α至少含有一个非终结符,其余不加任何限制。
2022-04-23 14:27:25
1636
原创 【Python-OpenCV】图片数据增广批量转换模板
import cv2import numpy as npimport os.path# 图像增加椒盐噪声函数def SaltAndPepper(src, percetage): SP_NoiseImg = src.copy() SP_NoiseNum = int(percetage * src.shape[0] * src.shape[1]) for i in range(SP_NoiseNum): randR = np.random.randint(0,
2022-04-23 13:50:33
3830
原创 【C#】简易学生记录批量生成器
本项目来源于博主的C#课程的期末综合设计,该生成器可以一键生成所需的批量学生信息,可应用于生成数据库等课程的教学数据资源数据等。文章目录一. 题目要求二. 设计报告3.1 开发环境说明3.2 数据库设计与搭建3.3 界面设计3.4 功能设计3.4.1 学生记录生成模块3.4.2 数据库操作模块3.4.3 其他模块三. 系统演示一. 题目要求设计一个批量学生记录生成器,实现默认自动生成1000个学生记录信息的功能,设计画面如示例图所示。1. 数据环境搭建(1)创建Mysql数据库,并命名为qmte
2021-12-17 23:44:45
2096
原创 【接口技术】实验六:模/数转换和数/模转换
文章目录一. 实验目的二. 实验内容实验6-1 模/数转换实验实验6-2 数/模转换实验(锯齿波)实验6-3 数/模转换实验(三角波)一. 实验目的了解模/数转换的基本原理,掌握ADC0809的使用方法。了解数/模转换的基本原理,掌握DAC0832的使用方法。二. 实验内容实验6-1 模/数转换实验根据实验原理图,通过实验箱左下角电位器RW1输出0-5V直流电压送入ADC0809通道0(IN0),利用debug的输出命令启动A/D转换器,输入命令读取转换结果,验证输入电压与转换后数字的关系。
2021-12-04 00:05:45
2718
原创 【接口技术】实验五:可编程并行接口8255
文章目录一. 实验目的二. 实验内容实验5-1 8255并行输入/输出实验实验5-2 并行接口键盘反转扫描实验一. 实验目的了解8255芯片结构及编程方法。了解8255输入/输出实验方法。掌握8255控制键盘及显示电路的基本功能及编程方法。掌握一般键盘和显示电路的工作原理。二. 实验内容实验5-1 8255并行输入/输出实验将实验的线路连接好后,编程,将8255的C口作为输入。输入信号由8个逻辑电平开关提供,A口作为输出,其内容由发光二极管来显示。编程从8255C口输入数据,再从A口输出
2021-11-26 19:21:46
9204
原创 【接口技术】实验四:8254定时器与计数器
文章目录一. 实验目的二. 实验内容实验4-1 8254计数器实验实验4-2 8254定时器实验一. 实验目的掌握8253/8254计数特点和编程方法。掌握8253/8254工作方式3的基本工作原理、计数特点和编程方法。二. 实验内容8253/8254的初始化命令字如下图所示:实验4-1 8254计数器实验按电路图连接电路,将计数器0设置为方式2,计数器初值为N(N<0FH),用手逐个输入单脉冲,编程使计数值在屏幕上显示,用逻辑笔观察OUTO电平变化,当输入N+1个脉冲后OUTO变
2021-11-19 18:12:40
11109
原创 【接口技术】实验三:中断实验
文章目录一. 实验目的二. 实验内容实验3-1 中断服务实验实验3-2 中断嵌套实验一. 实验目的掌握PC机中断处理系统的基本原理。学会编写中断服务程序。掌握扩展查询方法。二. 实验内容硬件平台:TPC-ZK-II配套试验箱软件环境:TPC-ZK-II实验3-1 中断服务实验实验要求:参照实验电路图,编写IRQ10的中断程序。实现直接用手动产生单脉冲作为中断请求信号。要求每按一次开关产生一次中断,在屏幕上显示一次“IRQ10!”,中断10次后程序退出。电路图:接线:汇编代码
2021-11-12 17:30:31
5133
1
原创 【人工智能】谓词表示法与产生式知识表示实验
文章目录一. 实验目的二. 实验内容(一)猴子摘香蕉问题(二)动物识别分类系统三. 实验结果(一)猴子摘香蕉问题(二)动物识别分类系统一. 实验目的熟悉谓词逻辑表示法。理解和掌握产生式知识表示方法,实现产生式系统的规则库。二. 实验内容(一)猴子摘香蕉问题问题描述:房子里有一只猴子,位于a处。在c处上方的天花板上有一串香蕉,猴子想吃,但摘不到。房间的b处还有一个箱子,如果猴子站到箱子上,就可以摸着天花板。如下图所示,对于上述问题,可以通过谓词逻辑表示法来描述知识,实现猴子摘香蕉问题的求解过
2021-11-07 00:04:41
7152
原创 【接口技术】实验二:基本I/O实验
文章目录一. 实验目的二. 实验内容实验2-1:I/O端口地址译码实验实验2-2:简单并行接口I/O实验一. 实验目的掌握I/O端口地址译码电路的工作原理。掌握简单并行接口的工作原理及使用方法。二. 实验内容硬件平台:TPC-ZK-II配套实验箱软件环境:TPC-ZK-II实验2-1:I/O端口地址译码实验电路图:接线:实验要求:实验电路中D触发器CLK端输入脉冲时,上升沿使Q端输出高电平,L7发光,CD端加低电平,L7灭。要求通过编程控制译码电路的负脉冲输出,使L7闪烁发光(
2021-11-06 00:09:04
8044
原创 【接口技术】实验一:简易汇编程序调试
文章目录一. 实验目的二. 实验内容实验1-1-1实验1-1-2实验1-2-1实验1-2-2一. 实验目的掌握在集成开发软件环境中汇编程序的编写、调试方法。所用开发环境为TPC-ZK-II。二. 实验内容实验1-1-1在以BUF为首地址的字节存储区存放有若干个无符号数,求该序列中的最大值,并在屏幕上输出该最大值。输入如下源程序并运行,查看运行结果。要求:了解汇编指令,学会单步调试。汇编代码:stack segment stackdb 200 DUP(?)stack endsdata s
2021-11-05 23:49:11
2065
3
原创 【人工智能】不确定性推理方法——C-F模型
文章目录一. 基本概念二. 必背公式1. 证据不确定性的组合算法2. 结论不确定性的传递算法3. 结论不确定性的合成算法三. 典型例题例题1例题2四. 通用解法一. 基本概念要掌握C-F模型首先需要了解可信度的概念,可信度是根据经验对一个事物或现象为真的相信程度,说白了就是有多大把握相信一个事情。由于可信度不可避免地带有较大主观性和经验性,难以把握准确性。C-F模型便是基于可信度表示的不确定性推理的基本方法。不确定性推理主要有两种不确定性,即关于知识的不确定性和关于证据的不确定性。C-F模型中关于知
2021-11-04 22:23:07
15196
4
原创 【C#】基于C#和MySQL的简单学生信息管理系统设计
现需要完成一个简单学生信息管理系统的设计。具体要求如下。(1)界面要求运行程序的主界面如下所示:录入信息后的效果:各种系统提示:(2)实现步骤创建Mysql数据库StudentDB(SQL源码见后文,数据均为虚构)添加学生信息表Stud,各字段要求如下。设计窗体功能:· 主界面按效果图添加相应控件与布局· 默认打开窗体后查询所有学生信息· 点击增加按钮能正确的查询插入一条学生信息并弹出对应提示信息,同时刷新DataGridView数据控件。· DataGridV
2021-11-01 21:30:49
4545
2
原创 【C#】简易人机对抗“石头剪刀布”游戏
需要实现如下图所示的人机猜拳小游戏:我们需要建立一个玩家类Player、一个电脑类Computer、一个裁判类Judge来分别模拟各自的操作:【Player.cs】/* * 作者:JeronZhou * 时间:2021-11-01 * 功能:石头剪刀布游戏 */using System;namespace Test2_2{ public class Player { public string FistName { get; set; } pub
2021-11-01 21:06:36
28611
18
原创 【C#】动态数字时钟和日历
实现如下图所示的简易时钟和日历,要求显示公历日期、时间、星期、农历日期。首先新建一个ChineseCanlendar类用于实现和农历相关的操作:【ChineseCanlendar.cs】/* * 作者:JeronZhou * 时间:2021-11-01 * 功能:动态数字时钟和日历 */using System;using System.Linq;using System.Globalization;namespace Test2_1{ static public cl
2021-11-01 20:53:24
1388
原创 【C#】实验10
建立项目s10,先创建MySQL数据库,并建立employee职工表,搭建数据环境。再编写一个WinForm程序,设计DataGridView数据控件来显示该表的主要字段内容,同时增加一个性别条件来检索男女职工信息。数据库搭建:SET NAMES utf8mb4;SET FOREIGN_KEY_CHECKS = 0;-- ------------------------------ Table structure for employee-- -------------------------
2021-10-31 12:54:57
890
原创 【C#】实验9
设计项目s9,创建如下图所示的WinForms应用程序。这个“病人管理系统”应接受病人的详细信息,并将病人的记录插入SqlServer或MySQL数据库中。该数据库的结构见下表。窗体设计:数据库设计:在MySQL中建立patient数据库,所用软件为HeidiSQL,该数据库内含四张表:病人数据表P、医生数据表D、科室数据表K、类型数据表L。各表的属性如下图所示:SQL源码:-- 导出 patient 的数据库结构CREATE DATABASE IF NOT EXISTS `p
2021-10-28 15:22:57
1175
原创 【C#】实验8
文章目录s8-1s8-2s8-1设计项目s8-1。设计一个窗体,上面布置一个Picture控件和两个命令按钮(标题为“装载”和“保存”),试按以下功能要求完成设计:(1) 程序运行,单击“装载”按钮,弹出一个文件打开对话框,从中选择一个图像文件,确定后该图像文件内容被装载到Picture控件内显示;(2)Picture控件有图像输出的情况下,单击“保存”按钮,弹出一个文件夹选择对话框,从中选择有效文件夹,确定后Picture控件内容会被保存到该文件夹里,文件命名为pNew.jpg(或bmp)。窗体
2021-10-21 16:41:50
654
原创 【C#】实验5
文章目录s5-1s5-2s5-1设计项目s5-1。 设计一个加法速度测试程序,程序启动后显示出如图所示的运行界面。用户单击“开始”按钮后开始计时,并分别在文本框1、2中随机生成并显示加数和被加数,用户在文本框3中输入答案,按回车键后程序在答案的后面指示对错,并显示出下一道题。一分钟以后程序统计出出题数量和作对的数量。用户单击“结束”按钮退出程序。窗体设计:MainForm.cs:/* * 作者:JeronZhou * 日期: 2021-10-11 * 功能:加法速度测试程序 */us
2021-10-11 17:05:30
828
原创 【C#】实验6
文章目录s6-1s6-2s6-1设计项目s6-1。编写一个程序,用以接受用户输入的两个double类型的值。一个值表示用户想要存放在银行账户中的金额。另一个值表示用户想要从银行账户中提取的金额。创建自定义异常,以确保提取的金额始终小于或等于当前的余额。引发异常时,程序应显示一则错误消息。否则,程序应显示从用户存款中扣除取款额之后的账户余额。MainForm.cs:/* * 作者:JeronZhou * 日期: 2021-10-09 * 功能:创建自定义异常 */using System;
2021-10-10 00:42:12
1422
原创 【C#】实验4
文章目录s4-1s4-2s4-3s4-1设计项目s4-1。创建一个Vehicle类并将它声明为抽象类。在Vehicle类中声明一个NoOfWheels方法 使它返回一个字符串值。创建两个类Car和Motorbike从Vehicle类继承 并在这两个类中实现NoOfWheels方法。在Car类中 应当显示“四轮车”信息 而在Motorbike类中应当显示“双轮车”信息。创建另一个带Main方法的测试类,在该类中创建Car和Motorbike的实例 并在控制台中显示消息。/* * 作者:JeronZho
2021-09-26 14:42:23
1344
原创 【C#】实验3
文章目录s3-1s3-2s3-3s3-4s3-1设计项目s3-1。构建一个类Point,它提供两个公有的构造函数,一个没有参数的Point构造函数和一个有两个double参数的构造函数。另外在该类中提供一个静态方法计算两个点的直线距离,传入参数为两个Point类实例。然后设计一个测试类来对Point类进行使用。/* * 作者:JeronZhou * 日期:2021-09-15 * 功能:点类 */using System;using System.Collections.Generic;
2021-09-26 14:30:37
832
1
原创 【C#】实验2
文章目录s2-1s2-2s2-1设计项目s2-1,要求输出所有的 "水仙花数 ",所谓 "水仙花数 "是指一个三位数,其各位数字立方和等于该数本身。/* * 作者:JeronZhou * 日期:2021-09-14 * 功能:输出所有的水仙花数 */using System;namespace s2_1{ class Program { public static void Main(string[] args) { int num; int ge,shi,b
2021-09-26 14:16:42
361
原创 【C#】实验1
文章目录s1-1s1-2s1-1设计项目s1-1,不断要求用户输入一个数字(假定用户输入的都是正整数),当用户输入q字符的时候显示刚才输入的数字中的最大值。设一个变量int max,初始值为0,用户每输入一次就把用户输入的和max比较一下,如果输入的比max大,则让max等于用户输入。【代码】:/* * 作者:JeronZhou * 日期:2021-09-08 * 功能:不断要求用户输入一个正整数,输出所有输入的数字中的最大值。 */using System;namespace s1
2021-09-26 14:06:18
560
原创 【C++】简易小六壬起卦器
整点有意思的,用cpp写了个简易小六壬起卦器。输入农历的月份、农历日期、当前时辰,即可输出起卦结果。不多说,直接上源码。#include <cstdio>#include <iostream>#include <windows.h>using namespace std;int main(){ cout<<"您好!欢迎使用小六壬起卦器!"<<endl; cout<<"温馨提示:不急不占、无事不占、不动不占"<
2021-09-23 10:45:15
2435
2
原创 用VS Code + iverilog + GTKwave仿真Verilog
文章目录1.VS Code部分2.iverilog部分3.GTKwave部分1.VS Code部分由于我们需要进行Verilog的仿真,所以免不了编辑Verilog的源代码,Verilog的代码编辑器有很多种,这里我选用的是轻量级的VS Code。VS Code中含有Verilog语法的插件,安装插件后在VS Code当中写Verilog的代码会有高亮和缩进,使代码易读且可以检查语法错误。什么?你还没有装VS Code?看看这个吧:VS Code下载安装教程安装好VS Code后,打开VS Co
2021-04-10 11:57:30
10618
5
原创 【数电】常用时序逻辑电路模块总结
文章目录一. 移位寄存器I. D触发器构成的4位移位寄存器II. 双向移位寄存器 74HC194二. 计数器三. 顺序脉冲发生器四. 序列信号发生器五. 时序逻辑电路的设计一. 移位寄存器移位寄存器具有存储代码、移位、数据转换、数值运算、数据处理等功能。I. D触发器构成的4位移位寄存器由边沿触发方式的D触发器组成的4位移位寄存器,第一个触发器的输入端D1接收输入信号,其余的每个触发器输入端D均与前一个触发器的输出端Q相连。其可以实现将原有的代码依次右移1位,利用这个性质还可以实现代码的串行-并行转
2021-01-10 19:59:23
19742
3
原创 【数电】常用组合逻辑电路模块总结
文章目录一. 编码器I. 8线-3线编码器II. 8线-3线优先编码器 74HC148III. 二-十进制优先编码器 74HC147二. 译码器I. 3线-8线译码器 74HC138II. 二-十进制译码器 74HC42III. BCD-七段显示译码器 7448三. 数据选择器I. 二选一数据选择器II. 双4选1数据选择器 74HC153四. 加法器I. 半加器II. 全加器III. 双全加器 74LS183IV. 4位超前进位加法器 74HC283五. 数值比较器I. 1位数值比较器II. 4位数值比较
2021-01-09 18:56:51
29363
2
原创 【数值计算方法】学习笔记
前言本学期需要学一门很重要的专业必修课——数值计算方法。但是,宛如天书的教材、晦涩难懂的PPT、形态各异的公式…这些都不禁让人失去学习动力。几节课上下来,自己深感学的不扎实,需要进行总结与复盘,本篇文章也就运应而生。本篇文章主要记录了我在学习数值计算方法这门课的过程中学习到的概念、公式、例题,以及用Python编写的相关算法代码,通过复盘来巩固所学知识。文章目录前言一.误差1.误差的分类2.绝对误差与绝对误差限3.相对误差与相对误差限4.数值计算中需要注意的问题二.插值1.Lagrange插值2.
2020-11-11 23:39:59
34190
22
原创 【Java】学习笔记2——从小白到入门(技术提升篇)
写在前面上回说到,(不好意思,拿错词了)Java学习笔记1主要是Java中的基础知识。但光有基础显然是不够的,在了解了基础知识之后,就可以开始技术进阶了。本篇博客也将会继续记录我的Java学习历程和心得体会。————————————————————————————————————————————————————2020.6.30 【Day10】...
2020-06-29 15:31:21
1059
2
原创 【Java】学习笔记1——从小小白到小白(基础知识篇)
写在前面之前一直都是使用C、C++和Python,对Java完全没有涉及。作为一个即将大二的CS专业学生,不会这门如此重要和强大的网络编程语言实在有点说不过去(其实是为小学期做准备)。废话不多说,这就开干!创建“Java学习笔记”这个系列的博文的目的有两个:一是记录自己学习Java的点点滴滴,等到我基本学会Java,再回过头来看学习历程,肯定有不一样的收获和感觉。二是把这些博文当做一个可编辑的学习笔记使用,为的是今后能够快速便捷地翻阅查找并补充新知识。———————————————————————
2020-06-21 17:06:42
855
原创 【C语言】学习笔记
文章目录一.基本知识I. C语言的构成II. C程序的生成过程二.数据类型I. 标识符II. 常量III. 变量一.基本知识I. C语言的构成1.源程序:由C语言构成的指令序列,其由函数构成,每个函数完成相对独立的功能。2.每个源程序中必须有且只能有一个主函数,可以放在任何位置,但是程序总是从主函数开始执行。3.函数体:在函数后面用一对花括号括起来的部分。4.每个语句以分号结束,但预处理命令、函数头之后不能加分号。5.注释方法:注释不能加在变量名或关键字中间。1)括在/* 和 */之间,可以
2020-06-18 15:10:16
925
原创 【图论】基于数据集生成的演员合作网络图的简单分析(结果有彩蛋)
刚刚做完图论课的大作业,从中收获了很多东西,最终结果也很有意思。背景:2005年的时候开展了一次图像绘制会议(Graph Drawing conference),期间展示了用互联网电影资料库(IMDb)提供的数据集生成的演员合作网络图。即把每个演员看成一个顶点,如果两个演员在1995年至2005年之间合作拍摄过两次以上的电影,则将他们用一条无向边连接起来,再将不同类型的电影用不同颜色加以区分,从而得出了下面这幅“演员合作网络图”(很是复杂啊!)。当然,为了降低难度,提供给我们使用的是两个经过简化过的
2020-05-27 16:19:16
2610
13
原创 【C++】动态向量容器类DynamicVector
前段时间比较忙,所以好久没更新了。。。。两个月前在学深浅copy的时候接触了动态数组。在之后的练习题当中,动态数组逐渐无法满足难度需求,遂将动态数组升级成了动态向量容器(类似于C++的Vector类)。本来以为只是简单的照葫芦画瓢,但是经过不断地在类中添加功能,动态向量容器类越来越复杂,想来还是有必要完整地梳理总结一下。题目要求:> 实现一个DynamicVector类,要求实现动态向量容器的相关功能。> > 类中需要包含的成员函数有:> > 1、析构函数~Dy
2020-05-20 18:05:52
2851
6
原创 【C++】日期类相减及其“+=”、“-=”运算符的重载
今天做了一道C++课的作业题。题目很好理解,但是编写程序的过程却并没有想象中的简单,主要是相关算法的解决有一定难度(对于我自己而言)。虽然花费了几个小时时间,但最后Accepted的那一刻也真的是神清气爽。题目:实现一个日期类date,要重载两个date类之间的“-”运算以及date类的“+=”、“-=”运算。要求:1.分别输入两个日期(年月日用空格隔开,且第一个日期的时间在第二个日期之前)...
2020-03-17 20:48:13
2098
原创 【C++】复数域内的二次函数系数的求解
题目:按顺序输入6个复数x1,y1,x2,y2,x3,y3的实部、虚部,得到三个点(x1,y1),(x2,y2),(x3,y3),继而得到过这三个点y=ax^2+bx+c的三个系数a,b,c,输出它们的实部、虚部(保留6位小数)。题目保证三个点坐标各不相同。样例输入1:1 0 4 02 0 9 03 0 16 0样例输出1:1.000000 0.0000002.000000 0....
2020-03-17 09:57:26
2383
7
原创 【C++】实现分数类的四则运算及逻辑判断(重载)
题目:【实现一个分数类Fraction】分别输入两个不相等的正分数的分子和分母。要求:1.重载四则运算符+、-、*、/,输出它们进行加减乘除四则运算后的结果。2.重载逻辑运算符==、!=、<、<=、>、>= ,并将它们进行比较判断。若为真,则返回1;若非真,则返回0。从而输出6种逻辑判断结果。样例:输入:1 23 4输出:a= 1/2, b = 3/...
2020-03-15 14:54:14
1852
2
原创 【图论】已知度数列情况下的简单无向图的判断方法
在已知度序列的情况下,如何判断它是否为简单无向图呢?第一步·判断是否为无向图利用握手定理及其推论:1.无向图的顶点度数之和等于边数的两倍。2.对于无向图,有奇数个度的顶点必为偶数个。凡是不满足的,就不是无向图。第二步·判断是否为简单图这里需要用到Havel定理。由于此定理的文字表述过于复杂,故在此只给出方法。1.对已知的度序列进行降序排列(相等的放在一起)。2.假设最大的...
2020-03-06 22:18:10
39365
11
原创 【C++】复数类的四则运算符重载及输入输出重载
题目:实现一个复数类,要求重载加减乘除及输入输出,输出保留两位小数。分别输入两个复数的实部和虚部,依次输出加减乘除后的结果。例:输入:3 47 8输出:10.00+12.00i-4.00-4.00i-11.00+52.00i0.47+0.04i输入:0 05 0输出 (当虚部为0时,可以不输出)5-500程序代码:#include <iostr...
2020-03-05 19:08:05
3538
基于C#的简易文法判别器
2022-04-23
【C#】简易学生记录批量生成器
2021-11-26
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人