文档库 最新最全的文档下载
当前位置:文档库 › 太原理工大学编译原理实验

太原理工大学编译原理实验

太原理工大学编译原理实验
太原理工大学编译原理实验

本科实验报告

课程名称:编译原理

实验项目:无符号数的词法分析程序(实验一)基本程序设计(实验二)

实验地点:致远楼303

专业班级:软件14XX 学号:

学生姓名:

指导教师:冯秀芳

2017年6 月27日

一、实验目的和要求

1.培养学生初步掌握编译原理实验的技能。

2.验证所学理论、巩固所学知识并加深理解。

3.对学生进行实验研究的基本训练。

二、实验内容和原理

实验一、无符号数的词法分析程序(4学时)

内容:掌握词法分析的基本思想,并用高级语言编写无符号数的词法分析程序。

要求:从键盘上输入一串字符(包括字母、数字等),最后以“;”结束,编写程序识别出其中的无符号数。

无符号数文法规则可定义如下:

<无符号数>→<无符号实数>│<无符号整数>

<无符号实数>→<无符号整数>.<数字串>[E<比例因子>]│

<无符号整数>E<比例因子>

<比例因子>→<有符号整数>

<有符号整数>→[+│-]<无符号整数>

<无符号整数>→<数字串>

<数字串>→<数字>{<数字>}

<数字>→0 1 2 3 (9)

读无符号数的程序流程图见下图

三.主要仪器设备

PC机+Java语言编程环境

四、实验结果与分析

1.实验代码:

package text1;

import java.io.BufferedReader;

import java.io.InputStreamReader;

public class Text1 {

/**

* @param args

*/

public static void main(String[] args) throws Exception { // TODO Auto-generated method stub

int p = 0, w = 0, w1 = 0, j = 0, i = 0, d = 0, e = 1;

double w2 = 0;

String str;

System.out.println("请输入一串字符以;结束:");

BufferedReader buf = new BufferedReader(

new InputStreamReader(System.in));

str = buf.readLine();

char m[] = new char[100];

for (i = 0; i < str.length(); i++) {

m[i] = str.charAt(i);

}

i = 0;

while (i < str.length()) {

if (m[i] < 48 || m[i] > 57) {

i++;

} else {

do {

d = m[i] - 48;

w = w * 10 + d;

j++;

i++;

} while (m[i] >= 48 && m[i] <= 57);

// System.out.println("chesi"+m[i]);

if (m[i] != '.') {

if (m[i] != 'E') {

System.out.println("整型数为:" + w);

j = 0;

w = 0;

} else {

i++;

if (m[i] == '-') {

e = -1;

i++;

if (m[i] >= 48 && m[i] <= 57) {

do {

d = m[i] - 48;

p = p * 10 + d;

i++;

} while (m[i] >= 48 && m[i] <= 57);

if (j > 1)

w2 = w / (Math.pow(10.0, j - 1));

System.out.println("实型数为:" + w2 + "*10" + " "

+ (e * (p - j + 1)));

j = 0;

w2 = 0;

w = 0;

p = 0;

} else

System.out.println("您输入有误!");

} else if (m[i] == '+') {

i++;

if (m[i] >= 48 && m[i] <= 57) {

do {

d = m[i] - 48;

p = p * 10 + d;

i++;

} while (m[i] >= 48 && m[i] <= 57);

if (j > 1)

w2 = w / (Math.pow(10.0, j - 1));

System.out.println("实型数为:" + w2 + "*10" + " "

+ (e * (p + j - 1)));

j = 0;

w2 = 0;

w = 0;

p = 0;

} else

System.out.println("您输入有误!");

} else {

if (m[i] >= 48 && m[i] <= 57) {

do {

d = m[i] - 48;

p = p * 10 + d;

i++;

} while (m[i] >= 48 && m[i] <= 57);

if (j > 1)

w2 = w / (Math.pow(10.0, j - 1));

System.out.println("实型数为:" + w2 + "*10" + " "

+ (e * (p + j - 1)));

j = 0;

w2 = 0;

w = 0;

p = 0;

} else

System.out.println("您输入有误!");

}

}

}

else {

i++;

if (m[i] >= 48 && m[i] <= 57) {

do {

d = m[i] - 48;

w1 = w1 * 10 + d;

// j = j + 1;

i++;

} while (m[i] >= 48 && m[i] <= 57);

} else

System.out.println("您输入有误!");

if (m[i] != 'E') {

System.out.println("小数为:" + w + '.' + w1);

w = 0;

w1 = 0;

j = 0;

} else if (m[i] == 'E') {

i++;

if (m[i] == '-') {

e = -1;

i++;

if (m[i] >= 48 && m[i] <= 57) {

do {

d = m[i] - 48;

p = p * 10 + d;

i++;

} while (m[i] >= 48 && m[i] <= 57);

if (j > 1) {

w2 = w / (Math.pow(10.0, j - 1));

System.out.println("实型数为:" + w2 + w1

+ "*10" + " " + (e * (p - j + 1)));

w = 0;

w1 = 0;

j = 0;

w2 = 0;

p = 0;

} else {

System.out.println("实型数为:" + w + '.' + w1

+ "*10" + " " + (e * (p - j + 1)));

w = 0;

w1 = 0;

j = 0;

w2 = 0;

}

} else

System.out.println("您输入有误!");

} else if (m[i] == '+') {

i++;

if (m[i] >= 48 && m[i] <= 57) {

do {

d = m[i] - 48;

p = p * 10 + d;

i++;

} while (m[i] >= 48 && m[i] <= 57);

if (j > 1) {

w2 = w / (Math.pow(10.0, j - 1));

System.out.println("实型数为:" + w2 + w1

+ "*10" + " " + (e * (p + j - 1)));

w = 0;

w1 = 0;

j = 0;

w2 = 0;

p = 0;

} else {

System.out.println("实型数为:" + w + '.' + w1

+ "*10" + " " + (e * (p + j - 1)));

w = 0;

w1 = 0;

j = 0;

w2 = 0;

p = 0;

}

} else

System.out.println("您输入有误!");

} else {

if (m[i] >= 48 && m[i] <= 57) {

do {

d = m[i] - 48;

p = p * 10 + d;

i++;

} while (m[i] >= 48 && m[i] <= 57);

if (j > 1) {

w2 = w / (Math.pow(10.0, j - 1));

System.out.println("实型数为:" + w2 + w1

+ "*10" + " " + (e * (p + j - 1)));

w = 0;

w1 = 0;

j = 0;

w2 = 0;

} else {

System.out.println("实型数为:" + w + '.' + w1

+ "*10" + " " + (e * (p + j - 1)));

w = 0;

w1 = 0;

j = 0;

w2 = 0;

p = 0;

}

} else

System.out.println("您输入有误!");

}

} else

System.out.println("您输入有误!");

}

}

}

}

}2.实验结果:

一、实验目的和要求

1.培养学生初步掌握编译原理实验的技能。

2.验证所学理论、巩固所学知识并加深理解。

3.对学生进行实验研究的基本训练。

二、实验内容和原理

实验二、逆波兰式生成程序

内容:掌握语法分析的基本思想,并用高级语言编写逆波兰式生成程序(4学时)

要求:利用逆波兰式生成算法编写程序,将从键盘上输入的算术表达式(中缀表达式)转化成逆波兰式。

逆波兰表达式的生成过程涉及到运算符的优先级,下表中列出几个常用运算符的优先关系。

如表所示的优先关系矩阵表示了+,-,*,/,↑,(,)等七种运算符之间的相互优先关系。“>、<、=”三种符号分别代表“大于”、“小于”、“相等”三种优先关系。左边的“=”与右边的“(”之间没有优先关系存在,所以表中为空白。

逆波兰表达式生成算法的关键在于比较当前运算符与栈顶运算符的优先关系,若当前运算符的优先级高于栈顶运算符,则当前运算符入栈,若当前运算符的优先级低于栈顶运算符,则栈顶运算符退栈。

下面给出了逆波兰表达式生成算法的流程图。(为了便于比较相邻运算符的优

先级,需要设立一个工作栈,用来存放暂时不能处理的运算符,所以又称运算符栈)。

常用运算符优先关系矩阵

三、主要仪器设备

PC机+Java语言编程环境

四、实验结果与分析

1.实验内容:

package com_text4;

import java.io.*;

public class Text4 {

public static void main(String[] args) throws IOException { // TODO Auto-generated method stub

int i = 0, j = 0;

String str;

System.out.println("请输入一串中序表达式:");

BufferedReader buf = new BufferedReader(

new InputStreamReader(System.in));

str = buf.readLine();

char m[] = new char[20];

for (int o = 0; o < str.length(); o++) {

m[o] = str.charAt(o);

}

for (int o = str.length(); o < 20; o++) {

m[o] = ' ';

}

char n[] = new char[m.length];

for (int o = 0; o < n.length; o++)

n[o] = ' ';

System.out.println("逆波兰式为:");

while (i <= str.length()) {

if (m[i] == ' ') {

if (n[j] == ' ') {

System.out.println("\n"+"结束!");

System.exit(0);

} else {

do {

if (n[j] != '('&&n[j] != ')')

System.out.print( n[j]);

n[j] = ' ';

if (j >= 1)

j--;

} while (n[j] != ' ');

j = j + 1;

}

} else if (isOperator(m[i])) {

while (isOperator(m[i])) {

if (n[j] == ' ') {

n[j] = m[i];

i++;

} else if (priority(n[j],m[i] ) == '<') {

j++;

n[j] = m[i];

i++;

} else if (m[i] == ')') {

while (j > 0) {

if (n[j] == '(') {

n[j] = ' ';

i++;

} else {

if (n[0] == ' ') {

System.out.println("Error");

} else {

if (n[j] != '('&&n[j] != ')')

System.out.print( n[j]);

n[j] = ' ';

if (j >= 1)

j--;

i++;

}

}

}

} else {

if (n[j] != '('&&n[j] != ')')

System.out.print( n[j]);

n[j] = ' ';

if (j >= 1)

j--;

}

}

} else {

System.out.print(m[i]);

i++;

}

}

}

public static char priority(char operator1, char operator2) { int a = 0, b = 0;

char operatorPriorMatrix[][] = { { '>', '>', '<', '<', '<', '>' }, { '>', '>', '<', '<', '<', '>' },

{ '>', '>', '>', '>', '<', '>' },

{ '>', '>', '>', '>', '<', '>' },

{ '<', '<', '<', '<', '<', '=' },

{ '>', '>', '>', '>', ' ', '>' } };

switch (operator1) {

case '+':

a = 0;

break;

case '-':

a = 1;

break;

case '*':

a = 2;

break;

case '/':

a = 3;

break;

case '(':

a = 4;

break;

case ')':

a = 5;

break;

}

switch (operator2) {

case '+':

b = 0;

break;

case '-':

b = 1;

break;

case '*':

b = 2;

break;

case '/':

b = 3;

break;

case '(':

b = 4;

break;

case ')':

b = 5;

break;

}

return operatorPriorMatrix[a][b];

}

public static boolean isOperator(char operator) {

if (operator == '+' || operator == '-' || operator == '*'

|| operator == '/' || operator == '(' || operator == ')') return true;

else

return false;

}

}

2.实验结果:

太原理工大学WEB系统和技术试题(卷)2016年0425

6、JavaWeb 中()类的()方法用于创建对话。 A. HttpServletRequest、getSession B. HttpServletResponse、newSession C. HtttpSession、newInstance D. HttpSession、getSession 7、给定一个Servlet 的doGet方法中的代码片段,如下: request.setAttribute(“name”,”zhang”); response.sendRedirect(“http://localhost:8080/servlet/MyServlt”); 那么在Servlet 中可以使用()方法把属性name的值取出来。 A. String str=request.getAttribute(“name”); B. String str=(String)request.getAttribute(“name”); C. Object str=request.getAttribute(“name”); D. 无法取出来 8、下边哪个不是JSP的内置对象?() A. session B. request C. cookie D. out 9、关于get和post两种请求,下列说法正确的是?() A. Form表单默认请求是get请求。 B. get请求处理的数据量大小不受到限制。 C. post请求地址栏里是能看到数据的,所以传送用户信息尽量避免使用。 D. post请求可以由doGet方法处理。 10、下面哪一个是正确使用JavaBean的方式?() A. 第 2 页共15 页

东南大学编译原理试题

东南大学一九九三年攻读硕士学位研究生入学考试试题 试题编号:553 试题名称:编译原理 一:(15分)判断下列命题的真假,并简述理由: 1.文法G的一个句子对应于多个推导,则G是二义的. 2.LL(1)分析必须对原有文法提取左因子和消除左递归. 3.算符优先分析法采用"移近-归约"技术,其归约过程是规范的. 4.文法S→aA;A→Ab;A→b是LR(0)文法(S为文法的开始符号). 5.一个BASIC解释程序和编译程序的不同在于,解释程序由语法制导翻译成目标代码并立即执行之,而编译程序需产生中间代码及优化. 二:(15分)设计一个最小状态有穷自动机,识别由下列子串组成的任意字符串. GO,GOTO,TOO,ON 例如:GOTOONGOTOOGOON是合法字符串. 三:(15分)构造一个LL(1)文法G,识别语言L: L={ω|ω为{0,1}上不包括两个相邻的1的非空串} 并证明你的结论. 四:(20分)设有一台单累加器计算机,并汇编语言含有通常的汇编指令LOAD,STORE,ADD和MUL. 1.写一个递归下降分析程序,将如下文法所定义的赋值语句翻译成汇编语言: A→i:=E E→E+E|E*E|(E)|i 2.利用加,乘法满足交换率这一性质,改进你的分析程序,以期产生比较高效的目标代码. 五:(15分)C为大家熟知的程序语言. 1.C的参数传递采用传值的方式,而且允许函数定义和调用时的参数个数不一致(如printf).请指出其函数调用语句: f(arg1,arg2,...,argn) 翻译成的中间代码序列,并简述其含义. 2.C语言中的变量具有不同的作用范围,试述C应采用的存储分配策略. 六:(20分)设有一个子程序的四元式序列为: (1) I:=1 (2) if I>20 GOTO (16) (3) T1:=2*J (4) T2:=20*I (5) T3:=T1+T2 (6) T4:=addr(A)-22 (7) T5:=2*I (8) T6:=T5*20 (9) T7:=2*J (10) T8:=T6+T7 (11) T9:=addr(A)-22 (12) T10:=T9[T8] (13) T4[T3]:=T10+J

太原理工大学计算机网络实验报告

本科实验报告 课程名称:计算机网络B 实验地点:行勉楼 专业班级:学号 学生姓名: 指导教师: 实验成绩: 2016年 6 月 14 日

实验3 VLAN基本配置 一、实验目的 掌握交换机上创建VLAN、分配静态VLAN成员的方法。 二、实验任务 1、配置两个VLAN:VLAN 2和VLAN 3并为其分配静态成员。 2、测试VLAN分配结果。 三、实验设备 Cisco交换机一台,工作站PC四台,直连网线四条,控制台电缆一条。 四、拓扑结构 五、实验结果 PC0到PC1 想通 PC0到PC2 不通,不在相同VLAN PC2到PC3 不通,网段不同。 Switch#sh run Building configuration... Current configuration : 1127 bytes ! version 12.1 no service timestamps log datetime msec no service timestamps debug datetime msec no service password-encryption ! hostname Switch ! ! spanning-tree mode pvst ! interface FastEthernet0/1

! interface FastEthernet0/2 switchport access vlan 2 ! interface FastEthernet0/3 switchport access vlan 2 ! interface FastEthernet0/4 switchport access vlan 2 ! interface FastEthernet0/5 switchport access vlan 3 ! interface FastEthernet0/6 switchport access vlan 3 ! interface FastEthernet0/7 switchport access vlan 3 ! 六、实验心得 输入容易出现错误。重复输入次数多。

太原理工大学计算机网络实验报告

本科实验报告 课程名称:计算机网络B 实验地点:行勉楼 专业班级:学号 学生姓名: 指导教师: 实验成绩: 2016年 6 月14 日

实验3 VLAN基本配置 一、实验目的 掌握交换机上创建VLAN、分配静态VLAN成员的方法。 二、实验任务 1、配置两个VLAN:VLAN 2和VLAN 3并为其分配静态成员。 2、测试VLAN分配结果。 三、实验设备 Cisco交换机一台,工作站PC四台,直连网线四条,控制台电缆一条。 四、拓扑结构 五、实验结果 PC0到PC1 想通 PC0到PC2 不通,不在相同VLAN PC2到PC3 不通,网段不同。 Switch#sh run Building configuration... Current configuration : 1127 bytes ! version 12.1 no service timestamps log datetime msec no service timestamps debug datetime msec no service password-encryption ! hostname Switch ! ! spanning-tree mode pvst ! interface FastEthernet0/1

! interface FastEthernet0/2 switchport access vlan 2 ! interface FastEthernet0/3 switchport access vlan 2 ! interface FastEthernet0/4 switchport access vlan 2 ! interface FastEthernet0/5 switchport access vlan 3 ! interface FastEthernet0/6 switchport access vlan 3 ! interface FastEthernet0/7 switchport access vlan 3 ! 六、实验心得 输入容易出现错误。重复输入次数多。

太原理工大学遥感原理与应用实验指导书

《遥感原理与应用》实验指导书 矿业工程学院 测绘科学与技术系

实验一、遥感图像几何校正(2学时)实验二、遥感图像辐射增强(2学时)实验三、遥感图像非监督分类(2学时)

实验一、遥感图像几何校正(2学时)

原理与方法简介遥感影像由于遥感平台位置和运动状态变化、地形起伏、地球表面曲率、大气折射、地球自转等诸多因素的影响而产生与地面目标位置和(或)形状方面的不相一致的几何畸变,通过一定的数学算法,使这种畸变消除或接近消除,这就是几何校正。常用的几何校正计算方法主要有以下三种: 1)邻域法(Nearest neighbor )——将最接近的像元值赋予输出像元(图1.1); Figure1.1Nearest Neighbor 邻域法优点:极值和一些细节不会丢失,对植被分类、查找具线性特征的边界或侦测湖水的混浊度和温度是重要的。该方法适用于分类之前,计算速度快,适合于具有定性和定量特点的专题图像研究。 其缺点是:从较大的栅格重采样到较小栅格时会出现阶梯状斜线;可能会丢失或重复一些数值;用于线形专题图(如道路、水系)可能引起线状网络数据断开或出现裂隙。 2)双线性内插法(bilinear interpolation )——利用二次样条函数计算2×2窗口中的4个像元值并赋予输出像元(图1.2)。 Figure1.2Bilinear Interpolation 113V dy D V V V m +?-= 224V dy V V Vn +?-=

