课后实验1--四则运算
Posted fightingyingzi
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了课后实验1--四则运算相关的知识,希望对你有一定的参考价值。
一、功能介绍
1.可以实现100以内的任意两个整数以及真分数的混合四则运算,随机数随时间变化不重复,且考虑到了被减数大于减数以及除数不能为零的情况等,可以自动输出20个不同的式子。
二、编程思想
1.首先写出随机数函数
2.产生两个随机数,调用随机数函数,真分数和整数各一个,利用随机数取余数来使这两个随机数进行组合。
3.利用随机数取余数来实现运算符的选择,其中除法要保证除数不为零,减法要保证被减数大于减数,利用相应的运算符与两个随机数组成的式子计算出结果。
4.利用循环实现20个四则运算式子的输出。
三、实验代码
//HaoYing 2016.3.3 信1301-2班 20132919
//四则运算小程序
#include<iostream>
#include<stdlib.h>
#include<time.h>
using namespace std;
int main()
{
double n[4];
int edg,choose,i,next;
char mark;
srand((int)time(NULL));//变换随机数
for(next=0;next<20;next++)//每天设置20道四则运算
{
for(i=0;i<2;i++)
{
edg=(rand()%100)%2;
if(edg==0)
n[i]=rand()%100;//随机数范围【0,100】
else
n[i]=rand()%100/100.0;//随机真分数
}
choose=(rand()%100)%4;
if(choose==0)
{
n[2]=n[0]+n[1];
mark=‘+‘;
}
else if(choose==1)
{
if(n[0]>n[1])
{
n[2]=n[0]-n[1];
mark=‘-‘;
}
else
{
n[3]=n[0];
n[0]=n[1];
n[1]=n[3];//使被减数大于减数
n[2]=n[0]-n[1];
mark=‘-‘;
}
}
else if(choose==2)
{
n[2]=n[0]*n[1];
mark=‘*‘;
}
else if(choose==3)
{
while(n[1]==0)//保证除数大于0
{
edg=(rand()%100)%2;
if(edg==0)
n[1]=rand()%100;//随机数范围【0,100】
else
n[1]=rand()%100/100.0;//随机真分数
}
n[2]=n[0]/n[1];
mark=‘/‘;
}
cout<<n[0]<<mark<<n[1]<<"="<<n[2]<<endl;//显示式子
}
return 0;
}
四、运行结果
以上是关于课后实验1--四则运算的主要内容,如果未能解决你的问题,请参考以下文章