汉诺塔!!! Simulate the movement of the Towers of Hanoi puzzle Bonus is possible for using animation eg. if n = 2 A→B A→C B→C if n = 3 A→C A→B C→B A→C B→A B→C A→C
标签: the animation Simulate movement
上传时间: 2017-02-11
上传用户:waizhang
将魔王的语言抽象为人类的语言:魔王语言由以下两种规则由人的语言逐步抽象上去的:α-〉β1β2β3…βm ;θδ1δ2…-〉θδnθδn-1…θδ1 设大写字母表示魔王的语言,小写字母表示人的语言B-〉tAdA,A-〉sae,eg:B(ehnxgz)B解释为tsaedsaeezegexenehetsaedsae对应的话是:“天上一只鹅地上一只鹅鹅追鹅赶鹅下鹅蛋鹅恨鹅天上一只鹅地上一只鹅”。(t-天d-地s-上a-一只e-鹅z-追g-赶x-下n-蛋h-恨)
上传时间: 2013-12-19
上传用户:aix008
此例程基于MDK-ARM(KEIL)开发环境编写,适用于友善之臂mini2440(micro2440)开发板,其它开发环境及ARM处理器也可参考学习。 此例程实现了控制LED1~LED4的功能,并对相关代码进行了必要的注释,便于初学者学习及测试仿真器使用。
上传时间: 2017-07-01
上传用户:水中浮云
一个著名的文本分类数据集,用于测试分类器的性能。是写论文的同志不可或缺的东西。
上传时间: 2017-07-04
上传用户:叶山豪
【问题描述】 在一个N*N的点阵中,如N=4,你现在站在(1,1),出口在(4,4)。你可以通过上、下、左、右四种移动方法,在迷宫内行走,但是同一个位置不可以访问两次,亦不可以越界。表格最上面的一行加黑数字A[1..4]分别表示迷宫第I列中需要访问并仅可以访问的格子数。右边一行加下划线数字B[1..4]则表示迷宫第I行需要访问并仅可以访问的格子数。如图中带括号红色数字就是一条符合条件的路线。 给定N,A[1..N] B[1..N]。输出一条符合条件的路线,若无解,输出NO ANSWER。(使用U,D,L,R分别表示上、下、左、右。) 2 2 1 2 (4,4) 1 (2,3) (3,3) (4,3) 3 (1,2) (2,2) 2 (1,1) 1 【输入格式】 第一行是数m (n < 6 )。第二行有n个数,表示a[1]..a[n]。第三行有n个数,表示b[1]..b[n]。 【输出格式】 仅有一行。若有解则输出一条可行路线,否则输出“NO ANSWER”。
标签: 点阵
上传时间: 2014-06-21
上传用户:llandlu
实验源代码 //Warshall.cpp #include<stdio.h> void warshall(int k,int n) { int i , j, t; int temp[20][20]; for(int a=0;a<k;a++) { printf("请输入矩阵第%d 行元素:",a); for(int b=0;b<n;b++) { scanf ("%d",&temp[a][b]); } } for(i=0;i<k;i++){ for( j=0;j<k;j++){ if(temp[ j][i]==1) { for(t=0;t<n;t++) { temp[ j][t]=temp[i][t]||temp[ j][t]; } } } } printf("可传递闭包关系矩阵是:\n"); for(i=0;i<k;i++) { for( j=0;j<n;j++) { printf("%d", temp[i][ j]); } printf("\n"); } } void main() { printf("利用 Warshall 算法求二元关系的可传递闭包\n"); void warshall(int,int); int k , n; printf("请输入矩阵的行数 i: "); scanf("%d",&k); 四川大学实验报告 printf("请输入矩阵的列数 j: "); scanf("%d",&n); warshall(k,n); }
上传时间: 2016-06-27
上传用户:梁雪文以
#include "iostream" using namespace std; class Matrix { private: double** A; //矩阵A double *b; //向量b public: int size; Matrix(int ); ~Matrix(); friend double* Dooli(Matrix& ); void Input(); void Disp(); }; Matrix::Matrix(int x) { size=x; //为向量b分配空间并初始化为0 b=new double [x]; for(int j=0;j<x;j++) b[j]=0; //为向量A分配空间并初始化为0 A=new double* [x]; for(int i=0;i<x;i++) A[i]=new double [x]; for(int m=0;m<x;m++) for(int n=0;n<x;n++) A[m][n]=0; } Matrix::~Matrix() { cout<<"正在析构中~~~~"<<endl; delete b; for(int i=0;i<size;i++) delete A[i]; delete A; } void Matrix::Disp() { for(int i=0;i<size;i++) { for(int j=0;j<size;j++) cout<<A[i][j]<<" "; cout<<endl; } } void Matrix::Input() { cout<<"请输入A:"<<endl; for(int i=0;i<size;i++) for(int j=0;j<size;j++){ cout<<"第"<<i+1<<"行"<<"第"<<j+1<<"列:"<<endl; cin>>A[i][j]; } cout<<"请输入b:"<<endl; for(int j=0;j<size;j++){ cout<<"第"<<j+1<<"个:"<<endl; cin>>b[j]; } } double* Dooli(Matrix& A) { double *Xn=new double [A.size]; Matrix L(A.size),U(A.size); //分别求得U,L的第一行与第一列 for(int i=0;i<A.size;i++) U.A[0][i]=A.A[0][i]; for(int j=1;j<A.size;j++) L.A[j][0]=A.A[j][0]/U.A[0][0]; //分别求得U,L的第r行,第r列 double temp1=0,temp2=0; for(int r=1;r<A.size;r++){ //U for(int i=r;i<A.size;i++){ for(int k=0;k<r-1;k++) temp1=temp1+L.A[r][k]*U.A[k][i]; U.A[r][i]=A.A[r][i]-temp1; } //L for(int i=r+1;i<A.size;i++){ for(int k=0;k<r-1;k++) temp2=temp2+L.A[i][k]*U.A[k][r]; L.A[i][r]=(A.A[i][r]-temp2)/U.A[r][r]; } } cout<<"计算U得:"<<endl; U.Disp(); cout<<"计算L的:"<<endl; L.Disp(); double *Y=new double [A.size]; Y[0]=A.b[0]; for(int i=1;i<A.size;i++ ){ double temp3=0; for(int k=0;k<i-1;k++) temp3=temp3+L.A[i][k]*Y[k]; Y[i]=A.b[i]-temp3; } Xn[A.size-1]=Y[A.size-1]/U.A[A.size-1][A.size-1]; for(int i=A.size-1;i>=0;i--){ double temp4=0; for(int k=i+1;k<A.size;k++) temp4=temp4+U.A[i][k]*Xn[k]; Xn[i]=(Y[i]-temp4)/U.A[i][i]; } return Xn; } int main() { Matrix B(4); B.Input(); double *X; X=Dooli(B); cout<<"~~~~解得:"<<endl; for(int i=0;i<B.size;i++) cout<<"X["<<i<<"]:"<<X[i]<<" "; cout<<endl<<"呵呵呵呵呵"; return 0; }
标签: 道理特分解法
上传时间: 2018-05-20
上传用户:Aa123456789
传统农业生产不仅受到气候与季节限制,而且严重受天气变化的影响,特别是像北方这样的春冬季节光照时间短、雪雨天气较多的地区,农作物的生长受到很大地限制。温室大棚的出现很好地解决了农业生产中的季节与天气问题,不仅显著的提高了农业的生产效率,而且将农业生产从自然生态束缚中解脱了出来。但是目前的温室大棚对部分环境因素的控制过分依赖于人工干预,而随着智能设备的发展,这样的温室大棚满足不了农业生产技术的智能化、信息化要求。 本文通过分析温室大棚中植物补光灯的应用问题,针对现有补光灯的补光量不准确、光质不纯、节能效果差等缺陷,提出了一种采用补光光源绿色环保、多变幻、寿命长等诸多优点的LED灯具,并结合实际补光需求设计了一款以LED为光源的温室大棚中智能补光控制系统。通过对植物生长所需的光源和光谱进行分析,选择易于被智能化控制的LED灯具,然后对单颗光源特性进行测试与研究,进而设计出不仅满足实际的需求,而且在整体均匀性方面达到最优的补光系统。依据LED的光电特性,利用STM32主控制器产生的PWM(脉冲宽度调制)来控制补光进而实现定质定量的补光。 这一款智能补光控制系统的设计实现了光质可调、光强的检测、智能化调光与控制等目标。设置不同的对照组实验来进行对比,实际测试表明,该系统也达到了预期的差额补光的设计目标,不仅补光效率高,而且操作方便,明显给温室大棚的发展带来了新的契机,同时该系统具有很强的实用性,在温室种植中必将具有广阔的前景。
上传时间: 2022-06-01
上传用户:jiabin
当人体内胰岛素分泌不足或胰岛素作用缺失时会导致血糖浓度偏离正常水平从而引发糖尿病及其并发症。血糖浓度的检测是糖尿病科学诊断的前提。本文针对课题组研制的MEMS血糖传感器用于组织液超滤提取检测的功能需求,研究了三电极MEMS血糖检测传感器微电流检测技术并研制了传感器检测与控制电路。本文主要对检测原理、电路设计与分析、电路测试以及检控系统葡萄糖浓度测试等部分进行了详细研究。首先对MEMS血糖传感器的检测原理进行分析,对辅助传感器产生电流的电路(恒电位电路和信号发生电路)原理图进行设计,对传感器产生的微电流范围进行实验分析。对传感器工作过程中产生的电化学噪声进行研究,提出噪声消减方法,为后续微电流检测电路的设计奠定基础。然后结合检测微电流输出特点及血糖传感器超滤提取动作控制需求,设计了检控系统,由微电流检测系统、人机交互及无线通信、电源系统三大部分组成。为验证微电流检测系统电路设计的正确性,本文借助Multisim仿真软件重点对电路中的恒电位及1/V转换的性能进行分析。此外对电路中的噪声来源进行分析,计算相关噪声并分析对电流检测的影响。对元件布置与布线、接地、电路板漏电防护等方面进行了研究,从而提高电路的抗干扰能力在检控电路研制基础上,本文搭建测试系统,测试电路的静态和动态特性.静态特性准确度、重复性、灵敏度、分辨力、稳定性、零漂等:动态特性包括恒电位电路的电压跟随特性以及检测电路的阶跃响应和频率响应特性。测试结果表明,该检测系统满足设计指标。最后,为测试葡萄糖浓度,将微电流检控电路与MEMS血糖传感器集成,做葡萄糖浓度的响应实验和重复性实验。在测试结果数据处理基础上,建立了葡萄糖浓度预测模型。测试结果表明,通过预测模型得到的检测结果符合临床检测精度要求。
上传时间: 2022-06-18
上传用户:
电机变频控制器,是一种无机械运动的频率调控装置。它把电力配电网50Hz恒定频率的交流电,变成可调频率的交流电,供普通的交流异步电动机使用。对电机具有高效的驱动性能及良好的控制特性。现在变频器在过程控制、提升控制、家电等中得到广泛的应用,而本设计主要是讨论其在家电中的使用。在设计中采用STC12C5410AD作为主控制单片机实现电机变频控制器,使用智能功率模块(SPM)FPAL15SH60对电机进行驱动。控制器能实现20--250Hz信号的输出,可通过手动或自动的方法调节频率,并能显示实时频率。具有输入欠压保护、输出过压过流保护功能和过温监测等功能。工作原理是由单片机产生初始的SPWM控制信号,把取样电压和设定的参考电压相比较得到输出电压与参考电压的误差值,电压误差值反馈到单片机内部进行数据处理,再由单片机对SPWM信号进行修正后输出,从而达到对电机控制。本设计以高性能单片机为电机的控制中心,通过智能功率模块达到对电机的驱动,最终实现对电机的控制。使其在实际使用中达到低功耗,高效率的效果。
上传时间: 2022-07-02
上传用户: