Location:
Search - c2-2.h c2-2
Search list
Description: #include\"c1.h\"
typedef int ElemType
#include\"c2-2.h\"
#include\"bo2-4.cpp\"
void MergeList_CL(LinkList &La,LinkList Lb)
{
LinkList p=Lb->next
Lb->next=La->next
La->next=p->next
free(p)
La=Lb
}
Platform: |
Size: 38473 |
Author: 冰河 |
Hits:
Description: 骑士遍历问题。原创代码。通过测试的。
--
在一个标准8×8的国际象棋棋盘上,棋盘中有些格子是可能有障碍物的。已知骑士的初始位置和目标位置,你的任务是计算出骑士最少需要多少步可以从初始位置到达目标位置。有障碍物的格子当然不可能到达。
标准的8×8的国际象棋棋盘中每一个格子可以用唯一的编号确定。行用1~8这8个数字依次表示,列用“a”~“h”这8个字母依次表示。例如下图(a)的骑士所在位置(图中有n的格子)的编号为“d4”(注意“d”和“4”之间没有空格)。
我们知道国际象棋中的骑士可以按“L”路线移动(一个方向走2个格子,接着垂直方向走一个格子)。因此,如图(a)所示的骑士(位于d4),可以到达位置c2,b3,b5,c6,e6,f5,f3和e2(图中有“x”标记的格子)。此外,骑士不能移出棋盘。
骑士可以按照移动规则自由地在棋盘上没有障碍物的格子中移动。图(b)给出了一个骑士移动的例子,也就是输入样例中第一组数据对应的例子。初始格子用“n”标记,目标格子用“N”标记,有障碍物的格子用“b”标记。一个可行的移动序列在图中用数字标记出来(a1,b3,a5,c6,e5,g4,h2,f1)。总共需要7步才能完成。事实上,这也是最少的步数了。
Platform: |
Size: 31326 |
Author: 小禾 |
Hits:
Description: 该程序可实现工程上三面视图变换及轴侧图变换;
程序介绍(含数据文件)
一.实现步骤
1.从数据文件中读入立体的顶点数、面数、面上顶点数;读入顶点表DJ(即点集),面表SF。
2.初始化V面、H面、W面、正轴侧、斜二侧等投影变换矩阵.
3.调用矩阵相乘函数,计算DJ*T,结果存放到点集矩阵C中。
其中DJ为立体的点集矩阵;
T为V面、H面、W面、正轴侧、斜二侧等投影变换矩阵.
4.平移变换后的图形,使其全部移到当前坐标系的第三象限.见步骤1
5.编写函数Trans_3D:
1)调用步骤2实现点集矩阵DJ与投影变换矩阵T相乘,结果放到点集矩阵C1.
2)调用步骤4,将图形平移
3)调用步骤2,实现点集矩阵C1与关于原点对称的变换矩阵相乘,结果放到
点集矩阵C2.
4)调用画立体函数Line_3D绘制变换后投影图
6.函数Trans_2D,完成一个具体变换.
7.编写函数Draw3DView,调用Trans_3D函数,实现所有投影变换.
Trans_3D(dj,tv) //V面投影变换
Trans_3D(dj,th) //H面投影变换
Trans_3D(dj,tw) //W面投影变换
Trans_3D(dj,tzx) //正轴侧投影变换
Trans_3D(dj,twx) //斜二侧投影变换
Platform: |
Size: 1453 |
Author: 保文星 |
Hits:
Description: (1)Msls分三步对系统和噪声模型进行辨识,采用脉冲序列作为辅助系统模型,用 计算输出数据 ;用原输出数据 计算 ,用递推最小二乘方法分别对系统参数和模型参数进行估计。
(2)M.dat,wnoise1.dat分别为M和白噪声序列。Wnoise1.dat的长度为700,wnoise2.dat的长度为1000。Msls6.c为N=600的程序,Msls8.c为N=800的程序。
(3)程序运行后,生成的两个h文件为产生的脉冲响应函数。Msls6.dat为msls6.c的参数估计结果,msls8.dat为msls8.c的参数辨识结果。分别如下所示:
a1=0.906331 a2=0.160170 a3=0.025525 b1=0.704475 b2=-1.497551 c1=1.009114 c2=0.446890
a1=0.906347 a2=0.159066 a3=0.024650 b1=0.700720 b2=-1.493327 c1=1.008787 c2=0.425714
(4)由数据结果可以看出,采用msls辨识方法估计精度要比els法的估计精度差一些。尤其是噪声参数c2的估计误差不在1%以内。这是由于msls法计算上较为简便,计算上的简化就带来了估计精度上的误差。由N=600和N=800相比较,可以看出当N增大时,误差有所减小。理论上当N趋于无穷时, 。
Platform: |
Size: 28560 |
Author: 陈栋 |
Hits:
Description: 这个程序是模仿Windows中的扫雷小游戏制作的,该程序只是实现了扫雷游戏的主体部分,诸如计分、升级部分都没有做。这个程序可以作为初学者学习C语言绘图和游戏的实例。
该程序在Turbo C2.0 下编译通过
由于扫雷游戏是用鼠标操作的,而Turbo C中提供的鼠标驱动程序在Windows xp下不可用,所以我随源程序提供了一个鼠标驱动的头文件,须将将该头文件复制到Turbo C2.0 的安装目录下的“include”文件夹中方可编译或运行,也可自行修改原文件使之包含该投文件。
注:该鼠标驱动程序是我在网上找到的,其出处我已无法考证,如果侵犯了作者的权利还请作者与我联系。
由于在我的电脑上Turbo C图形环境下显示数字会有问题(估计是系统问题),所以程序中雷周围的数字1-8我用a-h代替,看不顺眼的可以自己修改原程序。
Platform: |
Size: 4096 |
Author: |
Hits:
Description: #include"c1.h"
typedef int ElemType
#include"c2-2.h"
#include"bo2-4.cpp"
void MergeList_CL(LinkList &La,LinkList Lb)
{
LinkList p=Lb->next
Lb->next=La->next
La->next=p->next
free(p)
La=Lb
}-# Include c1.h typedef int ElemType# Include c2-2.h# Include bo2-4.cpp void MergeList_CL (LinkList
Platform: |
Size: 38912 |
Author: 冰河 |
Hits:
Description: 骑士遍历问题。原创代码。通过测试的。
--
在一个标准8×8的国际象棋棋盘上,棋盘中有些格子是可能有障碍物的。已知骑士的初始位置和目标位置,你的任务是计算出骑士最少需要多少步可以从初始位置到达目标位置。有障碍物的格子当然不可能到达。
标准的8×8的国际象棋棋盘中每一个格子可以用唯一的编号确定。行用1~8这8个数字依次表示,列用“a”~“h”这8个字母依次表示。例如下图(a)的骑士所在位置(图中有n的格子)的编号为“d4”(注意“d”和“4”之间没有空格)。
我们知道国际象棋中的骑士可以按“L”路线移动(一个方向走2个格子,接着垂直方向走一个格子)。因此,如图(a)所示的骑士(位于d4),可以到达位置c2,b3,b5,c6,e6,f5,f3和e2(图中有“x”标记的格子)。此外,骑士不能移出棋盘。
骑士可以按照移动规则自由地在棋盘上没有障碍物的格子中移动。图(b)给出了一个骑士移动的例子,也就是输入样例中第一组数据对应的例子。初始格子用“n”标记,目标格子用“N”标记,有障碍物的格子用“b”标记。一个可行的移动序列在图中用数字标记出来(a1,b3,a5,c6,e5,g4,h2,f1)。总共需要7步才能完成。事实上,这也是最少的步数了。 -err
Platform: |
Size: 30720 |
Author: 小禾 |
Hits:
Description: (1)Msls分三步对系统和噪声模型进行辨识,采用脉冲序列作为辅助系统模型,用 计算输出数据 ;用原输出数据 计算 ,用递推最小二乘方法分别对系统参数和模型参数进行估计。
(2)M.dat,wnoise1.dat分别为M和白噪声序列。Wnoise1.dat的长度为700,wnoise2.dat的长度为1000。Msls6.c为N=600的程序,Msls8.c为N=800的程序。
(3)程序运行后,生成的两个h文件为产生的脉冲响应函数。Msls6.dat为msls6.c的参数估计结果,msls8.dat为msls8.c的参数辨识结果。分别如下所示:
a1=0.906331 a2=0.160170 a3=0.025525 b1=0.704475 b2=-1.497551 c1=1.009114 c2=0.446890
a1=0.906347 a2=0.159066 a3=0.024650 b1=0.700720 b2=-1.493327 c1=1.008787 c2=0.425714
(4)由数据结果可以看出,采用msls辨识方法估计精度要比els法的估计精度差一些。尤其是噪声参数c2的估计误差不在1%以内。这是由于msls法计算上较为简便,计算上的简化就带来了估计精度上的误差。由N=600和N=800相比较,可以看出当N增大时,误差有所减小。理论上当N趋于无穷时, 。
-err
Platform: |
Size: 276480 |
Author: 陈栋 |
Hits:
Description: /// /// /// /// /// /// /// /////
#include<stdio.h>
typedef struct Complex
{double shi
double xu
}Complex
void CreatComplex(Complex &c,double a,double b)
{c.shi=a
c.xu=b
}
void AddComplex(Complex &sum,Complex c1,Complex c2)
{sum.shi=c1.shi+c2.shi
sum.xu=c1.xu+c2.xu
}
void SubComplex(Complex &sub,Complex c1,Complex c2)
{sub.shi=c1.shi-c2.shi
sub.xu=c1.xu-c2.xu
}
void MulComplex(Complex &mul,Complex c1,Complex c2)
{mul.shi=c1.shi*c2.shi-c1.xu*c2.xu
mul.xu=c1.shi*c2.xu+c1.xu*c2.shi
}
void DivComplex(Complex &div,Complex c1,Complex c2)
{
div.shi=(c1.shi*c2.shi-c1.xu*(-c2.xu))/(c2.shi*c2.shi-c2.xu*(-c2.xu))
div.xu=(c1.shi*(-c2.xu)+c1.xu*c2.shi)/(c2.shi*c2.shi-c2.xu*(-c2.xu)) -///////////////////////////////////////////////
#include<stdio.h>
typedef struct Complex
{double shi
double xu
}Complex
void CreatComplex(Complex &c,double a,double b)
{c.shi=a
c.xu=b
}
void AddComplex(Complex &sum,Complex c1,Complex c2)
{sum.shi=c1.shi+c2.shi
sum.xu=c1.xu+c2.xu
}
void SubComplex(Complex &sub,Complex c1,Complex c2)
{sub.shi=c1.shi-c2.shi
sub.xu=c1.xu-c2.xu
}
void MulComplex(Complex &mul,Complex c1,Complex c2)
{mul.shi=c1.shi*c2.shi-c1.xu*c2.xu
mul.xu=c1.shi*c2.xu+c1.xu*c2.shi
}
void DivComplex(Complex &div,Complex c1,Complex c2)
{
div.shi=(c1.shi*c2.shi-c1.xu*(-c2.xu))/(c2.shi*c2.shi-c2.xu*(-c2.xu))
div.xu=(c1.shi*(-c2.xu)+c1.xu*c2.shi)/(c2.shi*c2.shi-c2.xu*(-c2.xu))
Platform: |
Size: 1024 |
Author: xiaohui |
Hits:
Description: #include <string.h>
#include <stdio.h>
/* ======================================================================== */
/* MEM_COMPARE -- Compare two memory images and output a detailed dump if */
/* the images differ. */
/* ======================================================================== */
int mem_compare(const void *r1, const char *n1,
const void *r2, const char *n2, int len)
{
unsigned char *c1, *c2
int i, j, k, total, skip
unsigned addr
char buf[80]
const char hex[16] = "0123456789ABCDEF"
DSP边缘处理-#include <string.h>
#include <stdio.h>
/* ========================================================================*/
/* MEM_COMPARE-- Compare two memory images and output a detailed dump if */
/* the images differ. */
/* ========================================================================*/
int mem_compare(const void*r1, const char*n1,
const void*r2, const char*n2, int len)
{
unsigned char*c1,*c2
int i, j, k, total, skip
unsigned addr
char buf[80]
const char hex[16] = "0123456789ABCDEF"
Platform: |
Size: 2048 |
Author: 张志强 |
Hits:
Description: VC/C++源码,随书源码,C语言《数据结构》全书全部源代码,随书源码下载,部分源码说明: c1-1.h 采用动态分配的顺序存储结构,Triplet类型是ElemType类型的指针,存放ElemType类型的地址; bo2-7.c 多项式(存储结构由c2-6.h定义)的基本操作及算法2.22、2.2...
运行环境:Windows/Visual C/C++
-The VC/C++ source, with the source book, C language data structure book is full source code download with the source book, part of the source code Description: c1-1.h dynamically allocated sequential storage structure Triplet type is ElemType pointer Type the address of the store ElemType bo2 7.c polynomial (the storage structure by c2-6.h defined) basic operations and algorithms 2.22,2.2 ... operating environment: Windows/Visual C/C++
Platform: |
Size: 3324928 |
Author: 李美争 |
Hits:
Description: 一个d阶多项式有如下形式:
cdxd+cd− 1xd− 1+cd− 2xd− 2…+c0
其中,cd≠0,指数都是非负数。每一个cixi是多项式中的一项。
设计一个C++的模板类 Polynomial<T>,T给出系数的类型,要求能够实现多项式的表示和运算。Polynomial类应该包括私有变量degree,和其他需要的变量。对多项式的表示要求用线性表的形式,例如(c0,c1,c2,…,cd)表示系数表。并设计以下成员函数和操作:
(a) Polynomial(),创建零阶多项式,即构造函数
(b) Degree(),返回多项式的阶数degree
(c) Input(),输入多项式,指数升序依次输入每一项的指数和系数。例如输入: 0 c0 1 c1 2 c2…d cd。重载>>完成输入。
(d) Output(),输出多项式,和输入的格式相同。重载<<完成输出。
(e) Add(b),和b多项式相加,并返回结果多项式。重载+。
(f) Subtract(b),和b多项式相减返回结果多项式。重载-。
(g) Multiply(b),和b多项式相乘返回结果多项式。重载*。
(h) Value(x),返回x代入多项式的值。重载( ),例如对于多项式对象P, P(x)能够返回代入x的多项式值。
-A d-order polynomial has the following form:
cdxd+ cd-1xd-1+ cd-2xd-2 ...+ c0
Which, cd ≠ 0, index are non-negative. In each one of the polynomial cixi.
Design template a C++ class Polynomial <T>, T given coefficient type, the request can be realized and computing polynomial representation. Polynomial class should include the private variable degree, and other variables needed. Requires the polynomial representation of the linear form of tables, such as (c0, c1, c2, ..., cd) represents the coefficient table. And to design and operate the following member functions:
(a) Polynomial (), to create the zero-order polynomial, the constructor
(b) Degree (), return to the order of the polynomial degree
(c) Input (), the input polynomial, exponential in the ascending order of the index and enter each one factor. For example, enter: 0 c0 1 c1 2 c2 ... d cd. Overloaded >> complete the entry.
(d) Output (), output of the polynomial, and input the same format. Overloaded <<
Platform: |
Size: 478208 |
Author: 酉永松 |
Hits:
Description: LCD1602相关资料
//M16_8MHZ_20090304
/************************宏定义******************************/
#ifndef __LCD1602_H
#define __LCD1602_H
#include <iom16v.h>
#include <macros.h>
#define uint unsigned int
#define uchar unsigned char
#define LCD1602_EN_PORT PORTA
#define LCD1602_RW_PORT PORTA
#define LCD1602_RS_PORT PORTA
#define LCD1602_DATA_PORT PORTA
#define LCD1602_EN (1 << PA0)
#define LCD1602_RW (1 << PA1)
#define LCD1602_RS (1 << PA2)
#define LCD1602_DATA 0xf0
//DATA必须为连续的端口高四位
#define LCD1602_EN_DDR DDRA
#define LCD1602_RW_DDR DDRA
#define LCD1602_RS_DDR DDRA
#define LCD1602_DATA_DDR a DDRA
#define LCD1602_DATA_PIN PINA
// uchar c1[8] = {0x08,0x0f,0x12,0x0f,0x0a,0x1f,0x02,0x02}, //年
// c2[8] = {0x0f,0x09,0x0f,0x09,0x0f,0x09,0x0b,0x11}, //月
// c3[8] = {0x0f,0x09,0x09,0x09,0x0f,0x09,0x09,0x0f} //日
-LCD1602 relevant information// M16_8MHZ_20090304 /************************ macro definition****************************** /# ifndef __ LCD1602_H# define __ LCD1602_H# include <iom16v.h># Include <macros.h># Define uint unsigned int# define uchar unsigned char# define LCD1602_EN_PORT PORTA# define LCD1602_RW_PORT PORTA# define LCD1602_RS_PORT PORTA# define LCD1602_DATA_PORT PORTA# define LCD1602_EN (1 < < PA0)# define LCD1602_RW (1 < < PA1)# define LCD1602_RS (1 < < PA2)# define LCD1602_DATA 0xf0// DATA must be contiguous ports high four# define LCD1602_EN_DDR DDRA# define LCD1602_RW_DDR DDRA# define LCD1602_RS_DDR DDRA# define LCD1602_DATA_DDR a DDRA# define LCD1602_DATA_PIN PINA// uchar c1 [8] = {0x08, 0x0f, 0x12, 0x0f, 0x0a, 0x1f, 0x02, 0x02},// Year// c2 [8] = {0x0f, 0x09, 0x0f, 0x09, 0x0f, 0x09, 0x0b, 0x11},// month// c3 [ 8] = {0x0f, 0x09, 0x09, 0x09, 0x0f, 0x09, 0x09, 0x0f} // Day
Platform: |
Size: 364544 |
Author: feiniao200201 |
Hits: