C++程序设计表面积和体积的计算程序,简单些,与别人不一样就好

C++程序设计表面积和体积的计算程序,简单些,与别人不一样就好,第1张

#include <iostream>

using namespace std;

#define PI 31415926

class Area

{

public:

virtual double biaoarea()=0;

virtual double volumn()=0;

};

class Ball:public Area

{

private:

double r;

public:

Ball():Area()

{

r=00;

}

virtual double biaoarea()

{

double k;

k=40PIrr;

return k;

}

virtual double volumn()

{

double k=40/30;

k=kPIrrr;

return k;

}

void set(double t)

{

r=t;

}

};

class Cube:public Area

{

private:

double length;

double width;

double high;

public:

Cube():Area()

{

length=00;

width=00;

high=00;

}

virtual double volumn()

{

double k;

k=lengthwidthhigh;

return k;

}

virtual double biaoarea()

{

double k;

k=20(lengthwidth+lengthhigh+widthhigh);

return k;

}

void set(double a,double b,double c)

{

length=a;

width=b;

high=c;

}

};

class Cylinder:public Area

{

private:

double r;

double high;

public:

Cylinder():Area()

{

r=00;

high=00;

}

virtual double biaoarea()

{

double k;

k=PIrr+20PIrhigh;

return k;

}

virtual double volumn()

{

double k;

k=PIrrhigh;

return k;

}

void set(double a,double b)

{

r=a;

high=b;

}

};

class Taper:public Area

{

private:

double r;

double l;

double hight;

public:

Taper():Area()

{

r=00;

l=00;

hight=00;

}

virtual double biaoarea()

{

double k;

k=PIrr+PIrl;

return k;

}

virtual double volumn()

{

double k;

k=(10/30)PIrrhight;

return k;

}

void set(double a,double b,double c)

{

r=a;

l=b;

hight=c;

}

};

int main()

{

double length,width,high,rr;

Ball mm;

Cube nn;

Taper kk;

Cylinder tt;

int chioce;

do 

{

cout<<"请输入你需要计算的集合体:(1球   2立方体  3圆锥体  4圆柱体  5退出):"<<endl;

cin>>chioce;

switch(chioce)

{

case 1:

cout<<"请输入需要计算的球的半径r:";

cin>>rr;

mmset(rr);

cout<<"该球的表面积为:"<<mmbiaoarea()<<endl;

cout<<"该球的体积为:  "<<mmvolumn()<<endl;

break;

case 2:

cout<<"请输入需要计算的立方体的长、宽、高:";

cin>>length>>width>>high;

nnset(length,width,high);

cout<<"该立方体的表面积为:"<<nnbiaoarea()<<endl;

cout<<"该立方体的体积为:  "<<nnvolumn()<<endl;

break;

case 3:

cout<<"请输入需要计算的圆锥体的半径、母线长、高:";

cin>>rr>>length>>high;

kkset(rr,length,high);

cout<<"该圆锥的表面积为:"<<kkbiaoarea()<<endl;

cout<<"该圆锥体的体积为:"<<kkvolumn()<<endl;

break;

case 4:

cout<<"请输入需要计算的圆柱体的半径和高:";

cin>>rr>>high;

ttset(rr,high);

cout<<"该圆柱体的表面积为:"<<ttbiaoarea()<<endl;

cout<<"该圆柱体的体积为:  "<<ttvolumn()<<endl;

break;

case 5:

cout<<"退出成功!"<<endl;

break;

default:

cout<<"输入错误,请重新输入!"<<endl;

break;

}

} while (chioce != 5);

return 0;

}

一、动态载荷的添加

通用程序控制中的外载荷为恒定载荷,对于材料在动态载荷作用下的破坏过程,所受的外载荷一般都是随着时间变化的载荷,例如三角波载荷等。通过对通用程序控制进行改进添加冲击三角波载荷,以适应对冲击问题的模拟。三角波载荷的示意图如图13-1所示。

