- 博客(76)
- 收藏
- 关注
原创 pycharm+pyside6+desinger实现查询汉字笔顺GIF动图
pycharm+pyside6+desinger编写程序实现查询汉字笔顺GIF动图的功能。程序简介:在文本编辑框中输入一个汉字,单击“查询”按钮,如果程序中含有这个汉字的动图,那么就会在屏幕中进行播放。
2025-01-14 23:46:19 673
原创 【十进制整数转换为其他进制数——短除形式的贪心算法】
在用贪心算法进行十进制整数转二进制数的基础上,经过一段时间的研究,本人又发现两个规律:1、不仅仅十进制整数转二进制可以用贪心算法,十进制转其他进制一样适用;2、可以用短除的形式进行贪心算法转换,使转换更加直观。
2024-12-17 00:28:09 823
原创 m/2个人拉m盏灯后求灯的状态问题
在上一节中介绍了m个人拉m盏灯的问题。下边介绍一下m/2个人拉m盏灯的问题。本题和上一解题目的区别是:上一节的题目是求灯编号i的所有因数为奇数的情况,这个题目是找灯编号i的奇因数为奇数的情况。最终根据分析结果,灯灭的情况分两种,一种是完全平方数,一种是完全平方数的2倍。
2024-07-18 20:33:15 1000
原创 m个人拉m盏灯后求灯的状态问题
m个人拉m盏灯问题,可以转化为求解m以内完全平方数的问题,编号为完全平方数的灯状态与初始状态相同,其他的灯状态与初始状态相反。可以利用求m以内最大完全平方数对应的平方根的方法,再根据这些平方根是连续的自然数,从而找出所有完全平方数对应的平方根,再根据这些平方根,求出所有对应的完全平方数。这种方法效率最高。
2024-07-18 16:10:51 1198
原创 你真的理解补码了吗?
你真的理解补码了码?补码真正的几个含义(1)一个负数的补码等于原码取反(符号位不变)加1,非负数的补码等于原码;(2)减去一个数等于加这个数的相反数的补码;(3)一个负数的反码就是这个数原码的每一位都取反,其中符号位不变,非负数的反码等于原码。
2024-06-06 00:24:31 1402
原创 捋一捋C++中的逻辑运算(一)——表达式逻辑运算
编程中有三种结构,顺序结构、选择结构和循环结构。在选择结构中,需要用到逻辑值来判断程序选择运行的部分。这个逻辑值一般都是一个比较复杂的逻辑表达式运算的结果,用逻辑运算符将关系表达式或逻辑量连接起来的有意义的式子称为逻辑表达式,计算逻辑表达式结果的过程就是逻辑运算。逻辑运算经常与if...else语句或条件表达式搭配使用。
2024-06-04 19:00:06 1975
原创 用贪心算法计算十进制数转二进制数(小数部分)
十进制小数转化二进制小数常用的方法为乘2取整法,这种方法是最基本最常用的,但是计算量大,还容易出错。本文采用贪心算法进行十进制小数转化为二进制小数,对比发现,贪心算法计算量少,准确率较高,不容易算错,也更直观,更好理解和记忆,但是需要我们事先记住一些常用的2^(-n)的值,这样才有助于我们更快更准地计算出结果。
2024-06-01 20:10:39 1333
原创 用贪心算法计算十进制数转二进制数(整数部分)
十进制整数转化二进制数常用的方法为短除反向取余法,这种方法是最基本最常用的,但是计算步骤多,还容易出错。本文采用贪心算法进行十进制整数转化为二进制数,对比发现,贪心算法计算步骤少,准确率也较高,不容易算错,但是需要我们事先记住一些常用的2^n的值,这样才有助于我们更快更准地计算出结果。
2024-06-01 10:18:15 1580
原创 windows系统proteus中Ardunio Mega 2560和虚拟机上Ubuntu系统CuteCom进行串口通信
通过虚拟机上ubuntu系统CuteCom和windows系统proteus 中的ardunio Mega 2560单片机进行串口收发信息,通过CuteCom向单片机发送字符“1”,单片机IO14口的LED灯点亮,发送字符“2”,LED灯熄灭。通过单片机IO15口的带上拉电阻的按键,向CuteCom发送信息,当按键按下,发送“button_down”,当按键抬起,发送“button_up”。
2023-12-10 00:21:03 1465
原创 windows系统和虚拟机上ubuntu系统通过虚拟串口进行通信
本文的目的是实现windows系统和虚拟机上安装的ubuntu通过串口进行通信。为了直观观测串口收发数据的内容,需要在windows系统和ubuntu系统使用串口助手来进行监听。windows系统端用的监听工具是串口助手SSCOM,ubuntu系统端使用的串口助手是CuteCom。CuteCom发送字符"1"和"2",SSCOM可以接收到这两个字符。再通过SSCOM发送字符串"button_up"和"button_down",CuteCom同样可以收到。
2023-12-08 23:51:35 3706
原创 利用proteus实现串口助手和arduino Mega 2560的串口通信
通过串口助手和proteus 中的ardunio Mega 2560单片机进行串口收发信息,通过串口助手向单片机发送字符“1”,单片机IO14口的LED灯点亮,发送字符“2”,LED灯熄灭。通过单片机IO15口的带上拉电阻的按键,向串口助手发送信息,当按键按下,发送“button_down”,当按键抬起,发送“button_up”。
2023-12-07 22:29:54 5425
原创 【ardunio】青少年机器人四级实操代码(2023年9月)
使用超声波传感器和舵机实现迎宾机器人的眼睛和手的功能。大门位于超声波传感器前方15厘米的位置,大门内侧5-15厘米范围为欢送区,外侧15-25厘范围为欢迎区。LED_A位于欢送区,LED_B位于欢迎区,舵机则位于大门处,机器人的主要任务如下:(1)没有客人进出时,舵机位于90度位置,LED_A和LED_B均熄灭;(2)客人经过欢送区时,舵机在30-90度之间循环转动,LED_A闪烁,LED_B均熄灭;(3)客人经过欢迎区时,舵机在90-150度之间循环转动,LED_B闪烁,LED_A均熄灭。
2023-09-23 22:46:07 2019 2
原创 【c++】建模分析《山歌寥哉》之《花妖》为什么是悲剧?
自从刀郎发行了《山歌寥哉》专辑之后,引爆全网。继《罗刹海市》之后,《花妖》又成为新的热点。歌词讲述了一个一对男女相恋无果,双双殉情后转世却错寻了罗盘经,空间上虽投胎在同一地点,时间上却相差了千年,后又辗转多世仍不能相遇,最后只能永远错过的悲剧爱情故事。本人借助数学建模的方法计算出女主等不到男主的概率仅为0.58%,而这么低的概率还是发生了,这就是《花妖》之所以称为悲剧的原因。
2023-09-19 23:51:28 396
原创 【Python】利用python-docx生成word版本学生花名册
可以用python创建word文档,生成一个学生的花名册。生成的过程:先下载第三方依赖包,安装依赖包,然后引入依赖文件,创建docx文件,添加标题,创建表头,创建表格正文,居中填写表头内容、项目行、表格正文。
2023-08-30 16:54:54 651
原创 【C++】做一个飞机空战小游戏(十二)——游戏源代码、音效、图标等资源文件
本节简单介绍一下本游戏中的音效下载网站、音效处理软件,图标生成方法、ico插件链接等资源,并将最终源代码上传。
2023-08-21 13:50:18 646
原创 【C++】做一个飞机空战小游戏(十一)——游戏过关、通关、结束的设置
本节介绍游戏的过关、通关和游戏结束(game over)的相关设置。过关的依据是敌方死亡炮弹的数量,当达到设定数目时,即可通过这一关,当通过最后一关时,即完成通关,如果还未通关时,所有飞机的命已经没了,那游戏就结束了。每一关敌方每波炮弹数量、每关总死亡炮弹数量、炮弹移动速度、炮弹血量、炮弹伤害值都是不一样的,是随着关数的增加而递增的,也就是游戏过关的难度越来越高。本节还实现了游戏信息显示、爆炸音效、飞机开火音效、控制台窗口大小设置等功能。
2023-08-21 01:27:39 590
原创 【C++】做一个飞机空战小游戏(十)——子弹击落炮弹、炮弹与飞机相撞
今天这节介绍实现子弹击落炮弹、炮弹与飞机相撞的效果,增加了飞机的血量属性,炮弹撞击一次掉血三分之一,三次撞击则飞机被炮弹击落。还增加了飞机命数属性,飞机设置了3条命,飞机命数大于0的时候可以按复活键进行复活,如果命为0时,飞机不可复活。还增加了游戏暂停功能,按空格键游戏暂停,再按一次即可恢复游戏。
2023-08-19 19:27:39 1350 1
原创 【C++】做一个飞机空战小游戏(九)——发射子弹的编程技巧
本节主要介绍了飞机发射子弹的实现方法,主要从死亡期间位置、飞机开火后子弹的初始位置、开火后子弹出现的时间、子弹数组的存放技巧、子弹的飞行方向等五个方面进行了介绍。
2023-08-18 22:12:01 1014 1
原创 【C++】做一个飞机空战小游戏(八)——生成敌方炮弹(rand()和srand()函数应用)
本讲介绍如何实现敌方炮弹生成,主要用到了rand()函数搭配srand()函数。除了实现炮弹的x坐标随机化外,还采用了死亡恢复时间随机化的方法,实现了炮弹y坐标的随机化。
2023-08-15 23:37:32 471
原创 【C++】做一个飞机空战小游戏(七)——两组按键同时检测平滑移动(GetAsyncKeyState()函数应用)
利用getch()函数可以实现键盘控制两组方向键控制两个不同颜色、造型的飞机移动,但是实际测试过程中发现,两组方向键盘会相互影响,不能实现两组方向键长按指令,而且移动有卡顿,不平滑。经过查询资料,发现可以利用windows自带的GetAsyncKeyState()函数实现可以同时检测两组按键,并且移动比较平滑。
2023-08-13 13:19:53 1011
原创 【C++】做一个飞机空战小游戏(六)——给两架飞机设置不同颜色(cout输出彩色字符、结构体使用技巧)
随着程序设计的深入,飞机的属性越来越多,就需要构造飞机的结构体,把各项属性都放到飞机结构体中。这样,可以减少声明变量的个数,减少自定义函数的形参。使程序的逻辑性更清晰,代码量更少。本文实现了飞机设置不同颜色,不同造型。将获取按键指令单开了一个线程。
2023-08-07 22:47:27 906
原创 【C++】做一个飞机空战小游戏(五)——getch()控制两个飞机图标移动(控制光标位置)
通过控制光标把光标直接移动到要显示飞机图标的位置,可以避免了频繁输出换行和空格的操作,不会对屏幕上其他的图标产生影响,也消除了光标闪烁的情况。
2023-08-05 13:25:25 627
原创 【C++】做一个飞机空战小游戏(四)——给游戏添加背景音乐(多线程技巧应用)
本文介绍了线程创建的步骤,以及播放音频的方法,在此基础上,编写了在主程序中创建了循环播放游戏背景音乐的线程,实现了通过按键控制飞机移动和背景音乐循环播放同时进行的功能。
2023-08-05 00:02:16 1632 4
原创 【c++】rand()随机函数的应用(二)——舒尔特方格数字的生成
本例提出了一种新的方法实现不同维数舒尔特方格的生成方法,需要用到rand()、srand()函数,在算法上采用动态取模方法。
2023-08-03 18:18:21 1281
原创 【c++】rand()随机函数的应用(一)——rand()函数详解和实例
c++语言中可以用rand()函数生成随机数,今天来探讨一下rand()函数的基本用法和实际应用。本系列文章共分两讲,今天主要介绍一下伪随机数生成的原理,以及在伪随机数生成的基础上,生成随机数的技巧,下一讲主要介绍无重复随机数生成的方法和舒尔特方格数字生成的实例。本文采用循序渐进的方式逐步介绍,并且贴上了实际测试的代码和结果。有不详和不实之处,请各位大神批评指正。
2023-08-02 22:39:54 18716 3
原创 【C++】做一个飞机空战小游戏(三)——getch()函数控制任意造型飞机图标移动
模块化程序设计是指在进行程序设计时将一个大程序按照功能划分为若干小程序模块,每个小程序模块完成一个确定的功能,并在这些模块之间建立必要的联系,通过模块的互相协作完成整个功能的程序设计方法。本例程采用模块化设计,重新优化了键盘控制飞机图标移动的初步程序,程序主体由5个功能模块组成:初始化、清屏、显示飞机图标、获取键盘指令、计算飞机新的坐标。本例程自定义了功能函数库和头文件,头文件中还采用了枚举和结构体数据类型,也采用了外部全局变量。
2023-07-30 20:49:21 1135
原创 【C++】做一个飞机空战小游戏(二)——利用getch()函数实现键盘控制单个字符移动
【C++】做一个飞机空战小游戏(二)——利用getch()函数实现键盘控制图标移动在一文中介绍了如何利用getch()获得键盘码和各个键盘符号的码值。今天继续介绍,利用wsad键和方向键两种方式,实现控制图标的移动。
2023-07-27 17:09:42 1728
原创 【C++】做一个飞机空战小游戏(一)——使用getch()函数获得键盘码值
最近想用c++做一个小游戏,游戏的主要内容是利用键盘控制一个飞机躲避和击落屏幕顶部随机掉落敌方炮弹,飞机被敌方炮弹击中则减掉一条命,飞机也可以发射炮弹反击,每击落一个敌方炮弹,则有相应积分。游戏的思路就是利用w、s、a、d四个按键来控制飞机的移动方向,w——向上,s——向下,a——向左,d——向右;按空格键飞机发射反击炮弹。那么程序如何知道键盘哪个键被按下了呢?c++中getch()这个函数可以实现这个功能,当键盘某个按键(或某个组合按键)被按下时,利用这个函数可以获得该按键(组合)值。
2023-07-26 21:13:22 2164 1
原创 PS CS6视频剪辑基本技巧(五)添加logo、动画和画中画
在第四讲中,已经使用了静态logo的技巧,这一讲做一个详细的介绍,还可以实现动态logo的效果。CS6中不能直接加载gif格式图片,即使加载进来了,也是静态的图片,那么怎么实现动画的效果呢?还有视频画中画又是怎么实现的呢?下边就把这三个问题进行一下介绍。
2022-12-24 20:06:02 2446 1
原创 PS CS6视频剪辑基本技巧(四)字幕居中和滚动字幕
在第三讲中介绍了添加字幕的方法,但有的读者可能会发现,字幕模板设定的字幕起始是固定不变的,假如设定的起始位置是最左边,那么无论一行字多有多少个,都是从最左边开始排。那么有没有办法可以让字幕可以批量居中呢,无论字数多少都自动居中放置?PS CS6本身没有这个功能,但是可以使用其他的方法来实现。电视剧和电影片尾会动态滚动显示职员表,那么这个功能又怎么实现呢?下边来介绍一下批量字幕居中和滚动字幕的实现的方法。
2022-12-23 19:18:01 2425
原创 PS CS6视频剪辑基本技巧(三)添加声音和字幕
这一讲介绍添加声音和字幕,给上一讲剪接的视频添加一个背景音乐和解说字幕。字幕制作采用定义变量的方法进行批量生成。
2022-12-22 21:37:16 3668
原创 PS CS6视频剪辑基本技巧(二)视频剪接和添加图片
上一讲,介绍了PS CS6可以实现视频剪接、添加图片、添加声音、添加字幕、添加logo、添加动画等6种功能,今天这讲介绍一下视频剪接和添加图片这两个功能。
2022-12-21 12:23:12 3224
原创 PS CS6视频剪辑基本技巧(一)CS6可以实现的视频剪辑功能
本人略懂PS,所以就地取材学了一下用PS CS6制作视频,现在把学习到的基本技巧给大家分享一下。本人非专业人士,所用软件也只是最普通的软件,没有用到更加专业的影视剪辑工具,本人所用技巧也属于入门级,只能应付一般的非专业需求,希望专业人士多多指导和赐教。我们制作视频的目的,是以录制好的视频素材为基础,把相关的图片、声音、字幕、动画等其他多种素材,进行剪切、拼接、合成等操作,与素材视频合到一起,剪辑成一个效果更佳的视频成品。这一讲,主要介绍一下PS CS6可以实现的视频剪辑的功能。
2022-12-15 00:07:56 3558
原创 MySQL数据库备份与恢复
在项目的开发过程中数据库的备份是非常重要的,为了防止数据库受到破坏,造成不可估量的损失,所以一定要进行数据库的备份,并且需要掌握数据库恢复方法,在发生数据库损坏的时候,能快速进行数据库恢复。本文主要介绍MySQL数据表备份与恢复主要的三种方法,包括直接复制数据库、使用命令行、使用MySQL Workbench工具。
2022-10-24 21:48:19 6923 2
原创 MySQL Workbench安装及使用
MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。MySQL是一种关系型数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。
2022-10-16 20:41:59 19468 4
原创 【C语言】利用队列的思维理解移位运算符和移位函数
在c语言中,尤其是单片机的C51中,移位运算操作很常见。实现移位操作的方法有两种:一是利用移位运算符,二是利用移位函数。移位运算符,是系统内置的运算操作,编译编译不用包含相关头文件;而移位函数编译要包含intrins.h头文件。移位运算符操作,移除位后舍弃,循环移位函数移出位后不舍弃,而是从另一端补位进来。
2022-10-14 09:39:12 5691 9
原创 工业动画制作过程介绍(二)——两张静态简笔画生成动画
在文章《工业动画制作过程介绍(一)——静态简笔图画的制作》中介绍了如何将一张机械照片转化为简笔画的过程,今天介绍把第二张机械图片转化为简笔画的过程,并且把两张简笔画形成一个动画的过程。
2022-10-13 22:26:46 1053 3
原创 Keil+T5L智能屏——让单片机图形化界面开发变得如此简单
用单片机做过嵌入式开发的朋友应该都深有体会,与后台的控制算法相比,前台的图形化界面开发也占了很大一部分精力。嵌入式的图形化开发,最好能借助第三方的软硬件相结合的智能屏,界面的设计由组态软件来实现,界面留有和后台c程序交互的接口,这样我们就可以借助第三方的力量,快速完成界面设计,从而把更多的精力留在后台的控制程序上。前些天小编接触到一款T5L迪文智慧屏,刚开始用,效果如何不予评论,不为某产品站台,也不刻意抹去人家的名姓,只把实现步骤做一介绍。
2022-10-12 23:25:49 6861 6
原创 STM32F4单片机读取AT24c02
本例是stm32f407读写AT24C02的操作。AT24C02是单独的一个芯片,用于存放擦除次数较多的数据读写。AT24C02支持I2C总线数据传送协议。AT24C02这种EEPROM不能用来存程序,通常单片机的指令寻址不能到这个区域。EEPROM的擦写次数应有百万次,而且可以按字节擦写。EEPROM在一个PAGE内是可以任意写的,可以按字节擦除。所以,如果有频繁的擦除需求,比如要记录某个实时变化的数据,那么就需要把数据存到EEPROM中。
2022-10-11 23:27:28 2095 4
原创 工业动画制作过程介绍(一)——静态简笔图画的制作
在工业控制系统中,为了使控制界面更加人性化,需要制作各种简单的动画 来显示机器的运行状态,那么对于非工业设计等设计类的专业者来说,制作这些动画并非易事,而网上有没有可用得资源。那么怎么办呢,非专业人士只好采用非专业的方法,程序员不容易啊,啥都得会干,有条件要干,没条件创造条件也要干。动画其实是由几张静态图按一定顺序循环显示而来的。下边就简单介绍一下使用常用的软件 AutoCAD 和 PS 把工业照片转化成工业静态简笔图画的步骤。
2022-10-10 12:02:28 2373 4
飞机空战小游戏planewar(dev-c++开发纯字符输出模式)
2023-08-21
ps制作ico所需插件ICOFormat
2023-08-21
米思齐scratch编程控制交通红绿灯
2022-10-09
Android 从txt文件读数据生成曲线图源码
2022-10-06
Android例程:可调速可正反转的齿轮
2022-10-05
scratch实例——女孩与篮球
2022-10-03
Python统计学习成绩
2022-10-02
Python统计居民消费支出
2022-10-02
利用SQLiteOpenHelper实现SQLite数据的写入和查询
2022-09-16
利用JDBC读取mysql数据展示在listview
2022-09-16
scratch编程——小熊往返行走发出叫声
2022-09-14
利用JDBC实现注册用户账号和登录功能Android源码
2022-09-13
TextView Html.fromHtml ScrollView——可追加自动显示最后行
2022-09-06
基于阿里云物联网平台的Android即时聊天app源码
2022-09-06
Android studio版阿里云物联网两台设备之间通信源代码(简单易懂)
2022-09-03
Android studio版阿里云物联网平台设备接入源代码(简单易懂)
2022-09-01
TA创建的收藏夹 TA关注的收藏夹
TA关注的人