m m n V dx D V V Vr +?-=或:i i i i i i i r V D y D x D V W V ??-?-==∑∑==41241))((W i ——权重因子 Δx i ,Δy i ——r 点与i 点的坐标变化 V i ——i 像元值 双线性内插法的优点是:图像较平滑,不会出现阶梯现象,空间精度较高,常用于需要改变像元大小的场合,如SPOT/TM 的融合。 其缺点是:由于像元作过平均计算,相当于低通滤波(Low-frequency convolution )的效果,边界平滑,某些极值会丢失。 3)立方卷积内插法(Cubic convolution )——利用三次函数计算4×4窗口中的像素值并赋予输出像素(图1.3) 。 Figure 1.3Cubic Convolution 类似于双线性内插,只是所用窗口为4*4,而非2*2,即对16个像元作平均运算而得出输出像元的数据文件值。 ]} 2)2,2([*)2,2(]1)2,1([*)2,1()]2,([*)2,(]1)2,1([*)2,1({4 1--++-+++ --++-+++ -+-++ +-+--+-=∑=n j i d f n j i V n j i d f n j i V n j i d f n j i V n j i d f n j i V V i r 其中:i=int(x r ),j=int(y r ) d(i ,j)——(i ,j)和(x r ,y r )坐标距离 V(i ,j)——(i ,j)像元值 V r ——输出像元数据文件值

东南大学编译原理词法分析器实验报告

词法分析设计 1. 实验目的 通过本实验的编程实践,了解词法分析的任务,掌握词法分析程序设计的原理和构造方法,对编译的基本概念、原理和方法有完整的和清楚的理解,并能正确地、熟练地运用。 2. 实验内容 用C++语言实现对C++语言子集的源程序进行词法分析。通过输入源程序从左到右对字符串进行扫描和分解,依次输出各个单词的内部编码及单词符号自身值;若遇到错误则显示“Error”,然后跳过错误部分继续显示;同时进行标识符登记符号表的管理。 3. 实验原理 本次实验采用NFA->DFA->DFA0的过程: 对待分析的简单的词法(关键词/id/num/运算符/空白符等)先分别建立自己的FA,然后将他们用产生式连接起来并设置一个唯一的开始符,终结符不合并。 待分析的简单的词法 (1)关键字: "asm","auto","bool","break","case","catch","char","class","

const","const_cast"等 (2)界符(查表) ";",",","(",")","[","]","{","}" (3)运算符 "*","/","%","+","-","<<","=",">>","&","^","|","++","--"," +=","-=","*=","/=","%=","&=","^=","|=" relop: (4)其他单词是标识符(ID)和整型常数(SUM),通过正规式定义。 id/keywords: digit: (5)空格有空白、制表符和换行符组成。空格一般用来分隔ID、SUM、运算符、界符和关键字,词法分析阶段通常被忽略。

javaEE实验报告

西安科技大学《JAVAEE框架开发技术》 实验报告 学院:计算机科学与技术学院 专业及班级:软件工程1202班 学号: 12 姓名:_ 黄子斌

2015年12 目录 实验一 struts基础实验........................................错误!未定义书签。 1. 实验类型..............................................错误!未定义书签。 2. 实验目的..............................................错误!未定义书签。 3. 实验要求..............................................错误!未定义书签。 4. 实验内容..............................................错误!未定义书签。 1. 文件的配..........................................错误!未定义书签。 2. 文件配置..........................................错误!未定义书签。 3. Action的实现.....................................错误!未定义书签。 4. 运行结果..........................................错误!未定义书签。实验二持久化层hibernate .....................................错误!未定义书签。 1. 实验类型..............................................错误!未定义书签。 2. 实验目的..............................................错误!未定义书签。 3. 实验要求..............................................错误!未定义书签。 4. 实验内容..............................................错误!未定义书签。 1. 文件配置..........................................错误!未定义书签。 2. 实体类和映射文件..................................错误!未定义书签。 3. 运行结果..........................................错误!未定义书签。实验三 SSM整合实验...........................................错误!未定义书签。 1. 实验类型..............................................错误!未定义书签。 2. 实验目的..............................................错误!未定义书签。 3. 实验要求..............................................错误!未定义书签。 4. 实验内容..............................................错误!未定义书签。 1. 文件配置..........................................错误!未定义书签。 2. 文件配置.........................................错误!未定义书签。

太原理工大学web实验报告资料

本科实验报告 课程名称:Web开发实用技术基础 实验项目:HTML语言 网页程序设计Javascript Request与Response对象的应用 Application与Session对象的应用 实验地点:实验室211 专业班级:学号: 学生姓名: 指导教师: 2015年11月5日

学院名称学号实验成绩 学生姓名专业班级实验日期 课程名称Web开发实用技术基础实验题目HTML语言 一.实验目的和要求 1.掌握常用的HTML语言标记; 2.利用文本编辑器建立HTML文档,制作简单网页。 3.独立完成实验。 4.书写实验报告书。 二.实验内容 1.在文本编辑器“记事本”中输入如下的HTML代码程序,以文件名sy1.html保存,并在浏览器中运行。(请仔细阅读下列程序语句,理解每条语句的作用) 源程序清单如下: Example

welcome to you


A simple HTML document

Welcome to the world of HTML This is a simple HTML document.It is to give you an outline of how to write HTML file and how the markup tags work in the HTML file Following is three chapters
Following is items of the chapter two

太原理工大学软件工程实验报告

本科实验报告 课程名称:软件工程导论 实验项目:教务管理系统之子系统—学院课程安排报告 实验地点: 专业班级:学号: 学生姓名: 指导教师: 2015年5 月15 日

项目说明 教务管理系统之子系统——学院课程安排 1.系统简介 每个学期的期中,学校教务处会分类向各个学院发出下各学期的教学计划,包括课程名称、课程代码、课时、班级类别(本科、专科、成人教育、研究生)、班号等;学院教学主管人员根据教学任务要求给出各门课程的相关限制(如:任课教师的职称、上课的班数、最高和最低周学时数等);任课教师自报本人授课计划,经所在教研室协调任可,将教学计划上交学院主管教学计划的人员,批准后上报学校教务处,最终由教务处给出下个学期全学院教师的教学任务书。 假设上述排课过程全部由人工操作,现要求为上述过程实现计算机自动处理过程。2.限定条件 (1)原则上,每位教师每学期主讲的课程门数不超过2门。 (2)严格限制:每位教师每年教学工作量不得低于300,不得超过600。 (3)本学期出现严重教学事故的教师不能承担下各学期的主讲任务。 (4)本系统的输入项至少包括:教务处布置的教学计划和工作量计算子系统、学院教师自报的授课计划和学院制定的有关授课限制条件。 (5)本系统的输出项至少包括:教务处最终下达全院教师的教学任务书和学院各个班级下各学期的课程表(可以不含上课地点)。 附工作量计算子系统中的课堂教学工作量计算方法(简化计算): 1.单班课计划学时*1.0 双班课计划学时*1.3 三班课计划学时*1.6 四班课计划学时*2.0 2.双语教学 计划学时*合班系数*2.0 3.精品课程 国家级精品课程计划学时*合班系数*1.5 省级精品课程计划学时*合班系数*1.1

2014太原理工大学C++实验报告

本科实验报告 课程名称:C++面向对象程序设计 实验项目:C++语言编程 实验地点:明向校区 专业班级:软件1431 学号:201400XXXX 学生姓名:白建兴 指导教师:崔晓红 2015年5月10日

1.运行例题程序: #include using namespace std; void fn1(int z=5); int x=1,y=2; int main() { cout<<"Begin. . ."<>p[i]; if(p[i]>0) plus++; else if(p[i]!=0) minus++; } cout<<"正数的个数:"<

太原理工大学数值计算方法实验报告

本科实验报告 课程名称:计算机数值方法 实验项目:方程求根、线性方程组的直接解法、线性方程组的迭代解法、代数插值和最小二乘拟合多项式 实验地点:行勉楼 专业班级:******** 学号:********* 学生:******** 指导教师:誌,冬华 2016年4 月8 日

y = x*x*x + 4 * x*x - 10; return y; } float Calculate(float a,float b) { c = (a + b) / 2; n++; if (GetY(c) == 0 || ((b - a) / 2) < 0.000005) { cout << c <<"为方程的解"<< endl; return 0; } if (GetY(a)*GetY(c) < 0) { return Calculate(a,c); } if (GetY(c)*GetY(b)< 0) { return Calculate(c,b); } } }; int main() { cout << "方程组为:f(x)=x^3+4x^2-10=0" << endl; float a, b; Text text; text.Getab(); a = text.a; b = text.b; text.Calculate(a, b); return 0; } 2.割线法: // 方程求根(割线法).cpp : 定义控制台应用程序的入口点。// #include "stdafx.h" #include"iostream"

心得体会 使用不同的方法,可以不同程度的求得方程的解,通过二分法计算的程序实现更加了解二分法的特点,二分法过程简单,程序容易实现,但该方法收敛比较慢一般用于求根的初始近似值,不同的方法速度不同。面对一个复杂的问题,要学会简化处理步骤,分步骤一点一点的循序处理,只有这样,才能高效的解决一个复杂问题。

太原理工大学操作系统实验报告课案

课程名称:操作系统B 实验项目:操作系统实验实验地点:逸夫楼 专业班级:软件14班 学生姓名:学号:2014 指导教师:张辉 2016年12 月 2 日

目录............................................................ 错误!未定义书签。实验一几种操作系统的界面 (3) 一.目的和要求 (3) 二.内容 (3) 三.程序代码 (4) 四.运行结果 (4) 实验二进程调度程序设计 (5) 一、目的和要求 (5) 二、示例 (6) 程序清单 (9) 运行结果 (9) 实验三存储管理程序设计 ............... 错误!未定义书签。 一、目的和要求.................................... 错误!未定义书签。 二、提示................................................ 错误!未定义书签。三.流程图............................................ 错误!未定义书签。程序代码................................................ 错误!未定义书签。运行结果................................................ 错误!未定义书签。实验感想.................................................... 错误!未定义书签。参考资料.................................................... 错误!未定义书签。

东南大学编译原理试卷

S o ut he a s t Uni v e r si ty E xa mi na ti o n P a per (i n-t e r m) Course Name Principles of Compiling Examination Term Score Related Major Computer & Software Examination Form Close test Test Duration120 Mins There are 5 problems in this paper. Y ou can write the answers in English or Chinese on the attached paper sheets. 1.Please construct context-free grammars with ε-free productions for the following languages (20%). (1){i|i∈N(Natural number), and i is a palindrome, and (i mod 5)=0} (2){ω| ω∈(a,b,c,d)* and the numbers of a’s ,b’s and c’s occurred in ω are even, and ωstarts with a or c , ends with d } 2.Please construct a DFA with minimum states for the following regular expression. (20%) (((a|b)*a)*(a|b))*(a|b) 3.Please eliminate the left recursions (if there are)and extract maximum common left factors (if there are) from the following context free grammar, and then decide the resulted grammar is whether a LL(1) grammar by constructing the related LL(1) parsing table.(20%) Please obey the rules of examination. If you violate the rules, your answer sheets will be invalid 共 2 页第 1 页

太原理工大学Java实验报告

实验由本人当时亲自完成 仅供参考,希望可以帮助大家 本科实验报告 课程名称: Java程序设计B 实验项目: Java语言基础编程和面向对象设计 实验地点:逸夫楼501 专业班级: 0000 学号: 00000000 学生:氣宇軒昂 指导教师: 2012年 13月 13日

3.9程序代码 import java.util.Scanner; public class ValueFore { int n; ValueFore() { this.n=calculateN(); } double stackBy(int n) { int i; double s=1; for(i=1;i<=n;i++) { s*=i; } return s; } double overlap() { int i; double sum=1; for(i=1;i<=this.n;i++) { sum+=1/stackBy(i); } return sum; } int calculateN() { Scanner in=new Scanner(System.in); int i=1; double a=in.nextDouble(); while(1/stackBy(i)>a) {

i++; } return i; } public static void main(String[] args) { Scanner in=new Scanner(System.in); boolean b=true; while(b) { System.out.println("请选择菜单:"); System.out.println(" 1.计算不同精度的e值"); System.out.println(" 2.退出"); switch(in.nextByte()) { case 1: { System.out.println("请输入精度(例如:1e-3,表示0.001):"); ValueFore a=new ValueFore(); System.out.println("e="+a.overlap()); };break; case 2:b=false;break; } } } } 运行结果 说明:没有按书中的要求去求,但是这个程序功能更强,运用了菜单的方式,使用程序的人能求

太原理工大学程序设计实验报告

《程序设计》课程设计 姓名: 学号: 班级:软件工程1334班 指导教师:杨永强 成绩: 2015年6月

实验一:谁拿了最多奖学金 1.【问题描述】 (1)问题描述 某校的惯例是在每学期的期末考试之后发放奖学金。发放的奖学金共有五种,获取的条件各自不同: 1) 院士奖学金,每人8000元,期末平均成绩高于80分(>80),并且在本学期内发表1篇或1篇以上论文的学生均可获得; 2) 五四奖学金,每人4000元,期末平均成绩高于85分(>85),并且班级评议成绩高于80分(>80)的学生均可获得; 3) 成绩优秀奖,每人2000元,期末平均成绩高于90分(>90)的学生均可获得; 4) 西部奖学金,每人1000元,期末平均成绩高于85分(>85)的西部省份学生均可获得; 5) 班级贡献奖,每人850元,班级评议成绩高于80分(>80)的学生干部均可获得; 只要符合条件就可以得奖,每项奖学金的获奖人数没有限制,每名学生也可以同时获得多项奖学金。例如姚林的期末平均成绩是87分,班级评议成绩82分,同时他还是一位学生干部,那么他可以同时获得五四奖学金和班级贡献奖,奖金总数是4850元。 2.【设计需求及分析】 (1)设计思路 先定义了一个Student的结构体,它里面定义了关于学生的各个属性。比如期末平均成绩,班级评议成绩,班干部等等。然后设计了一个判断函数,判断他得到奖学金的多少。接下来就是主函数了,在主函数里,有着输出输入变量,和赋值函数,最重要的是比较函数,比较出哪一位学生的奖学金多及所有金额的总计。最后输出。 下面是关键步骤: (2)输出输入格式 输入数据格式格式: 输入的第一行是一个整数N(1 <= N <= 100),表示学生的总数。接下来的N行每行是一位学生的数据,从左向右依次是姓名,期末平均成绩,班级评议成绩,是否是学生干部,是否是西部省份学生,以及发表的论文数。姓名是由大小写英文字母组成的长度不超过20的字符串(不含空格);期末平均成绩和班级评议成绩都是0到100之间的整数(包括0和100);是否是学生干部和是否是西部省份学生分别用一个字符表示,Y表示是,N表示不是;发表的论文数是0到10的整数(包括0和10)。每两个相邻数据项之间用一个空格分隔。 输出数据格式: 输出包括三行,第一行是获得最多奖金的学生的姓名,第二行是这名学生获得的奖金总数。如果有两位或两位以上的学生获得的奖金最多,输出他们之中在输入文件中出现最早的学生的姓名。第三行是这N个学生获得的奖学金的总数。 (3)名字为char类型,各类成绩及论文数量为int类型,判断类型为char类型。人数最多为100人。 (4)测试数据:YaoLin 87 82 Y N 0 ChenRuiyi 88 78 N Y 1 LiXin 92 88 N N 0

