20101202《计算机辅助设计》实验报告-矿业采矿08级1
- 格式:doc
- 大小:508.00 KB
- 文档页数:10
中国矿业大学实验报告课程________________实验名称_______________第页共页系别_________________________________ 实验日期年月日专业班级________________组别_____________ 实验报告日期年月日姓名________________学号_____________ 报告退发 ( 订正、重做 )一.题目链表(多项式加法)及二叉树应用(二叉树的遍历、二叉排序树的生成)二.环境Windows XP操作系统,VC6.0三.逻辑框图二叉树的遍历先序遍历中序遍历后序遍历二叉排序树的生成四.程序源代码#include <malloc.h>#include <stdio.h>typedef struct node{ int coef,exp;struct node *next;}JD;void add_poly(JD *pa,JD *pb){ JD *p,*q,*u,*pre;int x;p=pa->next;q=pb->next;pre=pa;while((p!=NULL) && (q!=NULL)){ if(p->exp<q->exp){ pre=p; p=p->next;}else if(p->exp==q->exp){ x=p->coef+q->coef;if(x!=0){ p->coef=x; pre=p;}else { pre->next=p->next; free(p);} p=pre->next;u=q;q=q->next;free(u);}else{ u=q->next;q->next=p;pre->next=q;pre=q; q=u;}}if(q!=NULL)pre->next=q;free(pb);}JD* dlbjl(int a[],int n){JD *s,*h;int i;h=(JD*)malloc(sizeof(JD));h->coef=h->exp=-1;h->next=NULL;for(i=n;i>0;i--){s=(JD*)malloc(sizeof(JD));s->coef=a[2*i-2];s->exp=a[2*i-1];s->next=h->next;h->next=s;}return (h);}void dlbxs(JD *h){ JD *p;p=h->next;while(p!=NULL){ printf("%d,%d\t",p->coef,p->exp);p=p->next;}printf("\n");}void main(){ static int a[]={7,0,3,1,9,8,5,17}; static int b[]={8,1,22,7,-9,8};JD *heada,*headb;int na=4,nb=3;heada=dlbjl(a,na);dlbxs(heada);headb=dlbjl(b,nb);dlbxs(headb);add_poly(heada,headb);dlbxs(heada);}二叉树的遍历#include <malloc.h>#include <stdio.h>typedef struct node{ char data;struct node *lchild,*rchild;}JD;void preorder(JD *bt){ if(bt!=NULL){ printf("%c ",bt->data);preorder(bt->lchild);preorder(bt->rchild);}}void inorder(JD *bt){ if(bt!=NULL){ inorder(bt->lchild);printf("%c ",bt->data);inorder(bt->rchild);}}void postorder(JD *bt){ if(bt!=NULL){ postorder(bt->lchild);postorder(bt->rchild);printf("%c ",bt->data);}}JD *crt_bt_pre(JD *bt){ char ch;printf("ch=");scanf("%c",&ch);getchar();if(ch==' ') bt=NULL;else{ bt=(JD *)malloc(sizeof(JD));bt->data=ch;bt->lchild=crt_bt_pre(bt->lchild); bt->rchild=crt_bt_pre(bt->rchild); }return(bt);}void main(){ JD *head=NULL;head=crt_bt_pre(head);preorder(head);printf("\n");inorder(head);printf("\n");postorder(head);printf("\n");}二叉排序树的生成#include<iostream>using namespace std;struct tree{int data;tree *right,*left;};class Btree{tree *root;public:Btree(){root=NULL;}void create_btree(int);void display(){inorder(root);cout<<endl;}void inorder(tree *);};void Btree::create_btree(int t) {tree *newnode=new tree;newnode->data =t; newnode->left =NULL; newnode->right =NULL;if(root==NULL){root=newnode;}else{tree *back;tree *current;current=root;while(current!=NULL){back=current;if(current->data>t) current=current->left;else current=current->right ; }if(back->data>t)back->left =newnode;else back->right =newnode;}}void Btree::inorder (tree* tmp) {if(tmp!=NULL){inorder(tmp->left);cout<<tmp->data<<" ";inorder(tmp->right );}}int main(int argc, char* argv[]) {Btree A;int arr[]={6,4,2,15,12,18,9,11}; cout<<"建立排序二叉树顺序:"<<endl; for(int i=0;i<8;i++){cout<<arr[i]<<" ";A.create_btree(arr[i]);}cout<<endl<<"中序遍历序列:"<<endl;A.display ();return 0;}五.实验数据及结果分析链表(多项式加法)二叉树遍历二叉树排序六.总结线性链表是一种很有效的存储方式,它利用了指针类型变量,使相关操作得到简化。
计算机辅助设计结课报告学院地球科学与工程学院姓名11111111111班级11111111111学号11111111111指导教师李俊付目录一、作图内容 (3)二、作图目的 (3)三、作图步骤 (3)1、创建新文件 (3)2、绘制标准层平面图 (4)3、绘制首层平面图和顶层平面图 (9)4、绘制楼梯剖面图 (10)5、绘制踏步大样图 (13)6、绘制扶手大样图 (15)8、整体图纸绘制效果 (18)四、实验心得 (19)一、作图内容现浇钢筋混凝土平行双跑楼梯(梯间长度5.6 m,梯间宽度2.7 m)首层平面图,标准层平面图,顶层平面图,剖面图,细部大样图二、作图目的把握AutoCAD用于工程制图的基本操作,了解工程图纸绘制的格式与要求,能够用AutoCAD绘制二维的工程图纸。
三、作图步骤1、创建新文件打开Auto CAD,创建新文件,确定图幅大小,图纸比例,图层设置。
在这里我们画一张二号图,平面图和剖面图用1:50的比例,细部大样图视图纸剩余大小来定。
2、绘制标准层平面图(1)确定梯间尺寸,门窗尺寸,用直线命令画出墙线,窗线(2)切换图层到踏步上,打开正交命令,执行直线命令l,画出一个直角梯形,如下图(3)将如下选定的直线打断,执行打断命令br,选定你要打断的第一个点,和第二个点(建议两点直接的距离尽量小)。
(注意:如果你想指定在某点断开,就按F,空格确定后,指定你要打断的第一点,再指定第二点。
)打断完,如下图。
(4)接着执行直线命令l,在打断的一端画一条线段。
为了保证另一端的线段和原本画的线段等长,使用复制命令co 。
选择画完的选段,空格确认。
命令蓝,要求选定基点。
这里要注意选定线段的上部端点作为基点。
然后选定另外个端点,如图所示。
将鼠标移动到另外个端点,鼠标左击确认。
就完成了复制粘贴。
(5)完成以上操作之后,执行直线命令,将两个线段的上下端点连接起来。
执行分段命令div,将最右边的直线进行分段,例如要分10段,则输入10。
华北科技学院采矿工程专业综合性实验训练报告姓名学号班级教研室主任(签字)年月日实验中心主任(签字)年月日说明本报告是专门为采矿工程专业综合性实验训练编制的,作为相关课程的实验报告,同时作为生产实习、毕业实习报告的补充内容,是我校采矿工程特色专业建设的一项重要工作。
所安排的实验主要以采矿工程专业基础课及专业课相关的实验为主,旨在让同学们充分利用实验室现有仪器和设备,在相关课程的学习过程中,按照课程教学大纲和实验大纲的要求认真地做实验,完成实验报告。
在生产实习和毕业实习过程中专门抽出一段时间进行校内实习,逐步提高实验效果,为将来就业打下良好的基础。
实验采用教师集体指导,学生分组做实验的办法,同学们可以充分发挥自己的想象力,最大限度地开发实验室潜力,尽可能多做实验,同一个实验可以反复改变实验方法和手段,但必须注意安全,必须有教师在场监督。
同学们如果有兴趣,可以另外开发,实验报告可以添加附页。
实验报告相关数据必须充分尊重事实,不得编写数据。
教师根据学生在实验过程中的表现和实验报告的撰写质量给出成绩,作为相关课程成绩和实习成绩的一部分。
目录现代化矿井主要系统模拟 (1)矿井开拓方式模拟 (3)采区巷道布置模拟 (5)相似材料模拟 (7)支护设备使用 (11)岩石单轴抗压强度测定 (13)岩石的抗剪强度测定 (15)锚杆支护质量综合检测 (18)岩石巷道炮掘参数确定 (20)凿岩机的使用 (21)工作面矿压观测仪器使用 (22)巷道矿压观测仪器使用 (26)工作面层面图绘制 (29)实验名称现代化矿井主要系统模拟课程名称任课教师实验指导教师成绩同组学生姓名实验类型:综合性;实验要求:必做;实验学时数:学时;实验时间月日节一、实验目的二、实验装置及主要仪器设备现代化矿井主要系统模拟实验台一套(声、光、电控制)、炮采工作面及设备布置模型、放顶煤液压支架模型、普采工作面及设备布置模型,综采工作面设备布置模型。
三、实验主要内容1.地面工业广场矿井地面工业广场是用来布置各种地面生产系统和建筑物、结构物的。
《计算机辅助设计》课程实验教学大纲一、课程基本信息课程代码:16092602课程名称:《计算机辅助设计》英文名称:Computer Aided Design实验总学时:28适用专业:自然地理与资源环境专业课程类别:专业课先修课程:无二、实验教学的总体目的和要求《计算机辅助设计》是自然地理与资源环境专业的专业限选课。
通过本课程的学习,使学生掌握Autodesk公司的AutoCAD 计算机辅助设计软件的基本功能和使用技巧。
通过本课程学习可达以下思政目标:1)使学生树立良好的职业道德;(2)培养学生实事求是、尊重自然规律的科学态度;(3)培养学生养成勇于克服困难的精神,树立正确人生观、世界观及价值观;(4)使学生懂得大国工匠的精神实质,培养学生的“工匠精神”,为国奉献的精神。
1、对学生的要求:本实验目的是培养学生利用CAD知识解决基本图形的辅助设计的技术问题,第一部分包括AutoCAD基本操作,基本绘图练习,编辑命令的操作和使用,图层的设置和使用,正等轴测图,尺寸标注,文字注释,图块的使用,三维实体的绘制,综合练习等实验。
通过本课程的实验,使学生系统地掌握AutoCAD的二维和三维图形的辅助设计知识,能够应用AutoCAD进行地图制图及建筑平面图的绘制及出图。
2、对教师的要求:通过设计性实验来提高学习兴趣和能力培养,以寻求适合该课程的教学模式。
3、对实验条件的要求:微机、AutoCAD软件等三、实验内容及学时分配实验项目一实验名称:AutoCAD基本操作实验内容:了解AutoCAD2016软件界面,掌握AutoCAD2016软件的操作方法实验性质:验证性实验学时:1实验目的与要求:熟悉AutoCAD2016的操作界面,学会使用AutoCAD2016不同操作方法及绘图参数与环境设置。
实验条件:微机及AutoCAD2016软件研究与思考:怎样设置绘图参数?思政结合:加强学生政治文明教学,培养学生的法制观念。
黑龙江科技学院实验报告课程名称:矿井开采设计专业:采矿工程班级:06-6姓名:高若翔学号:21号资源与环境工程学院实验二:采区中部车场优化设计一、实验目的1.通过上机进行采区的中部车场的施工图设计,可以使学生更好的掌握采区设计,并增加计算机绘图能力,为课程设计、毕业设计打下良好基础。
2.加强计算机在煤矿的普及应用,从而提高利用计算机和系统的观点解决实际问题的综合能力。
二、实验原理以采区设计中采区中、下部车场及垌室的设计原则、步骤和方法为基本原理。
三、实验学时12学时(上、中、下部车场设计各4学时,根据学时选做)。
四、实验仪器设备计算机及CAD绘图软件。
五、实验要求1.根据学生自主提出的设计已知条件进行采区的上、中、下部车场线路设计计算,并利用计算机绘制出上、中、下部车场设计施工图。
2.弄清采区上、中、下部车场的作用、形式及施工图的绘制要求。
六、实验内容及结果1.叙述主要实验内容(包括学生在教师的指导下自主设计的已知条件和车场设计的计算过程)。
采区中部辅助提升甩车场线路设计(一)、设计依据21煤层轨道巷与上山直交轨中按采区巷道布置图,轨道上山沿煤层的真倾斜布置,倾角为o巷内铺设600mm轨距的单轨线路。
要求甩车场存车线设高低道。
线路布置采用“道岔一道岔”系统斜面线路二次回转方式。
在未计算前,先作出线路布置草图,并把要计算的部分标以符号。
(二)设计步骤1.斜面线路联接系统各参数计算(1) 道岔选择及角度计算由于是辅助提升,两组道岔均选用DK615-4-12(左)道岔道岔参数 35003340'1514212121======b b a a O αα斜面线路一次回转角15141O =α 二次回转角'3028o =δ一次回转角水平投影角''06'1315cos tan arctan'11o ==βαα 二次水平投影 ''54'1030cos tan arctan'o ==βδδ 一次伪倾斜角 ''29'1920)sin sin(sin 'o acr =⋅=βαβ二次伪倾斜角''26'2118)sin sin(sin ''o acr =⋅=βδβ(2) 计算斜面平行线路联接点各参数设计采用中间人行道,线路中心距S=1800 为简化,斜面联接点线路中心距取S ’=S 斜面联接点曲线半径: R=90007313s i n 821311252t a n7088c o t 21212===+==⋅==⋅=αααSm T B L R T S B (3) 计算斜面非平行线路联接点各参数7301'8426sin sin 11121=-==+++=T n n T ma b n αδ2. 确定竖曲线相对位置(1) 竖曲线各参数计算高道 低道坡度 0%11=G i 0%9=D i20000''49'37arctan ===G G G R i γ9000''56'30arctan ===D D D R i γ各参数的计算61873.5731192tan 6079)sin ''(sin 1017)''cos (cos ''37'4317''=====-==-==-=GGPG GG G G G G G G G o G G R K R T R l R h ββγββγγββ29643.5714962tan 2915)sin ''(sin 458)''cos (cos ''22'5218''=====+==-==+=DDPD D D D D D D D D D o D D R K R T R l R h ββγββγγββ(2) 最大高低差H 的计算辅助提升时,存车线长度按2钩车长度考虑第钩车提1吨矿车3辆 12000232000=⨯⨯=C起坡点间距暂设为零 02=L240)%9%11(1200000=+⨯=H (3) 竖曲线相对位置1L 1560''sin 'sin ''sin =+-+-=βββH h h m B D G 1683''cos 11-=-+=G D l l L L β 负值表明低道起坡点超前于高道起坡点。
计算机辅助设计实验一、实验目的《计算机辅助设计与制造实验》是机械设计制造及其自动化专业一门重要的实践性课程。
通过实验并结合课程《计算机辅助设计与制造》理论所学,熟悉CAD设计,掌握使用计算机进行机械设计、计算机绘图的系统知识,培养独立上机绘制三维图形的能力。
二、实验设备硬件:PC计算机软件:pro/E三、实验内容按照零件原始资料和工程图,在计算机和pro/E环境下,构建出零件的三维模型四、实验步骤1. 创建减速器上箱体零件。
(1)拉伸加材料特征。
.(2)倒圆角(3)壳特征(4)拉伸加材料特征。
同前,草绘平面如图所示。
剖面形状如图所示,厚度为12,生成的拉伸特征如图所示。
图2-279 草绘平面的选择图2-280 绘制剖面(5)基准平面单击右边工具栏基准平面按钮,系统打开基准平面对话框,在图形区单击FRONT面,在基准平面对话框下边【偏距】文本框输入平移距离90.(6)拉伸加材料同前,草绘平面为步骤⑤建立的基准平面DTM1,剖面形状如图所示,生成的拉伸特征。
(7)建立基准轴线(8)拉伸加材料拉伸加材料步骤同前,剖面形状如图2-291所示,拉伸深度用拉伸到所选定的点、线或面确定,选择,建立如图所示拉伸特征(10)标准孔1)单击图形窗口右侧特征工具栏孔按钮,打开孔工具操控板。
2)单击操控板对话栏内的标准孔按钮,选择ISO标准,从下拉列表中选择Ml1×1,将深度设置为穿透,按下沉头孔按钮。
3)在【放置】上滑面板中,从图形区选择如图示平面为主参照,参照类型为“同轴”,单击次参照收集器,在图形区选择步骤⑧建立的基准轴A-2为次参照。
4)在对话栏列表中不选择螺纹孔按钮,在【形状】上滑面板中,修改沉头孔的直径和深度值为30、2。
选择中等拟合,光孔直径为13,如图所示。
图2-289 主参照的选择图2-290 【形状】上滑面板图5)单击图形窗口右下角的确认按钮,生成标准孔特征。
五、实验结果2: 轴承座建立如图所示轴承座零件。
算法实验报告实验一用分治法实现元素选择实验代码:#include<iostream>using namespace std;int main(){int a[100],n,x;int BinarySearch(int a[],const int&x,int n);cout<<"请输入n(n<=100):";cin>>n;cout<<"请输入n个整数:"<<endl;for(int i=0;i<n;i++){cin>>a[i];}cout<<"请输入要查找的整数x:";cin>>x;if(BinarySearch(a,x,n)!=-1)cout<<"x是数组中第"<<BinarySearch(a,x,n)+1<<"个数。
"<<endl;elsecout<<"x不是数组中的数。
"<<endl;return 0;}int BinarySearch(int a[],const int &x,int n){int left=0,right=n-1;while(left<=right){int middle=(left+right)/2;if(x==a[middle])return middle;if(x>a[middle])left=middle+1;elseright=middle-1;}return -1;}实验效果图:实验二用动态规划法求解0/1背包问题实验代码:#include <iostream>using namespace std;int main(){void Knapsack(int *v,int *w,int c,int n,int **m);void Traceback(int **m,int *w,int c,int n,int *x);int v[100],w[100],n,c,**m,x[100],i;m=new int *[100];for(i=0;i<100;i++)m[i]=new int[100];cout<<"请输入物品个数n:";cin>>n;cout<<"请输入背包容量c:";cin>>c;cout<<"请分别输入每个物品的价值:"<<endl;for(i=1;i<=n;i++)cin>>v[i];cout<<"请分别输入每个物品的重量:"<<endl;for(i=1;i<=n;i++)cin>>w[i];Knapsack(v,w,c,n,m);Traceback(m,w,c,n,x);cout<<"最优解为:"<<endl;for(i=1;i<=n;i++)cout<<x[i]<<' ';cout<<endl;return 0;}int min(int a,int b){if(a>b)return b;elsereturn a;}int max(int a,int b){if(a>b)return a;elsereturn b;}void Knapsack(int *v,int *w,int c,int n,int **m) {int i,j;int jMax=min(w[n]-1,c);for(j=0;j<=jMax;j++)m[n][j]=0;for(j=w[n];j<=c;j++)m[n][j]=v[n];for(i=n-1;i>1;i--){jMax=min(w[i]-1,c);for(j=0;j<=jMax;j++)m[i][j]=m[i+1][j];for(j=w[i];j<=c;j++)m[i][j]=max(m[i+1][j],m[i+1][j-w[i]]+v[i]); }m[1][c]=m[2][c];if(c>=w[1])m[1][c]=max(m[1][c],m[2][c-w[1]]+v[1]); }void Traceback(int **m,int *w,int c,int n,int *x) {for(int i=1;i<n;i++){if(m[i][c]==m[i+1][c])x[i]=0;else{x[i]=1;c-=w[i];}x[n]=(m[n][c])?1:0;}}实验效果图:实验三用贪心算法求解最小生成树实验代码:#include <iostream>#define inf 10000#define max 50void prim(int g[max][max],int n){int lowcost[max],closest[max];int i,j,k,min;bool s[max];s[1]=true;for(i=2;i<=n;i++){lowcost[i]=g[1][i];closest[i]=1;s[i]=false;}for(i=1;i<n;i++){min=inf;j=1;for(k=2;k<=n;k++)if((lowcost[k]<min)&&(!s[k])){min=lowcost[k];j=k;}printf("(%d, %d), %d\t",closest[j],j,min);s[j]=true;for(k=2;k<=n;k++)if((g[j][k]<lowcost[k])&&(!s[k])){lowcost[k]=g[j][k];closest[k]=j;}printf("\n");}}void main(){int g[max][max];int n,i,j;printf("结点数为:");scanf("%d",&n);printf("请输入点之间权重:\n");for(i=1;i<=n;i++)for(j=i+1;j<=n;j++ ){printf("%d %d :",i,j);scanf("%d",&g[i][j]);}for(i=n;i>=1;i--)for(j=i-1;j>=1;j--)g[i][j]=g[j][i];printf("最小生成树为:\n");prim(g,n);}实验效果图:实验四用回溯法求解跳马问题实验代码://起始位置:0,0#include <iostream>using namespace std;int M,N;int map[100][100];int count=0; //记录马共跳的步数int countnum=0; //用于统计走法种数int direction[8][2]={{1,-2},{2,-1},{2,1},{1,2},{-1,2},{-2,1},{-2,-1},{-1,-2}};//马可能前进的8个方向int flag=0;void print_map(){int t=0;for(int i=0;i<M;i++){for(int j=0;j<N;j++){cout<<map[i][j]<<"\t";t++;if(t==M){cout<<endl;t=0;}}};countnum=countnum+1;cout<<countnum<<":"<<endl;}void go(int i,int j){//改变标志位,环境变量等等:这些改变就相当于完成一步动作,在跳马问题中就是马向前跳一步count++; //计数器map[i][j]=count; //棋盘置当前步数//如果找到匹配的,则输出结果if(count==M*N) //如果已经遍历棋盘则打印一次走法{print_map();flag=1;}//否则,找到当前步可能的路径即进行下一步动作;这里可能有多个分支,如跳马问题中马可以往八个方向跳,每个分支都要列举出来,以便回溯时使用 else if(flag==0){int m,n;for (int k=0;k<8;k++){m=i+direction[k][0];n=j+direction[k][1];if(m>=0 && m<M && n>=0 && n<N)if(map[m][n]==0){go(m,n);}}}//回退:还原标志位,环境变量等map[i][j]=0;//回退,置零count--;//计数器减}int main(){cout<<"请输入棋盘大小N:";cin>>N;M=N;for(int k=0;k<M;k++)for(int l=0;l<N;l++)map[k][l]=0;go(0,0);return 0;}实验效果图:附加题:1、棋盘覆盖问题实验代码:#include<iomanip.h>#include<iostream.h>#include<stdlib.h>int tile=0; //定义全局变量tile表示L型骨牌编号int **chessarr; //定义全局变量chessarr表示棋盘数组void chessboard(int row0,int col0,int size,int sprow,int spcol);// 棋盘覆盖函数// row0,col0为棋盘左上角位置,sprow,spcol为特殊方格位置// size为棋盘规模void chessboard(int row0,int col0,int size,int sprow,int spcol) //棋盘覆盖函数{if(size==1) return; //如果棋盘规模=1,返回int s=size/2; //分割棋盘int t=++tile; //L型骨牌编号加1//处理左上角子棋盘if(sprow < row0+s && spcol < col0+s)chessboard(row0,col0,s,sprow,spcol);else{chessarr[row0+s-1][col0+s-1]=t;chessboard(row0,col0,s,row0+s-1,col0+s-1);}//处理右上角子棋盘if(sprow < row0+s && spcol >= col0+s)chessboard(row0,col0+s,s,sprow,spcol);else{chessarr[row0+s-1][col0+s]=t;chessboard(row0,col0+s,s,row0+s-1,col0+s);}//处理左下角子棋盘if(sprow >= row0+s && spcol < col0+s)chessboard(row0+s,col0,s,sprow,spcol);else{chessarr[row0+s][col0+s-1]=t;chessboard(row0+s,col0,s,row0+s,col0+s-1);}//处理右下角子棋盘if(sprow >= row0+s && spcol >= col0+s)chessboard(row0+s,col0+s,s,sprow,spcol);else{chessarr[row0+s][col0+s]=t;chessboard(row0+s,col0+s,s,row0+s,col0+s);}}void main(){int k,x,y; //阶数及特殊点位置int i,j,n; //棋盘规模为n*ncout<<"请输入棋盘的阶数:";cin>>k;cout<<"请输入特殊点的位置(从1开始):";cin>>x>>y;for (i=0,n=1;i<k;i++)n*=2;//在堆内存中建立棋盘数组,填充特殊方格if((chessarr=new int*[n])==NULL){cout << "Can't allocate more memory,terminating." << endl;exit (1);}for (i=0;i<n;i++ ){if((chessarr[i]=new int[n])==NULL){cout << "Can't allocate more memory,terminating." << endl;exit (1);}}chessarr[x-1][y-1]=0; // 填写特殊方格tile=0;chessboard(0,0,n,x-1,y-1);//进行棋盘覆盖,左上角位置0,0; 棋盘宽度n; 特殊点x,y for (i=0;i<n;i++){for (j=0;j<n;j++ ){cout << setw(5) << chessarr[i][j];}cout << endl;}//释放内存for(i=0;i<n;i++)delete[] chessarr[i];delete[] chessarr;return;}实验效果图:2、双色hanoi塔问题实验代码:#include <iostream>using namespace std;int main(){void hanoi(int,char,char,char);int m;cin>>m;hanoi(m,'A','B','C');return 0;}void hanoi(int n,char a,char b,char c){void move(int,char,char);if(n==1)move(n,a,b);else{hanoi(n-1,a,c,b);move(n,a,b);hanoi(n-1,c,b,a);}}void move(int n,char x,char y) {cout<<n<<""<<x<<y<<endl;}实验效果图:。
实验报告课程名称:《计算机辅助设计》实验名称:《计算机辅助设计》课程实验院(系):管理学院专业班级:姓名:学号:指导教师:2014 年06 月02日实验项目一课程名称:《计算机辅助设计》实验类别:本科基础实验实验项目名称:AutoCAD综合绘图实验实验学时:10实验类型:操作、综合应用性实验开出要求:必做实验地点:西楼二楼微机实验室每组人数:1实验日期:2014年05月09、16、23日一、实验目的和要求目的:1.进行AutoCAD基础绘图命令使用练习,掌握AutoCAD基础绘图命令的使用方法。
2.进行AutoCAD图形绘制、编辑和处理练习,掌握AutoCAD图形绘制、编辑方法。
3.进行AutoCAD图形中文字标识、尺寸标注方法练习,掌握AutoCAD图形文字标识和尺寸标注方法,能够对AutoCAD图形输出进行设置。
4.应用所学图形绘制、编辑处理技术,设计并完成一幅综合图形的绘制。
要求:1、利用AutoCAD基本图元进行简单二维图形的绘图练习,完成一幅简单二维图形的绘制。
2.掌握AutoCAD的基本操作及常用命令并熟悉图形绘制、编辑;3.掌握AutoCAD图块的使用、图案填充操作;4.完成一幅基本二维工程图形的绘制、编辑和处理。
5.掌握AutoCAD图形中文字标识方法;6.掌握AutoCAD图形尺寸标注方法;7.掌握AutoCAD模型创建;8.掌握AutoCAD图形输出设置方法及步骤;9.完成一幅建筑或机械图形的文字标识和尺寸标注。
10.掌握AutoCAD图层管理器的使用;11.掌握AutoCAD线型管理器的使用;12.掌握AutoCAD颜色管理器的使用;13.掌握AutoCAD图形的绘图布局和打印输出控制;14.完成一幅综合图形的绘制、布局、出图设置等。
二、实验内容1.AutoCAD的安装,启动和退出,环境设置、熟悉工作界面。
2.熟悉基础绘图的命令(点、线、编辑);3.完成一幅简单二维图形的绘制。
三维产品及复杂曲面CAD/CAM实验报告一、实验目的通过本次实验,熟悉产品及复杂曲面的测绘、计算机三维几何建模(CAD)和数控自动编程方法(CAM),了解数控机床的工作过程和复杂曲面零件的数控加工工艺流程。
二、实验方案及构想1、测量产品(安全阀)的各个尺寸,记录下来。
2、分析各零件在数控机床或数控加工中心上的加工工艺,确定工艺流程。
3、根据已获得的零件的各项尺寸,利用三维CAD系统(Pro/E2001)建立产品三维模型,并产生平面工程图。
4、根据已获得的零件的各项尺寸,选择合适的刀具参数,在CAM系统上进行切削模拟,先进行粗加工,然后进行精加工,确认无误后,利用CAM自动编程软件将三维模型转换为NC 代码。
5、将NC代码输入到数控机床进行产品加工。
三、实验主要结果1、产品装配图图 1 产品装配图2、安全阀体工件设计图图 2 安全阀体二维零件图3、安全阀体三维零件图图 3 安全阀体三维零件图4、安全阀体上模图图 4 安全阀体上模图5、加工工序定义图 5 安全阀体上模加工工序6、刀具路径产生图 6 安全阀体上模加工刀具路径7、数控加工程序%O0000(PROGRAM NAME - MOJU_JIAGONG)(DATE=DD-MM-YY - 29-10-03 TIME=HH:MM - 15:18)N100G21N102G0G17G40G49G80G90(3. BALL ENDMILL TOOL - 2 DIA. OFF. - 2 LEN. - 2 DIA. - 3.)N104T2M6N106G0G90G54X-60.782Y-71.103A0.S50M5N108G43H2Z60.N110Z7.562N112G1Z2.562F3.N114X-5.509N116X-5.069Z2.504N118X-4.659Z2.334N120X-4.307Z2.064N122X-4.037Z1.712N124X-3.867Z1.302N126X-3.818Z.932N128X-3.81Z.924N130X-3.793Z.455N132X-3.743Z.086N134X-3.671Z-.42N136X-3.577Z-.765N138X-3.442Z-1.237N5484X-6.672Z-1.592 N5486X-6.505Z-2.141 N5488X-6.321Z-2.651 N5490X-6.09Z-3.177 N5492X-5.848Z-3.661 N5494X-5.556Z-4.156 N5496X-5.26Z-4.609 N5498X-4.911Z-5.066 N5500X-4.565Z-5.481 N5502X-4.163Z-5.894 N5504X-3.772Z-6.265 N5506X-3.324Z-6.628 N5508X-2.892Z-6.951 N5510X-2.404Z-7.259 N5512X-1.938Z-7.529 N5514X-1.416Z-7.778 N5516X-.922Z-7.992 N5518X-.375Z-8.177 N5520X.14Z-8.331N5522X.707Z-8.451 N5524X1.235Z-8.544 N5526X1.813Z-8.596 N5528X2.348Z-8.627 N5530X2.929Z-8.61 N5532X3.463Z-8.578 N5534X4.039Z-8.492 N5536X4.564Z-8.4N5538X5.128Z-8.246 N5540X5.637Z-8.093 N5542X6.18Z-7.872 N5544X6.666Z-7.662 N5546X7.181Z-7.378 N5548X7.638Z-7.113 N5550X8.118Z-6.769 N5552X8.539Z-6.455 N5554X8.977Z-6.054 N5556X9.356Z-5.695 N5558X9.746Z-5.242 N5560X10.078Z-4.844 N5562X10.415Z-4.344 N5564X10.696Z-3.914 N5566X10.974Z-3.372 N5568X11.2Z-2.918 N5570X11.416Z-2.338 N5572X11.584Z-1.87 N5574X11.733Z-1.256 N5576X11.843Z-.784 N5578X11.92Z-.135 N5580X11.975Z.357 N5582X11.992Z.907 N5584X11.998Z.912 N5586X12.042Z1.25 N5588X12.192Z1.612 N5590X12.43Z1.923 N5592X12.741Z2.161 N5594X13.103Z2.311 N5596X13.491Z2.362 N5598X68.84N5600G0Z7.362N5602Z60.N5604M5N5606G91G28Z0.N5608G28X0.Y0.A0.N5610M30%8、切削仿真图。
计算机辅助设计实验指导书实验一:AutoCad的基本操作,界面设置一、实验目的:1,掌握AutoCad2005的界面设置方法2,掌握AutoCad2005的基本绘图方法二、实验内容:1,熟悉AutoCad2005的界面2,通过“工具/自定义/菜单”命令自定义菜单3,通过“文件/页面设置管理器”设置纸张大小4,使用快捷菜单打开或关闭工具栏(鼠标指针指向任一工具菜单,单击右键) 5,设置单位和精度:通过“格式/单位”命令6,设置图形界限:通过执行“格式/图形界限”命令,然后在命令窗口中按提示输入左下角坐标和右上角坐标7,改变栅格间距:通过执行“工具/草图设置”命令8,以点100,100为左下角的第一点画一个边长为200的正八边形,其内角为135度,由第一点坐标为100,100第二点到第七点的坐标为:@200<0,@200<45,@200<90,@200<135,@200<180,@200<225,@200<270,@200<3159,画如下图形其中:边界为0,0到4200,2970,线宽分别为0.2,0.3,0.4,正六边形边长为1000 其余数据自定,但要尽可能与上图相符。
三、实验要求:1,要将操作过程写在实验报告上2,将8,9题的结果保存到用户文件夹中实验二绘制简单的图形一、实验目的1,掌握绘制圆的各种方法2,掌握绘制各种矩形的方法3,掌握绘制圆内接六边形和圆外切六边形的方法4,掌握使用使用捕捉、追踪等方法绘制图形二、实验内容1,先按下图所示绘制直线、三角形等,最后用各种方法绘制圆a圆心,半径b三点 C 三中点 D 二点 E 切、切、半径2,绘制如下图所示的长100,宽70,倒角10×10,圆角为20,线宽为4的4种矩形a常规矩形b倒角矩形C圆角矩形D线宽为43,绘制如下图所示的半径为200的正六边形、半径为200的圆及其内接正六边形、半径为200的正六边形及其内接圆共三个图形4,使用追踪和捕捉自工具,绘制长方形中心超速行驶为100的大圆和长方形四角直径为40的小圆长方形的长为400,宽为300,小圆的心离长方形的角点30,30三、实验要求将绘图的操作过程写在实验报告上,将图形文件保存在“我的文档”文件夹中。
中国矿业大学矿业工程学院实验报告
《计算机辅助设计》实验报告
一、实验名称:井底车场
二、实验时间:2010年12月6日~12月25日。
三、实验地点:南湖校区矿业学院机房。
四、实验目的:
1.掌握常用采矿图纸的绘制与编辑方式;
2. 掌握了解CAD的基本命令及最基本的操作;
3.掌握如何选择及新建怎么样的图纸更便于CAD的制图;
4. 了解及掌握图层的新建和尺寸的标注;
5.反复校对、修改、存盘、打印、了解一张工程图绘制的全过程。
五、实验内容:
(一)准备工作。
(1)打开AutoCAD并建立一个新的文件格式为“acadiso.dwt”或“acad”。
( 2)选择AutoCAD的经典模式制图。
(3)根据所绘图的要求,在图层管理器建立所必须要的图层,如下表:
(4)执行文字样式命令,按照图所需的字体进行编辑文字:如下表编辑文字样式。
序号样式名字体创建字高宽度比例应用对象
3 FS175-0.75 TT仿宋体
-GB2313 40000 0.75 图名1
4 FS175-0.7
5 TT仿宋体
-GB2313 10000 0.75 表格正文
5 TNR110 Times New
Roman 40000 1
图名及标
注
(5)建立表格样式:如下表
序号选项卡文字样式对齐填充颜
色
备注
1 数据FS175-0.75 正中无其余取默认设
置
2 列标题FS175-0.75 正中无不包含页眉脚
3 标题FS175-0.75 正中无不包含标题(二)具体的绘图过程:
写出井底车场的绘制步骤。
1 将扫描的图形文件插入到当前的AutoCAd文件中。
单击“插入”面板“参照”选项卡“附着”选项,在命令行中输入“imageattach”命令并回车。
插入光栅图,及窗口如下图
2在插入光栅图像后会弹出【附着图像】,窗口如下图:
3【附着图像】对话框中进行合适的选项设置后(也可以先插入到当前文件后在进行设置,单击【确定】按钮,在范围缩放命令查看上一步到AutoCAD 中的图像文字),如下图:
4 在L-次轮廓线里绘制断面的布置构造,运用直线命令的方法绘制如下结构,如下图:
架线弓子和电机车轮廓线
轨枕
工字钢
水沟盖板
水沟
5 创建表格并完成文字注释,表格的样式及尺寸,运用表格命令及其所对应的特性该单元格的宽高,如下图:
6 归位。
将绘制好的断面、各图元以及巷道特征表,按下图所示进行归位,并在图中适当位置进行图名、比例及表格名称的标注;再【中心线】层内绘制巷道与轨道中心线,如下图
7 再【中心线】充填层中进行图案充填。
如下图:
8 选择设定好的文字样式,在标注层进行文本或尺寸标注命令,如下图:
9 . 检查成图。
成图如下图:
(1)输入Z后回车,再输入E回车,把不需要的实体删除,并把辅助层关掉。
(2)依次对各个图层进行关闭和打开,保证每个实体处在正确的图层内。
(3)空选选中所有实体,看其特性以保证其颜色、线型及线宽均随层。
(4)对照原图看所标注的长度是否原图相同,如有错对其改正。
10 校对、修改。
11. 按照比例打印出图。
(三)注意事项
(1)将文件存在自己知道的硬盘出处,随时存盘文件夹内,以保证所画图的信息丢失,最后再拷贝到自己的移动盘中。
(2)出图打印的时候一定要注意比例。
(3)对于颜色255打印不会出图
六、实验总结(本部分不少于200字)
具体谈谈自己绘图时的体会。
突出绘图技巧与学习《计算机辅助设计》课程的方针——“绘图之道,唯在于勤;成图之妙,唯在于思;君子成仁,唯在自觉”,换言之,也就是用尽可能少的步骤完成尽可能多的操作要求。
(1)在绘图过程中我深感到设置图层、文字样式和表格样式的好处,再改图时,可以关闭一些无关的图层,既便于修改有便于看图,使复杂的图变得简单明了,而设置文字样式和表哥样式在绘图过程中和图层有同样的作用的方便
(2)在绘图过程中对于初学者来说可以说是受益匪浅,不仅学会了以前不会命令,但是在学的过程中经过了数次的尝试,在不停地尝试中我找寻到自己学习CAD的学习方法;我不仅要在上课时要认真听课还需要在课下不停地在自己的计算机中不停地练习掌握其中的精髓并以其熟练,很清楚的知道CAD基本命令和出处
(3)在绘图中我知道了
(4)
(5)
七、存在问题与改进意见(本部分不少于200字)
主要是针对本门课讲解与上机的不足之处提出宝贵建议和意见。
(1)
(2)
(3)
(4)
(5)。