面向对象实验报告
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
#include<iostream>
using namespace std;
int main()
{ int i;
double bonus1,bonus2,bonus4,bonus6,bonus10,bonus;
scanf("%d",&i);
bonus1=100000*0.1;
bonus2=bonus1+100000*0.075;
sum=304;break;
case 12:
sum=334;break;
defaulቤተ መጻሕፍቲ ባይዱ:
printf("data error");break;
}
sum=sum+day; /*再加上某天的天数*/
if(year%400==0||(year%4==0&&year%100!=0))/*判断是不是闰年*/
leap=1;
else if (i<=400000)
bonus=bonus2+(i-200000)*0.05;
else if (i<=600000)
bonus=bonus4+(i-400000)*0.03;
else if (i<=1000000)
bonus=bonus6+(i-600000)*0.015;
else
2.要求学生要认真做实验,主要是指不得迟到、早退和旷课,在做实验过程中要严格遵守实验室规章制度,认真完成实验内容,极积主动地向实验教师提问等;若学生无故旷课,则本次实验等级计为D;
3.学生要认真工整地书写实验报告,实验报告的内容要紧扣实验的要求和目的,不得抄袭他人的实验报告;
4.实验成绩评定分为A+、A、A-、B+、B、C、D各等级。根据实验准备、实验态度、实验报告的书写、实验报告的内容进行综合评定,具体对应等级如下:完全符合、非常符合、很符合、比较符合、基本符合、不符合、完全不符合。
s=i;
}//获取主元
if(s!=k)
{
changer(*(A+k),*(A+s));//交换行元素
temp=b[k];b[k]=b[s];b[s]=temp; //右边向量的交换
}
for(i=k+1;i<n;i++)
{
l[i][k]=A[i][k]/A[k][k];//计算消去系数
for(j=k;j<n;j++)
内江师范学院
C++面向对象程序设计
实 验 报 告 册
编制金融数学审定牟廉明
专业:金融数学
班级:级班
学号:
姓名:
数学与信息科学学院
2016年12月
说 明
1.学生在做实验之前必须要准备实验,主要包括预习与本次实验相关的理论知识,熟练与本次实验相关的软件操作,收集整理相关的实验参考资料,要求学生在做实验时能带上充足的参考资料;若准备不充分,则学生不得参加本次实验,不得书写实验报告;
A[i][j]=A[i][j]-l[i][k]*A[k][j];
b[i]=b[i]-l[i][k]*b[k];
}//消元过程
}
if(A[k][k]<0.0001)
{
printf("系数矩阵是非奇异矩阵!\n");
printf("所以:方程无唯一解!\n");
printf("请问是否?\n");
printf("退出请输入1\n");
2.需要一台准备安装Dev-C++的计算机。
实验内容及要求
1.题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
要求:写出实验详细操作步骤及实验结果
实验过程及结果:打开Dev-c++,新建项目
#include<iostream>
using namespace std;
bonus=bonus10+(i-1000000)*0.01;
printf("奖金可以得到%lf\n",bonus);
}
运行得:
实验内容及要求
3.C++解线性方程组的几种方法
要求:写出实验详细操作步骤及实验结果
实验过程及结果:打开Dev-c++,新建项目
#include<math.h>
#include<process.h>
b[i]=(b[i]-u)/A[i][i];
}
printf("最后得方程的根为:\n");
for(i=0;i<n;i++)
printf("x%d=%lf\n",i+1,b[i]);//得出方程的根
system("pause");
return 0;
}
运行得:
实验内容及要求
4.输入某年某月某日,判断这一天是这一年的第几天?
int main()
{ int i,j,k,m;
int num,n=0;
for(i=1;i<5;i++)
{ for(j=1;j<5;j++)
{ for(k=1;k<5;k++)
{ for(m=1;m<5;m++)
{ if(i!=m&&i!=j&&i!=k&&j!=k&&j!=m&&k!=m)
{ num=i*1000+j*100+k*10+m;
else
leap=0;
if(leap==1&&month>2)/*如果是闰年且月份大于2,总天数应该加一天*/
sum++;
printf("It is the %d day.",sum);
return 0;
}
运行的:
实验内容及要求
5.分别定义Teacher(教师)类和Cadre(干部)类,采用多重继承方式有这两类派生出新类Teacher_Cadre(教师兼干部)类。要求:
class Teacher
{
public:
Teacher(string nam, int a, char s, string tit, string ad, string t)
{name=nam;
age=a;
sex=s;
title=t;
addr=ad;
tel=t;}
void display();
protected:
#include<stdio.h>//自己定义的一个预处理命令(头文件)
#define kk 50 //定义最大方程元数
int n;//定义一个整型变量n
void changer(double *p,double *q) // changer函数声明
{
int i;
double temp;
for(i=0;i<n;i++)
n++;
printf("%-6d",num);
if(n>1&&n%10==0)
printf("\n");
}
}
}
}
}
printf("\n一共有%d个数字\n",n);
return 0;
}
运行得:
实验内容及要求
2.企业发放的奖金根据利润提成。
利润(I)低于或等于10万元时,奖金可提10%;
利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可可提成7.5%;
(1)在两个基类中都包含姓名、年龄、性别、地址、电话等数据成员。
(2)在Teacher类中还包含数据成员title(职称),在Cadre类中还包含数据成员post(职务),在Teacher_Cadre类中还包含数据成员wages(工资)。
(3)对两个基类中的姓名、年龄、性别、地址、电话等数据成员用相同的名字,在引用这些数据成员时,指定作用域。
{name=nam;
age=a;
sex=s;
sex=s;
post=p;
addr=ad;
tel=t;}
void display();
protected:
string name;
int age;
char sex;
string post;
printf("请输入右边向量:\n");
for(i=0;i<n;i++)
scanf("%lf",&b[i]);
for(k=0;k<n-1;k++)
{
s=k;
r=fabs(A[k][k]);//右边的值复制给左边
for(i=k;i<n;i++)
if(r<fabs(A[i][k]))
{
r=fabs(A[i][k]);
cout << "sex:" << sex << endl;
cout << "title:" << title << endl;
cout << "addr:" << addr << endl;
cout << "tel:" << tel << endl;
}
class Cadre
{
public:
Cadre(string nam, int a, char s, string p, string ad, string t)
20万到40万之间时,高于20万元的部分,可提成5%;
40万到60万之间时高于40万元的部分,可提成3%;
60万到100万之间时,高于60万元的部分,可提成1.5%,高于100万元时,超过100万元的部分按1%提成,从键盘输入当月利润I,求应发放奖金总数?
要求:写出实验详细操作步骤及实验结果
实验过程及结果:打开Dev-c++,新建项目
闰年:四年一闰,百年不润,四百年再闰
要求:写出实验详细操作步骤及实验结果
实验过程及结果打开Dev-c++,新建项目:
#include <iostream>
using namespace std;
int main()
{
int day,month,year,sum,leap;
printf("\nplease input year,month,day\n");
(4)在类体中声明成员函数,在类外定义成员函数。
(5)在派生类Teacher_Cadre的成员函数show中调用Teacher类中的display函数,输出姓名、年龄、性别、职称、地址、电话,然后再用cout语句输出职务与工资。
#include<iostream>
#include<string>
using namespace std;
scanf("%d,%d,%d",&year,&month,&day);
printf("%d,%,d%d",year,month,day);
switch(month)/*先计算某月以前月份的总天数*/
{
case 1:
sum=0;break;
case 2:
sum=31;break;
case 3:
sum=59;break;
printf("要继续请输入任意非1的整数\n");//输出屏幕内容
int g;
scanf("%d",&g);
if(g!=1)goto aa;
else exit(1);
}//判断系数矩阵的奇异性
for(i=n-1;i>=0;i--)
{
u=0;
for(j=i+1;j<n;j++)
u=u+A[i][j]*b[j];
aa: printf("输入的方程元数:\n");
scanf("%d",&n);
printf("请输入方程系数矩阵:\n");//屏幕提示内容
for(i=0;i<n;i++)
for(j=0;j<n;j++)
scanf("%lf",&A[i][j]);//让用户输入变量A[i][j], "if"是dooble类型
case 4:
sum=90;break;
case 5:
sum=120;break;
case 6:
sum=151;break;
case 7:
sum=181;break;
case 8:
sum=212;break;
case 9:
sum=243;break;
case 10:
sum=273;break;
case 11:
string name;
int age;
char sex;
string title;
string addr;
string tel;
};
void Teacher :: display()
{
cout << "name:" << name << endl;
cout << "age:" << age << endl;
bonus4=bonus2+200000*0.05;
bonus6=bonus4+200000*0.03;
bonus10=bonus6+400000*0.015;
if (i<=100000)
bonus=i*0.1;
else if (i<=200000)
bonus=bonus1+(i-100000)*0.075;
实验名称:C++面向对象程序设计指导教师:许雷
实验时数:实验设备:Dev-C++的计算机
实验日期:年月日实验地点:第五教学楼北802
实验目的:
熟悉对初级单元进行简单随机抽样及估计,对各估计量的精度进行比较并分析。
实验准备:
1.回顾分层随机抽样总体均值、总和的估计,比例的估计以及估计量的方差和置信区间;
{
temp=*(p+i);
*(p+i)=*(q+i);
*(q+i)=temp;
}
} //交换行元素的函数
main()
{
int i,j,k,s;//定义整型变量i,j,k,s
double A[kk][kk],r,l[kk][kk],b[kk],u,temp;//定义double类型A[kk][kk],r,l[kk][kk],b[kk],u,temp
using namespace std;
int main()
{ int i;
double bonus1,bonus2,bonus4,bonus6,bonus10,bonus;
scanf("%d",&i);
bonus1=100000*0.1;
bonus2=bonus1+100000*0.075;
sum=304;break;
case 12:
sum=334;break;
defaulቤተ መጻሕፍቲ ባይዱ:
printf("data error");break;
}
sum=sum+day; /*再加上某天的天数*/
if(year%400==0||(year%4==0&&year%100!=0))/*判断是不是闰年*/
leap=1;
else if (i<=400000)
bonus=bonus2+(i-200000)*0.05;
else if (i<=600000)
bonus=bonus4+(i-400000)*0.03;
else if (i<=1000000)
bonus=bonus6+(i-600000)*0.015;
else
2.要求学生要认真做实验,主要是指不得迟到、早退和旷课,在做实验过程中要严格遵守实验室规章制度,认真完成实验内容,极积主动地向实验教师提问等;若学生无故旷课,则本次实验等级计为D;
3.学生要认真工整地书写实验报告,实验报告的内容要紧扣实验的要求和目的,不得抄袭他人的实验报告;
4.实验成绩评定分为A+、A、A-、B+、B、C、D各等级。根据实验准备、实验态度、实验报告的书写、实验报告的内容进行综合评定,具体对应等级如下:完全符合、非常符合、很符合、比较符合、基本符合、不符合、完全不符合。
s=i;
}//获取主元
if(s!=k)
{
changer(*(A+k),*(A+s));//交换行元素
temp=b[k];b[k]=b[s];b[s]=temp; //右边向量的交换
}
for(i=k+1;i<n;i++)
{
l[i][k]=A[i][k]/A[k][k];//计算消去系数
for(j=k;j<n;j++)
内江师范学院
C++面向对象程序设计
实 验 报 告 册
编制金融数学审定牟廉明
专业:金融数学
班级:级班
学号:
姓名:
数学与信息科学学院
2016年12月
说 明
1.学生在做实验之前必须要准备实验,主要包括预习与本次实验相关的理论知识,熟练与本次实验相关的软件操作,收集整理相关的实验参考资料,要求学生在做实验时能带上充足的参考资料;若准备不充分,则学生不得参加本次实验,不得书写实验报告;
A[i][j]=A[i][j]-l[i][k]*A[k][j];
b[i]=b[i]-l[i][k]*b[k];
}//消元过程
}
if(A[k][k]<0.0001)
{
printf("系数矩阵是非奇异矩阵!\n");
printf("所以:方程无唯一解!\n");
printf("请问是否?\n");
printf("退出请输入1\n");
2.需要一台准备安装Dev-C++的计算机。
实验内容及要求
1.题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
要求:写出实验详细操作步骤及实验结果
实验过程及结果:打开Dev-c++,新建项目
#include<iostream>
using namespace std;
bonus=bonus10+(i-1000000)*0.01;
printf("奖金可以得到%lf\n",bonus);
}
运行得:
实验内容及要求
3.C++解线性方程组的几种方法
要求:写出实验详细操作步骤及实验结果
实验过程及结果:打开Dev-c++,新建项目
#include<math.h>
#include<process.h>
b[i]=(b[i]-u)/A[i][i];
}
printf("最后得方程的根为:\n");
for(i=0;i<n;i++)
printf("x%d=%lf\n",i+1,b[i]);//得出方程的根
system("pause");
return 0;
}
运行得:
实验内容及要求
4.输入某年某月某日,判断这一天是这一年的第几天?
int main()
{ int i,j,k,m;
int num,n=0;
for(i=1;i<5;i++)
{ for(j=1;j<5;j++)
{ for(k=1;k<5;k++)
{ for(m=1;m<5;m++)
{ if(i!=m&&i!=j&&i!=k&&j!=k&&j!=m&&k!=m)
{ num=i*1000+j*100+k*10+m;
else
leap=0;
if(leap==1&&month>2)/*如果是闰年且月份大于2,总天数应该加一天*/
sum++;
printf("It is the %d day.",sum);
return 0;
}
运行的:
实验内容及要求
5.分别定义Teacher(教师)类和Cadre(干部)类,采用多重继承方式有这两类派生出新类Teacher_Cadre(教师兼干部)类。要求:
class Teacher
{
public:
Teacher(string nam, int a, char s, string tit, string ad, string t)
{name=nam;
age=a;
sex=s;
title=t;
addr=ad;
tel=t;}
void display();
protected:
#include<stdio.h>//自己定义的一个预处理命令(头文件)
#define kk 50 //定义最大方程元数
int n;//定义一个整型变量n
void changer(double *p,double *q) // changer函数声明
{
int i;
double temp;
for(i=0;i<n;i++)
n++;
printf("%-6d",num);
if(n>1&&n%10==0)
printf("\n");
}
}
}
}
}
printf("\n一共有%d个数字\n",n);
return 0;
}
运行得:
实验内容及要求
2.企业发放的奖金根据利润提成。
利润(I)低于或等于10万元时,奖金可提10%;
利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可可提成7.5%;
(1)在两个基类中都包含姓名、年龄、性别、地址、电话等数据成员。
(2)在Teacher类中还包含数据成员title(职称),在Cadre类中还包含数据成员post(职务),在Teacher_Cadre类中还包含数据成员wages(工资)。
(3)对两个基类中的姓名、年龄、性别、地址、电话等数据成员用相同的名字,在引用这些数据成员时,指定作用域。
{name=nam;
age=a;
sex=s;
sex=s;
post=p;
addr=ad;
tel=t;}
void display();
protected:
string name;
int age;
char sex;
string post;
printf("请输入右边向量:\n");
for(i=0;i<n;i++)
scanf("%lf",&b[i]);
for(k=0;k<n-1;k++)
{
s=k;
r=fabs(A[k][k]);//右边的值复制给左边
for(i=k;i<n;i++)
if(r<fabs(A[i][k]))
{
r=fabs(A[i][k]);
cout << "sex:" << sex << endl;
cout << "title:" << title << endl;
cout << "addr:" << addr << endl;
cout << "tel:" << tel << endl;
}
class Cadre
{
public:
Cadre(string nam, int a, char s, string p, string ad, string t)
20万到40万之间时,高于20万元的部分,可提成5%;
40万到60万之间时高于40万元的部分,可提成3%;
60万到100万之间时,高于60万元的部分,可提成1.5%,高于100万元时,超过100万元的部分按1%提成,从键盘输入当月利润I,求应发放奖金总数?
要求:写出实验详细操作步骤及实验结果
实验过程及结果:打开Dev-c++,新建项目
闰年:四年一闰,百年不润,四百年再闰
要求:写出实验详细操作步骤及实验结果
实验过程及结果打开Dev-c++,新建项目:
#include <iostream>
using namespace std;
int main()
{
int day,month,year,sum,leap;
printf("\nplease input year,month,day\n");
(4)在类体中声明成员函数,在类外定义成员函数。
(5)在派生类Teacher_Cadre的成员函数show中调用Teacher类中的display函数,输出姓名、年龄、性别、职称、地址、电话,然后再用cout语句输出职务与工资。
#include<iostream>
#include<string>
using namespace std;
scanf("%d,%d,%d",&year,&month,&day);
printf("%d,%,d%d",year,month,day);
switch(month)/*先计算某月以前月份的总天数*/
{
case 1:
sum=0;break;
case 2:
sum=31;break;
case 3:
sum=59;break;
printf("要继续请输入任意非1的整数\n");//输出屏幕内容
int g;
scanf("%d",&g);
if(g!=1)goto aa;
else exit(1);
}//判断系数矩阵的奇异性
for(i=n-1;i>=0;i--)
{
u=0;
for(j=i+1;j<n;j++)
u=u+A[i][j]*b[j];
aa: printf("输入的方程元数:\n");
scanf("%d",&n);
printf("请输入方程系数矩阵:\n");//屏幕提示内容
for(i=0;i<n;i++)
for(j=0;j<n;j++)
scanf("%lf",&A[i][j]);//让用户输入变量A[i][j], "if"是dooble类型
case 4:
sum=90;break;
case 5:
sum=120;break;
case 6:
sum=151;break;
case 7:
sum=181;break;
case 8:
sum=212;break;
case 9:
sum=243;break;
case 10:
sum=273;break;
case 11:
string name;
int age;
char sex;
string title;
string addr;
string tel;
};
void Teacher :: display()
{
cout << "name:" << name << endl;
cout << "age:" << age << endl;
bonus4=bonus2+200000*0.05;
bonus6=bonus4+200000*0.03;
bonus10=bonus6+400000*0.015;
if (i<=100000)
bonus=i*0.1;
else if (i<=200000)
bonus=bonus1+(i-100000)*0.075;
实验名称:C++面向对象程序设计指导教师:许雷
实验时数:实验设备:Dev-C++的计算机
实验日期:年月日实验地点:第五教学楼北802
实验目的:
熟悉对初级单元进行简单随机抽样及估计,对各估计量的精度进行比较并分析。
实验准备:
1.回顾分层随机抽样总体均值、总和的估计,比例的估计以及估计量的方差和置信区间;
{
temp=*(p+i);
*(p+i)=*(q+i);
*(q+i)=temp;
}
} //交换行元素的函数
main()
{
int i,j,k,s;//定义整型变量i,j,k,s
double A[kk][kk],r,l[kk][kk],b[kk],u,temp;//定义double类型A[kk][kk],r,l[kk][kk],b[kk],u,temp