2020年智慧树知道网课《大学物理(上)(太原理工大学)》课后章节测试满分答案

第一章测试 1 【单选题】(10分) 下列关于质点说法正确的是: A. 质点就是质量很小的物体 B. 质点就是体积很小的物体 C. 任何物体都可以视为质点 D. 质点是一种理想模型 2 【单选题】(10分) 已知质点的运动方程为 (SI制),则质点的轨道方程为: A. B. C.

D. 3 【单选题】(10分) 某质点的运动方程为(SI),t>0时,该质点做 A. 匀速直线运动,速度沿x轴负方向 B. 变速直线运动,速度沿x轴负方向 C. 匀速直线运动,速度沿x轴正方向 D. 变速直线运动,速度沿x轴正方向 4 【单选题】(10分) 一质点在Oxy平面上运动,运动方程为

则在t=1s时质点的加速度为 A. B. C. D. 5 【单选题】(10分) 一个质点在做匀速率圆周运动时 A. 切向加速度不变,法向加速度也不变 B. 切向加速度改变,法向加速度不变 C. 切向加速度不变,法向加速度改变 D. 切向加速度改变,法向加速度也改变

6 【单选题】(10分) 一质点沿x方向运动,其加速度随时间的变化关系为a=3+2t(SI),如果初始时刻质点的速度为5m/s,则任意时刻质点的速度 A. B. C. D. 7 【单选题】(10分) 一质点从静止出发沿半径R=1m的圆周运动,其角加速度随时间t的变化规律是 (SI),则t=1s时质点的角速度 A. 6 B. -2

