20194741自動生成四則運算題第一版報告
摘要:double x = Math.random()imax。double y = Math.random()imax。
一、需求分析
leader給出項目需求,需要製作一個四則運算的試題的程序
二、需求分析
(1)自動生成10道100以內的2個操作數的四則運算算式(+ - /),要求運算結果也在100以內
(2)剔除重複算式。 2 + 3 = 和 2 + 3 = 是重複算式 2 + 3 = 和 3 + 2 = 不屬於重複算式
(3)題目數量可定製
(4)相關參數可控制
是否包含乘法和除法
操作數數值範圍可控(如操作數 在100以內 還是1000以內)
操作數是否含負數
(5)生成的運算題存儲到外部文件result.txt中
三、設計實現
PrintStream 生成TXT文件;
Scanner 輸入內容獲取;
Math.random() 生成隨機數;
println 輸出內容顯示;
四. 測試運行
五. 粘貼自己覺得比較獨特的或滿意的代碼片段
因爲對java不是很熟悉,所以使用了各種if的判斷和for循環進行操作
for(int i=0;i<num;i++){
double x = Math.random()imax; //生成第一個數
double y = Math.random()imax; //生成第二個數
double m = 1;
char l = 1; //生成負數
for(int p=0;p<2;p++){
if(fushu == 1){
m = (int)Math.random()2;
if( m == 0){
l = (char)'-';
}
}
}
double z = 1;
if(suanfa == 1){
z = Math.random()2; //生成加減法
}else if(suanfa == 2){
z = Math.random()4; //生成加減乘除法
}else if(suanfa == 3){
double n = 1;
n = Math.random()2; //生成加減法
z = n+2;
}
int one = (int)x; //生成第一個數
int two = (int)y; //生成第二個數
int three = (int)z; //生成加減符號
char four = 1;
int five = 1;
if(three==0){
if(one+two<=imax){
four = (char)'+';
if(m==0){
one = -one;
two = -two;
}
five = one+two;
System.out.println("測試加法"+one+" "+four+" "+two+"="+five);
}else{
i--;
}
}else if(three==1){
if(one-two>=0){
four = (char)'-';
if(m==0){
one = -one;
two = -two;
}
five = one-two;
System.out.println("測試減法"+one+" "+four+" "+two+"="+five);
}else{
i--;
}
}else if(three==2){
if(onetwo<=imax){
four = (char)'';
if(m==0){
one = -one;
two = -two;
}
five = onetwo;
System.out.println("測試乘法"+one+" "+four+" "+two+"="+five);
}else{
i--;
}
}else if(three==3){
if(one/two>=0){
four = (char)'/';
if(m==0){
one = -one;
two = -two;
}
float six = (float)one/two;
System.out.println("測試除法"+one+" "+four+" "+two+"="+six);
}else{
i--;
}
}
}
六. 總結:
通過編寫這個程序,讓我在java零基礎上進行了各種學習,在各種百度的情況下了解了java的各種基本功能的實現,從而完成程序的各種需用的運行。
7. PSP