图13-1 三角波载荷示意图

其中:Fmax为动态三角波冲击载荷的峰值;t1和t2分别为动态载荷的峰值时间和截止时间。

二、模型计算流程

岩石是一种典型的d脆性材料,在外力作用下,一般不会发生明显的塑性变形,因此可以不考虑材料的塑性变形。由于岩石的抗压强度远大于其抗拉强度,可以认为岩石在受压时,材料内部不会产生新的损伤,即不考虑体积压缩时的损伤累积。尽管在采用静态d性模型计算时,可以不考虑材料的损伤演化,但是由于在其他时步的计算过程中,产生的损伤是不会恢复的,所以在进行d性计算时,材料的d性模量将不同于最初的d性模量,变为损伤后的d性模量。根据以上的思路,可按照以下的计算流程来进行计算:

1总体计算流程(针对单个块体)

(1)若块体单元损伤变量D为1,则不再对该单元进行计算而直接进入下一个单元的计算,否则进入(2)。

(2)计算体积应变εv,如果εv<0即单元处于体积压缩状态,则进入(3),否则进入(4)。

(3)按照d性损伤模型,由应变计算应力,并且保持D值不变(不考虑体积压缩时的损伤积累),进入(5)。

(4)当岩石处于受拉状态时,材料的应力应变关系并不都是按照应力波衰减模型来计算的,而且还与应变变化率有一定的关系,仅当应变率大于10时,才能按照动态的应力波衰减模型,由应变计算应力值,进入(5);而当应变率小于10时,按照岩石受压状态下的d性损伤模型来计算(高尔新等,1999),然后进入(5)。

(5)如果D>1或D=1,则令D=1,并置当前所计算块体的压力和偏应力为零,进入下一步的计算。

在每一步的计算中需要对所有单元进行一一计算,并保存当前步的应力及应变计算结果以供下一步计算使用。

2具体的计算模型和公式

第一步计算:

(1)由于对D值的计算需要用到D的变化率,因此本步计算中保持D值不变。

(2)应变变化率

岩石断裂与损伤

(3)体积应变

岩石断裂与损伤

(4)动态应力波衰减模型

σij=3K(1-D)εδij+2G(1-D)eij

岩石断裂与损伤

(5)d性损伤模型

岩石断裂与损伤

在以上各式中:E、G、K、μ分别为材料的d性模量、剪切模量、体积模量和泊松比。

第二步及其以后的计算:

(1)D值的计算:

岩石断裂与损伤

(2)应变变化率的计算:

岩石断裂与损伤

(3)体积应变的计算:

岩石断裂与损伤

应力波衰减模型与d性损伤模型同第一步相同。

以上的讨论和建立的公式都是针对于平面应力问题而言的,如果要求解的问题属于平面应变问题,需要把以上方程式中的E换为,μ换为。

public class Jctest

{

public static void main(String[] args)

{

int sum = 0;

sum = JcFun(3)+JcFun(5)+JcFun(6);

Systemoutprintln("3! is : "+JcFun(3));

Systemoutprintln("5! is : "+JcFun(5));

Systemoutprintln("6! is : "+JcFun(6));

Systemoutprintln("3!+5!+6! is : "+sum);

}

public static int JcFun(int n)

{

if(n==0||n==1)

return 1;

else

return nJcFun(n-1);

}

}

真想不通,java本身就是纯面象对象的居然还会出现在题目中,以后别再说这样的话了。

以上就是关于C++程序设计表面积和体积的计算程序,简单些,与别人不一样就好全部的内容,包括:C++程序设计表面积和体积的计算程序,简单些,与别人不一样就好、程序计算流程、编写一个应用程序,计算3!、5!、6!,以及3!+5!+6!,用面向对象的编程方法实现。等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/9838136.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-02
下一篇2023-05-02

发表评论

登录后才能评论

评论列表(0条)

    保存