C. 1 D. 18 8 【单选题】(10分) 一质点沿半径为R的圆周运动,运动方程为 则t时刻质点的切向加速度 A. 4R B. 4 C. 4t D. 9 【单选题】(10分)

太原理工大学物理化学B考研真题2009年

太原理工大学2009年攻读硕士研究生入学考试试题 物理化学B 常数R=8.314J K -1mol -1 F=96500C ·mol -1 L=6.023×1023mol -1 P Θ=100KPa C Θ=1mol dm -3 一. 填空题(30分) 1、 封闭系统且W ’=0 时,热力学能随熵的变化的变化率V U S ??? ???? = ,吉布斯随压力的变化率T G P ??? ???? = 。 2、 若变化过程的△S=0,该过程是 。 3、 373K 时,100g 水中含有11.8gNaCl 的溶液上方蒸气压为p=94.232kpa 。则溶液中水的活度a= 。水的活度系数γ= (已知M(NaCl)=58.44,M(H 2O)=18,P H2O =101.325KPa ) 4、 NH 4HS(S)放入抽空的瓶内发生分解,恒温下NH 4HS(S)=NH 3(g)+H 2S(S)则分解反应达到平衡时该体系的独立组分数为C= 自由度数F 为 。 5、 方程ln p d dT =m 2H RT ? 可适用于 。 6、 从多孔硅胶的强烈吸水性能比较,在多孔硅胶吸水过程中,自由水分子化学势μ 吸附在硅胶表面的水分子化学势μ。 7、 气相反应2H 2+2NO →N 2+2H 2O 不是基元反应,因为 8、 在300K 时,鲜牛奶5h 后即变酸,但在275K 的冰箱里,可保存50h ,牛奶变酸反应的活化能E= . 9、兰格缪尔吸附等温式θ= bp 1+bp 中θ的物理意义是 ,常数b 的物理意义是 。 10、 瑞利(Rayleigh )在研究散射作用后得出,对于单位体积胶体体系,散射光的强度与入射光波长的 次方成 比。 二、(15分)某气体状态方程为p (V —nB )=nRT (其中B 为常数),nmol 气体从始态p 1,T 1,经过绝热真空膨胀终态压力为p 2,求该过程的 Q,W ,△U ,△H ,△S.

