91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 7KB
    文件類型: .cpp
    金幣: 1
    下載: 0 次
    發布日期: 2021-06-04
  • 語言: C/C++
  • 標簽: 運算??文件??計算??c++??

資源簡介

小學生往往被要求回家后由家長出一些額外的四則運算練習以加強復習,但每天重復勞動效率低下,現請你設計一個自動出題的程序,以幫助家長解決每天的煩惱。注意:本程序不是要求人從鍵盤輸入計算表達式然后由電腦來算,而是由電腦出題,人來算。

資源截圖

代碼片段和文件信息

#include
#include
#include
#include
using?namespace?std;
#define?STACK_INIT_SIZE?100;
#define?STACKINCREMENT?10;
typedef?struct
{
char?*base;
char?*top;
int?stacksize;
}SqStack;??//運算符棧
typedef?struct
{
double?*base;
double?*top;
int?stacksize;
}SqStack1;???//操作數棧

//全局變量
char?operateChar[4];//運算符
double??stackNum[100];?????//操作數數組
char?stackOpChar[100];??//操作符字符數組
int?stackNumNo=0;???????//操作數個數
int?stackOpCharNo=0;????//運算符個數
int?opType;???????????//操作數種類
bool?error=false;
int?m;

//用戶輸入結構
struct?input
{
int?no;//習題數;
int?operateNo;???????????//操作數數目;
int?operateBit;??????????//操作數數位;
int?isFraction;??????????//能否為小數;
int?isNegative;??????????//能否為負數;
int?scopemax;???????????????//允許出現的最大值;
int?scopemin;???????????????//允許出現的最小值
// char?yourOperateChar[4];//可以出現的運算符;
}in;
void?InitStack(SqStack?&S)
{//構造一個操作符空棧S
S.base=new?char[100];
S.top=S.base;
S.stacksize=STACK_INIT_SIZE;
}
void?InitStack(SqStack1?&S)
{???//構造一個操作數空棧S
S.base=new?double[100];
S.top=S.base;
S.stacksize=STACK_INIT_SIZE;
}

char?GetTop(SqStack?S)
{//若棧不空,則用e返回S的棧頂元素
????char?e;
if(S.top==S.base)return?-1;
e=*(S.top-1);
return?e;
}
double?GetTop(SqStack1?S)
{//若棧不空,則用e返回S的棧頂元素
????double?e;
if(S.top==S.base)return?-1;
e=*(S.top-1);
return?e;
}

template
int?Push(T?&ST1?e)
{//插入元素e為新的棧頂元素
*S.top++=e;
return?0;
}
template
int?Pop(T?&ST1?&e)
{????//若棧不空,則刪除S的棧頂元素,用e返回其值,并返回0,否則返回-1;
if(S.top==S.base)return?-1;
e=*--S.top;
return?0;
}

double?Operate(double?achar?thetadouble?b)
{
switch(theta)
{
case?‘+‘:return?a+b;
case?‘-‘:return?a-b;
case?‘*‘:return?a*b;
case?‘/‘:return?a/b;
}
return?0;
}
char?Precede(char?t1char?t2)
{
if((t1==‘+‘||t1==‘-‘)&&(t2==‘*‘||t2==‘/‘))return?‘<‘;
else?return?‘>‘;
}
//產生隨機數
int?createOperateNum(int?bit)
{?
int?i=1randomNumberrandomdata;
while(bit>0)
{
i=10*i;
bit--;
}
????randomNumber?=?rand();//生成隨機數rand()?生成的是0~32767之間的一個隨機數。?
????randomdata?=??(randomNumber?%?i);?//獲得不大于bit位的隨機數

return?randomdata;
}
//產生運算符
char?createOperateChar(int?i)
{
????int?randomNumberrandomdata;
randomNumber?=?rand();
randomdata?=?(randomNumber?%?i);

return?operateChar[randomdata];?
}
//用戶輸入
void?getInputData()
{
cout<<“請輸入習題數(習題數規定至少不小于5):“< cin>>in.no;
while(in.no<5)?????????//如果輸入題數in.no小于5,則請重新輸入
{
cout<<“您的輸入題數不夠,請重新輸入“< cin>>in.no;
}
cout<<“請輸入操作數個數:“< cin>>in.operateNo;
cout<<“請輸入操作數位數“< cin>>in.operateBit;
cout<<“運算中間結果是否允許為小數,1代表能,0代表不能“< cin>>in.isFraction;
if(in.isFraction==1)
{
cout<<“請輸入您想保留的小數位數m(m≥0且m≤4):“< cin>>m;
}
cout<<“運算中間結果是否允許為負數,1代表能,0代表不能“< cin>>in.isNegative;
cout<<“請輸入結果允許出現的最大值:“< cin>>in.scopemax;
cout<<“請輸入結果允許出現的最小值:“< cin>>in.scopemin;
cout<<“請輸入您想要使用的操作符并以‘#‘結束輸入:“< char?c[

評論

共有 條評論