组员:2152304 2141104
一:实验目的:
小学老师要每周给同学出300道四则运算练习题
二:实验环境
Windows 11
devc++
语言:c++语言
三:实验内容
1.c++实现300道四则运算
2.答案在100内
3.两个运算符号
四:实验结果截图
程序主界面:
1.输入1,进入主功能输出产生300道四则运算
2.输入2,退出系统
五:实验总结与体会
思路:我们是将加减乘除分为四个函数,在主函数中用一个随机数对4取余随机进入四则运算,并嵌套循环300次来输出三百道四则运算题。
纠错与体会:
1.原先我们准备在一个主函数中实现全部功能,后来把加减乘除都封装在4个函数中,增强了代码的可读性
2.一开始用if函数直接对除数进行限定,后来另一个同学发现了其中的问题,应该用while循环才能得到最终符合条件的随机数,否则函数直接就结束了
3.void plus()函数在编译过程中出现问题,和库函数重名,改为void plus_()解决。
4.如何随即生成四则运算,我们一起经过讨论决定再引入一个随机数,通过随机数取余进入不同的运算函数
5.随机数的产生使用rand()函数,头文件#include<stdlib.h>,rand()%101得到的就是100以内的数字。
结对编程带给我们最大的感受就是,在进行编程前要先一起理清思路该怎么去写,在写的过程中对方也可以对我的一些粗心小错误进行纠察,在一些难点上一起商讨也更容易提出更合适的解决方案。
源码:
#include<iostream> #include<stdlib.h> using namespace std; void plus_(){ while(1){ int x=rand()%101; int y=rand()%101; if(x+y<=100){ cout<<x<<"+"<<y<<"="<<endl; break; } } } void subtract(){ while(1){ int x=rand()%101; int y=rand()%101; if(x-y<=100&&x-y>=0){ cout<<x<<"-"<<y<<"="<<endl; break; } } } void multipy(){ int i,j,k; while(1){ i=rand()%101; j=rand()%101; k=i*k; if(k<=100){ cout<<i<<"*"<<j<<"="<<endl; break; } } } void divide(){ int i,j,k; while(1){ i=rand()%101; j=rand()%101; if(j!=0&&i/j<=100){ cout<<i<<"/"<<j<<"="<<endl; break; } } } int main(){ while(true){ cout<<"300道四则运算--1"<<endl; cout<<"退出-----------2"<<endl; int n=0; cout<<"请输入你的选择:"<<endl; cin>>n; if(n==1){ for(int i=0;i<300;i++){ int num=rand()%101; int chose; chose=num%4; if(chose==1) { plus_(); } else if(chose==2) { subtract(); } else if(chose==3) { multipy(); } else divide(); } } else return 0; } }
标签:rand,函数,300,四则运算,随机数,include From: https://www.cnblogs.com/han4499/p/17293172.html