自動出題程式(10以內的數字的四則運算)
程式碼如下:
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
int main()
{
int num1,num2,op,result1,result2; //num1,num2:運算元;op:運算子;result1,result2:結果
do
{
srand(time(NULL));
num1=rand()*10/(RAND_MAX+1);
num2=rand()*10/(RAND_MAX+1); //生成運算數
op=rand()*4/(RAND_MAX+1); //生成運算子 0-- +,1-- -,2-- *,3-- /
switch (op)
{
case 0:
cout<<num1<<"+"<<num2<<"=? ";
cin>>result1;
if (num1+num2 == result1)
cout<<"you are right"<<endl;
else
cout<<"you are wrong"<<endl;
break;
case 1:
cout<<num1<<"-"<<num2<<"=? ";
cin>>result1;
if (num1-num2 == result1)
cout<<"you are right"<<endl;
else
cout<<"you are wrong"<<endl;
break;
case 2:
cout<<num1<<"*"<<num2<<"=? ";
cin>>result1;
if (num1*num2 == result1)
cout<<"you are right"<<endl;
else
cout<<"you are wrong"<<endl;
break;
case 3:
cout<<num1<<"/"<<num2<<"=? ";
cin>>result1;
cout<<"餘數為=? ";
cin>>result2;
if ((num1/num2 == result1)&&(num1%num2==result2))
cout<<"you are right"<<endl;
else
cout<<"you are wrong"<<endl;
break;
}
}while(1);
return 0;
}
庫cstdlib中含有隨機數生成函式。程式的迴圈內的第一條語句srand(time(NULL))的作用是設定隨機數的種子,隨機數的生成需要種子,不同的種子可以生成不同1隨機數序列。如果使用者不設定隨機數的種子,系統會指定一個。系統為每個程式、每次執行指定的隨機數的種子都是相同的,即在程式中,每次執行出的題目都是相同的。但同時,如果程式設計師設定的種子是一個固定值,那麼程式每次執行的到的隨機數序列還是相同的。如果讓程式每次執行時選擇的種子不一樣呢?在一個計算機系統中,時間總是在變。因此把系統時間設為種子是一個很好的想法。time(NULL)就是取當前的系統時間。為了使用時鐘,需要包含標頭檔案ctime。 ————翁惠玉老師 《C++程式設計思想與方法》
相關文章
- 自動生成小學四則運算程式
- 作業二:自動生成小學四則運算程式
- 結對程式設計--自動生成小學四則運算程式設計
- 四則運算小程式
- C語言:一個能自動生成小學四則運算題目的程式C語言
- 實現一個自動生成小學四則運算題目的命令列程式命令列
- 程式碼·--四則運算的主要核心程式碼
- java大整數四則運算Java
- 四則運算
- 四則運算的開發
- 四則運算之主要程式碼
- 複數的四則運算(C語言實現)C語言
- 軟體工程第二次作業——自動生成小學四則運算題目程式軟體工程
- 隨機生成三百道四則混合運算題目程式隨機
- 簡單c++實現複數的四則運算C++
- 結對程式設計-四則運算程式設計
- 用SQL計算100以內的質數SQL
- 四則運算計算器
- 棧的應用——計算器的四則運算
- 四則運算GUI版本GUI
- 四則運算----封裝封裝
- 安卓版四則運算安卓
- 四則運算——安卓版安卓
- 四則運算專案
- 四則運算手冊
- YTU-OJ-分數類的四則運算【C++】C++
- 結對程式設計——小學四則運算練習題小程式程式設計
- js 處理四則運算失去精度問題JS
- 12月10日四則運算工作匯報
- Java:將100以內的數字翻譯成英文Java
- OpenMP平行計算程式設計-n以內的完數的個數程式設計
- Java簡單四則運算Java
- 四則運算之總結
- 四則運算介面練習
- 帶介面的四則運算
- 四則運算--封裝5.1封裝
- 四則運算app總結APP
- 個人專案--四則運算