《Java语言程序设计》——软件实验指导书

《Java程序设计》 实验指导书 太原理工大学 计算机科学与技术学院(软件学院)

目录 实验1 Java语言基础 (3) 实验2 数组和字符串编程 (4) 实验3 Java面向对象程序设计 (5) 实验4 Java异常处理 (7) 实验5 多线程编程 (9) 实验6 图形用户界面编程 (12) 实验7 输入与输出 (13) 实验8 网络编程 (14) 实验9 数据库编程 (15)

实验1 Java语言基础 1.实验目的 (1)通过实验,掌握Java语言程序设计的基本方法。 (2)学会Java语言中标示符的命名、运算符和表达式的应用。 (3)熟练地掌握Java程序流程控制语句的应用。 2.实验内容 (1)编写应用程序,计算100(含100)以内所有偶数的和。 (2)“水仙花数”是指一个3位数,其个位、十位、百位上的数字的立方和等于该数本身,例如371=33+73+13,因此371是一个水仙花数。编写程序,求所有的水仙花数。 (3)编写一个程序,求1-100间的素数。 (4)有一函数: x (x<1) Y= 3x-2 (1≤x<10) 4x (x≥10) 写一程序,给定x值,输出y值。 (5)使用for循环语句,编写程序输出以下图案。 ☆ ☆☆☆ ☆☆☆☆☆ ☆☆☆☆☆☆☆ ☆☆☆☆☆ ☆☆☆ ☆

