第一篇:实验报告8-Excel_2010(四)
实验报告8 Excel 电子表格2010(四)
班级 091 学号 201509104 姓名 王晓博
【实验目的】
1.了解Excel的图表类型和图表功能; 2.掌握图表的创建与格式化;
3.理解图表的基本组成及一些选项的作用。
【实验内容和步骤】
完成实践教程第92页4.4.3中的实验并回答下列问题。如何选择不连续的两列数据?
按住ctrl键同时在表格中选中要创建的表格的不连续区域
2如何选择图例的位置以及添加数据标签。
1.右击图标中的图例,从快捷菜单中选择“设置图例格式”命令
2.探出‘设置图例格式对’话框,选择右侧的‘图例位置’区中的其他模式按钮。
3.选中图表,单击‘插入’选项卡/文本/文本框 按钮下方的下拉按钮,在弹出的下拉菜单中选择‘横排文本框’选项,在图表中拖入鼠标,插入文本框。在文本框中输入解释文本‘XX’然后在图表任意位置单击即可
3如何设置图表背景墙和地板格式?如何设置图表区域的渐变填充。
单击图表,点击“布局”中的“背景墙设置”进行设置即可。双击图表区域,出现“设置图表区格式”对话框,点击“填充”-“渐变填充”即可 如何修改图表边框的颜色和样式
右击鼠标,单击绘图模式,选择相应的颜色和样式即可 怎样改变图表的位置和大小。
右击图标中的图例,从弹出的快捷菜单中选择“设置图例样式”在探出的对话框右侧“图列位置”选项区中选择相应的位置和大小。
6、写出柱形图、饼图两种图表类型适用场合。
柱形图:显示一段时期内数据的变化或者描绘各项之间的比较时。饼图:只显示一个数据系列,需要突出某个重要数据项时。
【实验心得与体会】 学会了如何做图表,收获颇丰,感觉自己棒棒嗒。
第二篇:分析化学实验报告四
实验四标定氢氧化钠、测定铵态氮
摘要:固体NaOH容易吸收空气中的水分和CO2,因此不能直接配制准确浓度的NaOH标准溶液,只能先配置近似浓度的溶液,然后用基准物质标定其准确 浓度,标定结果显示NaOH溶液浓度为0.09675mol/L。铵态氮中除碳酸氢铵 可用标准酸直接滴定外,其他铵盐由于NH4+是一种极弱酸(Ka=5.6x10-10), 不能用标准碱直接滴定。一般用“蒸馏法”或“甲醛法”来测定其含量,测 定结果显示铵态氮的含量为26.12%。
关键词:滴定;NaOH标准溶液;铵态氮
前言
由于NaOH固体在空气中易变质,很难配制标准浓度的NaOH溶液,所以先配制近似浓度的溶液,再用基准物质来标定其准确浓度;测定除NaHCO3外的铵态氮,因NH4+是一种极弱酸,不能用标准碱直接滴定,应采用“蒸馏法”或“甲醛法”间接测定,本次试验采用“甲醛法”,即铵盐先与甲醛生成六亚甲基四胺酸和强酸,再用标定后的NaOH溶液滴定,w
计算可得铵态氮的含量。
一、仪器与试剂
50mL碱式滴定管1支、20mL移液管1支、25mL移液管1支、250mL容量瓶1个、250mL锥形瓶3只、200mL烧杯1只、电子天平;KHR固体、酚酞指示剂、3mol/L NaOH溶液。
二、试验方法
1、制备NaOH溶液:17mL 3mol/L NaOH→0.1mol/L 500mL NaOH;
2、标定NaOH:称取KHR 0.405~0.415g,加20mL水溶解,再加两滴酚酞指示剂,最后用NaOH溶液滴定至浅红色且30s不褪色,平行五次;
3、测定铵态氮:
称取1.6g氯化铵,加水溶解,250mL容量瓶定容,移取25.00mL至锥形瓶,加入5mL甲醛,再滴加两滴酚酞指示剂,最后用标定过后的NaOH溶液滴定至浅红色,平行五次:
空白试验:取25.00mL蒸馏水代替氨溶液进行测定,平行三次。cNaOHVNaOHMmN100%
注意:标定NaOH要求
ds或
d≤0.2%;测定铵态氮要求
s或
d≤0.4%;空白滴
定要求≤0.4%,且空白>0.2mL要扣除。
三、结果与讨论
1、标定NaOH 初读数(mL)末读数(mL)V滴定(mL)
0.03 20.72 20.69
0.12 20.79 20.67
xni
0.03
20.72 20.69 0.11 20.78 20.67 0.22 20.86 20.64
V
=20.672mL,s
cKHRVKHRVNaOH
x
ni
n
n1
=0.02049,s=0.1%<0.2%,则:
cNaOH
=
0.12020.672
=0.09675mol/L2、铵态氮的测定 测定铵态氮 0.01 30.87 30.86
0.13 31.07 30.94
0.04 30.89 30.85
30.77 30.77
0.01 30.86 30.85
x
V
n
i
xn
=30.854mL,s
cNaOHVNaOHM
m
ni
n1
=0.06025,s=0.2%<0.4%,则:
3
w
N
100%
=
0.0967530.85410
0.1600
14
100%=26.12%
空白滴定 初读数(mL)末读数(mL)V滴定(mL)
0.09 0.28 0.19
n
0.05 0.23 0.18 0.02 0.21 0.19
dV
=0.187,d
ni
dn
i
=
0.0030.0070.003
=0.0043,=2.3%>0.4%
讨论:经标定确定NaOH浓度为0.09675mol/L,后经滴定确定铵态氮含量为26.12%。配置的NaOH标准溶液浓度偏低,原因可能是因为3mol/L NaOH放
置久了,与空气中的CO2反应,造成溶液浓度降低,从从而影响NaOH标准溶液的浓度;而铵态氮的测定则有可能因为滴定不准确或者是由于NaOH溶液的标定有误差,造成结果的不准确。
感谢吴明君老师,感谢四川农业大学生命科学与理学院分析化学实验室!
第三篇:四皇后问题实验报告
人工智能——四皇后问题
一、问题描述
四皇后问题
一个4×4国际象棋盘,依次放入四个皇后,条件:每行、每列及对角线上只允许出现一枚棋子。
设:DATA=L(表)x∈L x ∈﹛i j﹜ 1≤ i, j ≤4 其中:i j 表示棋子所在行列 如:24 表示第二行第四列有一枚棋子 ∵棋盘上可放入的棋子数为0 ~ 4 个
∴L表中的元素数为0 ~ 4 个,即 Length L = 0 ~ 4,如图A ﹛12,24,31,43 ﹜
定义规则: if 1≤ i ≤4 and Length DATA = i -1 then APPEND(DATA(ij))1≤ j ≤4 ① 对于任一行i,1≤ j ≤4 表明每行有四条规则。
比如第一行:R11,R12,R13,R14 ② 棋盘中共有四行,所以共有16条规则。
即: R11,R12,R13,R14 R21,R22,R23,R24 R31,R32,R33,R34 R41,R42,R43,R44 ③ 16条规则中,哪些是当前可用规则,取决于DATA的长度,即:DATA中的元素个数。换言之,每次只能将一个棋子放在当前行的下一行。
二、回溯法搜索策略图
讨论:
上述算法产生22次回溯,原因在于规则自然顺序排列,没考虑任何智能因素。改进算法
定义对角线函数:diag(i,j):过ij点最长的对角线长度值。
规定:① 如果: diag(i,k)≤ diag(i,j)则规则排列次序为: Rik,Rij 同一行四条规则中,对角线函数值小的排在前面
② 如果:diag(i,k)= diag(i,j)则规则排列次序为: Rij,Rik j < k 对角线长度相等的规则按照字母排列顺序排序
讨论:
① 利用局部知识排列规则是有效的。
② BACKTRACK算法对重复出现的状态没有判断,所以可能造成出现死循环。③ 没有对搜索深度加以限制,可能造成搜索代价太大。
三、算法描述
回溯法——在约束条件下先序遍历,并在遍历过程中剪去那些不满足条件的分支。
使用回溯算法求解的问题特征,求解问题要分为若干步,且每一步都有几种可能的选择,而且往往在某个选择不成功时需要回头再试另外一种选择,如果到达求解目标则每一步的选择构成了问题的解,如果回头到第一步且没有新的选择则问题求解失败。
在回溯策略中,也可以通过引入一些与问题相关的信息来加快搜索解的速度。对于皇后问题来说,由于每一行、每一列和每一个对角线,都只能放一个皇后,当一个皇后放到棋盘上后,不管它放在棋盘的什么位置,它所影响的行和列方向上的棋盘位置是固定的,因此在行、列方面没有什么信息可以利用。但在不同的位置,在对角线方向所影响的棋盘位置数则是不同的。可以想象,如果把一个皇后放在棋盘的某个位置后,它所影响的棋盘位置数少,那么给以后放皇后留下的余地就太大,找到解的可能性也大;反之留有余地就小,找到解的可能性也小。
四、算法流程图
五、源程序
#include
//存储第i行对应的列的值,这样的(i,j)值满足当前棋盘上的皇后不能互相攻击。
int safetyPlace(int x,int y)//(x,y)位置是否安全 {
int i,j;
for(i=0;i { j=col[i]; if(x==i||y==j) return 0; if(x-y==i-j||x+y==i+j) //判断左右对角线 return 0; } return 1;} void get_position(int i) //处在第i行时状态 { int w,j; char a[1]={3}; if(i==N) //输出棋盘 { for(w=0;w { for(j=0;j { if(board[w][j]==001) printf(“%c ”,board[w][j]); else { printf(“%c”,a[0]); printf(“%c ”,board[w][j]); } } printf(“n”); } printf(“n”); printf(“--------------n”); t++; } else { int u; for(u=0;u { if(safetyPlace(i,u)==1) { col[i]=u; //记录下第i行可行的列的位置 board[i][u]=001; //放置皇后 get_position(i+1); //转换到下一个状态,即下一行 col[i]=0; //回溯到当前状态,重置列和棋盘的值 board[i][u]=0; } } } } main(){ printf(“%c是皇后!nn”,001);get_position(0);printf(“一共有%d种方法!n”,t);} 六、结果截图 七、总结——心得体会 通过对四皇后问题的编程学习,让我对搜索策略更深层次的理解,尤其能比较熟练掌握回溯策略——首先将规则给出一个固定的排序,在搜索时,对当前状态(搜索开始时,当前状态是初始状态)依次检测每一条规则,在当前状态未使用过的规则中找到第一条可应用规则,应用于当前状态,得到的新状态重新设置为当前状态,并重复以上搜索。如果当前状态无规则可用,或者所有规则已经被试探过仍未找到问题的解,则将当前状态的前一个状态(即直接生成该状态的状态)设置为当前状态。重复以上搜索,直到找到问题的解,或者试探了所有可能后仍找不到问题的解为止。 同时,在整个编程学习过程中,使得我对人工智能感到越来越多的趣味性(例如四皇后问题上升到n皇后如何求解),更引起我对学习人工智能这门课程的积极性。 C语言实验报告 (四)一、实验目的 1.掌握C语言中函数和模块 2.掌握怎样定义函数,如何调用或使用函数,如何声明函数 3.掌握函数的参数,了解在函数调用时,参数是如何传递的 4.在使用函数的过程中怎样确定函数的参数 5.如何使用局部变量和全局变量 二、实验内容 1.偶数判断 描述: 编写一个用户自定义函数,该函数有一个整型参数,函数的功能是:当这个整型数的值是偶数时,函数的返回值为0,当这个整型数的值是奇数时,返回值为1。编写一个程序,从键盘输入m个整数,分别调用用户自定义函数来判断这m个整数的奇偶性。 输入: 第一行为一个整数m,表示要判断m个整数的奇偶性;紧接着是m行,每行一个整数。 输出:有m行,分别对应输入的第2到第m+1行的整数的奇偶性 样例输入: 2 1 6 样例输出: 奇数 偶数 ·程序代码: #include“stdio.h” int isEven(int a){ if(a%2==0) return 1;else return 0;} int main(){ int m,i,b;scanf(“%d”,&m); for(i=1;i<=m;i++) { scanf(“%d”,&b); if(isEven(b)==1) printf(“偶数n”); else printf(“奇数n”); } return 0;} 2.温度转换 描述: 编写一个用户自定义函数,函数的功能是:将华氏温度转F换为摄氏温度C。转换公式为:C=5*(F-32)/9。编写一个程序,输出指定范围的华氏温度与摄氏温度的对照表,其中华氏温度步长为4。 输入: 两个空格隔开的整数n,m(且0 #include “stdio.h” float conver(int f){ return 5*(f-32)/9.0;} int main(){ int n,m,i;scanf(“%d%d”,&n,&m);for(i=n;i<=m;i+=4) printf(“%d%10.2fn”,i,conver(i));return 0;} 3.最大值函数 描述:编写一个用户自定义函数,该函数有三个整数参数,函数的功能是:求解这三个整数的最大值,函数的返回值为三个参数的最大值。编写一个程序,从键盘输入任意5个整数,分别两次调用用户自定义函数来求出这5个整数中的最大值。 输入:第一行为N,表示有N组数据,接下来是N行,每行是5个用空格隔开的整数(在VC++6.0 int范围)。输出:有N行,每行是对应输入的5个整数的最大值。样例输入: 3 1 2 3 4 5 5 4 3 2 1 1 2 5 3 4 样例输出: 5 5 5 ·程序代码: #include “stdio.h” int max(int a, int b, int c){ int t;t=a;if(b>t) t=b;if(c>t) t=c;return t;} int main(){ int n,a,b,c,d,e,i;scanf(“%d”,&n);for(i=1;i<=n;i++){ scanf(“%d%d%d%d%d”,&a,&b,&c,&d,&e); printf(“%dn”,max(a,b,max(c,d,e)));} return 0;} 4.三位数数字排序 描述: 对于给定的若干个三位正整数,将它们的各位上的数字按由小到大的顺序输出。要求,写一个函数,能将其整型参数的各位数字按照由小到大进行输出。主函数完成对输入的若干个三位数,分别调用该函数,完成指定的输出。输入: 若干行,每行有一个三位正整数,输入为0结束。输出: 有若干行,依次对应于非0的整数,将相应三位正整数的数字由小到大输出,数字间没有空格。 样例输入: 123 987 670 0 样例输出: 123 789 067 ·程序代码: #include “stdio.h” int main(void){ int n,a[4],xx,sum;scanf(“%d”,&n);while(n!=0){ int i,j; for(i=1;i<=3;i++) { a[i]=n%10; n/=10; } for(i=1;i<=3;i++) { for(j=i;j<=3;j++) { if(a[i]>a[j]) { xx=a[j]; a[j]=a[i]; a[i]=xx; } } } for(i=1;i<=3;i++) } { printf(“%d”,a[i]);} printf(“n”); scanf(“%d”,&n);} return 0;5.排列数计算 描述: 表示从m个元素中抽出n个元素的排列的个数。 计算公式为:编写一个用户自定义函数,该函数有一个整数参数,函数的功能是求解这个整数的阶乘,函数的返回值为这个整数的阶乘。编写一个程序,从键盘输入m、n值,分别两次调用用户自定义函数来求解 : 多行测试数据,每行两个用空格隔开的整数,0 0 表示结束。 输出: 有多行,对应于非0 0行的排列值。 样例输入: 5 3 8 2 0 0 样例输出: 60 56 ·程序代码: #include “stdio.h” int main(void){ double n,m,t;double x1,x2,i,k,kk;scanf(“%lf%lf”,&m,&n);while(n!=0&&m!=0){ x1=1; /*if(m { t=m; m=n; n=t; } */ for(i=1;i<=m;i++) { x1*=i; } k=m-n; x2=1; for(i=1;i<=k;i++) { x2*=i; } kk=x1/x2; printf(“%.0lfn”,kk); scanf(“%lf%lf”,&m,&n);} return 0;} 6.素数对 描述: 哥德巴赫猜想大家都知道一点吧.我们现在不是想证明这个结论,而是想在程序语言内部能够表示的数集中,任意取出一个偶数,来寻找两个素数,使得其和等于该偶数.做好了这件实事,就能说明这个猜想是成立的.由于可以有不同的素数对来表示同一个偶数,所以专门要求所寻找的素数对是两个值最相近的,而且素数对中的第一个数不大于第二个数.输入:输入中是一些偶整数M(6 #include “stdio.h” int prime(int n){ int i;for(i=2;i if(n%i==0) return 0; return 1;} int main(){ int m,i;while(scanf(“%d”,&m)==1)for(i=m/2;i>=2;i--) if(prime(i)&&prime(m-i)&&i!=m-i) { printf(“%d %dn”,i,m-i); break; } return 0;} 7.函数表达式计算 描述:计算下列表达式的值: 输入:输入x和n的值,其中x为非负实数,n为正整数。输出:输出f(x,n),保留2位小数。样例输入: 3 2 样例输出: 2.00 ·程序代码: #include “math.h” #include “stdio.h” /* f(x,1)=sqrt(1+x);f(x,2)=sqrt(2+sqrt(1+x))=sqrt(2+f(x,1));f(3,x)=sqrt(3+sqrt(2+qrt(1+x)))=sqrt(3+f(x,2));......f(x,n)=sqrt(n+f(x,n-1));*/ double f(double x,int n){ if(n>1) return sqrt(n+f(x,n-1));else return sqrt(1+x);} int main(){ int n;double x;scanf(“%lf%d”,&x,&n);printf(“%.2fn”,f(x,n));return 0;} 8.递归公约数 描述:递归形式的公约数定义如下: 使用此定义求两个整数的最大公约数。 输入: 有多行,每行为两个用空格隔开的整数。 输出: 对应的有多行,每行为对应输入的两个整数的最大公约数。 样例输入: 12 6 9 5 11 3 样例输出: 6 1 1 ·程序代码: # include “stdio.h” int gcd(int m, int n){ if(m%n==0) return n;else gcd(n,m%n);} int main(void){ int a,b;while(scanf(“%d%d”,&a,&b)==2){ printf(“%dn”,gcd(a,b));} return 0;} 实验四 手机银行业务------招商银行手机银行业务及其 安全机制(选做) 一、实验目的 1、掌握招商银行手机银行业务支付流程及相关概念; 2、了解招商银行手机银行业务的服务内容; 3、理解招商银行手机银行业务的安全机制; 二、实验内容 1.浏览招商银行网站(http://www.teniu.cc/) 2.了解招商银行手机银行业务 3.熟悉招商银行手机银行业务(http://mobile.cmbchina.com/MobileWeb)的电子支付流程及有关规定。浏览并理解招商银行手机银行业务的安全机制.先登录再进行各项业务的操作,并且记录操作流程。 三、思考题: 1.思考网上手机银行存在哪些安全问题? 手机银行遇到的安全问题主要有两个,一是手机遗失;二是手机遭黑客入侵。专家表示,若无动态密码,若仅凭借账号、账户的交易密码和手机验证码操作,手机一旦被盗窃或验证短信被复制、拦截,那么手机银行的账户资金安全就会受到威胁。 2.你认为影响用户进行手机支付的因素有哪些? (1)大多数手机用户都遭遇过垃圾信息(短信、彩信、电话)的骚扰。(2)机卡分离模式以及难以落实的手机实名制。 (3)手机支付在我国尚属初级阶段,运营商与银行两套系统间的业务融合一时难以完成。(4)手机支付利益各方还未达成统一的结算标准。 (5)虽然从技术上已经解决了手机支付的安全问题,但手机支付标准的统一仍需一段时间。(6)长期以来使用现金、银行卡消费已经成为一种消费习惯.第四篇:C语言实验报告(四)
第五篇:电子商务实验报告实验四