(6)编写程序,输出从公元1900年到2100年所有闰年的年号,每输出5个年号换一行。判断年是否为闰年的条件是:①若年号可以被4整除,而不能被100整除,则是闰年;②若年号可以被400整除,也是闰年。 3.实验预习 (1)复习本章所学内容。 (2)写出实验内容中第(2)、(3)题两个程序的源代码,作为预习报告。 4.实验步骤及结果 实验过程中,注意记录以下内容: (1)实验过程中实验步骤及其结果。 (2)遇到的问题及解决办法。 (3)实验体会。 实验2 数组和字符串编程 1.实验目的 (1)通过实验,掌握Java语言中数组、字符串程序设计的基本方法。 (2)较熟练地掌握Java程序数组的应用、字符串处理操作的方法应用。 2.实验内容 (1)编写一个程序,在控制台输入10个数,按大小顺序输出。 (2)求一个3*3矩阵对角元素之和。 (3)输入一段字符串,统计其中有多少个单词。(单词用空格隔开)

东南大学学习视频教程下载,有需要的千万别错过

东南大学位于江苏省南京市,是中央直管、教育部直属的全国重点大学,为“211工程”和“985工程”重点建设的大学之一。东南大学是中国最早建立的高等学府之一,前身为创建于1902年的三江师范学堂,后经历南京高等师范学校、国立东南大学、国立中央大学、南京大学、南京工学院等历史时期,1988年学校复更名为东南大学,2000年东南大学与南京铁道医学院等校合并组建新的东南大学。经过一个多世纪的发展与建设,东南大学已成为一所以工为特色,理、工、医、文、管、艺等多学科协调发展的综合性大学。 东南大学《数控技术》视频教程仇晓黎 40讲 https://www.wendangku.net/doc/ea5814590.html,/thread-69-1-1.html 东南大学《软件工程》视频教程 32讲学习梦想家园 https://www.wendangku.net/doc/ea5814590.html,/thread-6172-1-1.html 东南大学《数据库系统原理》辛研 42讲学习梦想家园 https://www.wendangku.net/doc/ea5814590.html,/thread-302-1-1.html 东南大学《电工与电子技术》单振才 76讲学习梦想家园 https://www.wendangku.net/doc/ea5814590.html,/thread-301-1-1.html 学习梦想家园 https://www.wendangku.net/doc/ea5814590.html,/thread-295-1-1.html 学习梦想家园 https://www.wendangku.net/doc/ea5814590.html,/thread-207-1-1.html 东南大学《工程结构抗震与防灾》全套视频学习梦想家园 https://www.wendangku.net/doc/ea5814590.html,/thread-293-1-1.html 东南大学《工程项目管理》全套视频学习梦想家园 https://www.wendangku.net/doc/ea5814590.html,/thread-206-1-1.html 东南大学《建筑力学》上、下册全套视频学习梦想家园 https://www.wendangku.net/doc/ea5814590.html,/thread-300-1-1.html 东南大学《基础工程》全套视频学习梦想家园

相关文档 最新文档
item content