lu

卢燃 2020/6/30 11:15:19
 4.1运行界面实现算数测试:

 图4-1算数测试图猜数测试: 

 图4-2猜数测试

卢燃 2020/6/30 11:15:51
4.2代码实现
猜数代码:
package com.ts.exam3;


//个人项目第二题主函数

import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Random;
import java.util.Scanner;
public class CaiShu {

public static void main(String[] args) {
// TODO Auto-generated method stub
//计算机产生随机数,猜中即胜,猜不中,提示是大了还是小了,继续猜,直至猜到,给出所用时间和评语。
//保留用户测试成绩,做出成绩排行榜。排行榜存放到文件或数据库中。
Random random=new Random();
CaiShu1 s1=new CaiShu1();
int guess;//用户猜测的数字
int  i=1;//计算游戏次数
int shuzi;//系统给出的数字
int jishu=0;//计算游戏开始次数
int temp=0;//一共猜对的数字个数
Scanner input=new Scanner(System.in);
System.out.println("\t欢迎体验猜数字游戏:");
while(i!=0) {
jishu++;
System.out.println("请写出你猜测的数字【0-100)的数字):");
shuzi=(int)(random.nextDouble()*100);
temp++;
guess=input.nextInt();
//System.out.println(shuzi);
s1.cai(guess, shuzi);
System.out.println("这一次你一共猜测了"+(s1.i+1)+"次,猜对了数字");
System.out.println("是否继续游戏,按0退出游戏:");
i=input.nextInt();
}
System.out.println("游戏结束!");


FileOutputStream fos=null;
try {
fos=new FileOutputStream("d:\\aaa\\geren\\second\\result.txt");
String str="一共开始了"+jishu+"次游戏\n一共猜了"+(s1.i+1)+"次,猜出了"+temp+"个数字";
byte[] words=str.getBytes();
try {
fos.write(words,0,words.length);
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
System.out.println("reslut文件已被更新!");
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
fos.close();
} catch (IOException e) { 
// TODO Auto-generated catch block
e.printStackTrace();
}
}

}

package com.ts.exam3;


import java.util.Scanner;

//个人项目第二题猜数字类
public class CaiShu1 { 

int guess;//用户猜测的数字 
int shuzi;//系统给出的数字
int j=1;//
int i=0;//计算猜第几次猜对
public void cai(int guess,int shuzi) {
Scanner input=new Scanner(System.in);
this.guess=guess;
this.shuzi=shuzi;
while(j!=0) {
if(this.guess>this.shuzi) {
System.out.println("你猜大了,请继续猜测数字:");
this.guess=input.nextInt();
i++;
continue;
}
if(this.guess<this.shuzi) {
System.out.println("你猜小了,请继续猜测数字:");
this.guess=input.nextInt();
i++;
continue;
}
if(this.guess==this.shuzi) {
System.out.println("你猜对了!");
i++;
break;
}
//System.out.println(shuzi);

}

}

}

卢燃  11:16:07
算数运算代码:
package com.ts.exam3;


import java.io.BufferedWriter;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.FileWriter;
import java.io.IOException;
import java.util.Scanner;
//个人项目第一题主函数
public class ShuXue {

public static void main(String[] args) {
// TODO Auto-generated method stub
//实现十道100以内加减法数学题,能根据题目计算出答案,与输入答案对比,判断做题是否正确,最后计算分数。
int c;//结果
int a,b,result;//ab为加数  result为答案
String fa;
Scanner input=new Scanner(System.in);
ShuXue1 s1=new ShuXue1();
for(int i=0;i<10;i++) {
System.out.println("第"+(i+1)+"道计算题");
System.out.print("请输入被减数/被加数:");
a=input.nextInt();
System.out.print("请输入+/-:");
fa=input.next();
System.out.print("请输入减数/加数:");
b=input.nextInt();
System.out.println("请给出"+a+fa+b+"的答案:");
result=input.nextInt();
s1.jiafa(a, fa, b,result);
System.out.println("是否继续,按0退出");
c=input.nextInt();
if(c==0) {
System.out.println("游戏结束!");
break;
}

}
System.out.println("本次答对:"+s1.jishu+"个题");

     

FileOutputStream fos=null;

try {
fos=new FileOutputStream("d:\\aaa\\geren\\first\\result.txt",true);
String str="第"+s1.j+"次游戏答对:"+s1.jishu+"个题\n";
byte[] words=str.getBytes();//将字符串打散为字节数组
try {
fos.write(words,0,words.length);
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
System.out.println("reslut文件已被更新!");
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
fos.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
  

}

}


package com.ts.exam3;

//实现数学计算的类

public class ShuXue1 {
int a,b;//两个加数
String fa;//运算法则
int sum;//结果
int jishu;//计算答对的数目
int j;//计算游戏次数

public void jiafa(int num1,String fa,int num2,int result) {
j++;

this.a=num1;
this.b=num2;
switch(fa) {
case "+":sum=num1+num2;break;
case "-":sum=num1-num2;break;
}
if(sum==result) {
System.out.println("答对了!");
jishu++;
}
else {
System.out.println("答错了!");
}



}
}

卢燃  11:16:18
5 结论和心得
结论:实验都好难搞的,还是要继续增加自己的知识量,避免日后遇到更难得。 
心得:团队的合作,自己的努力,以及死皮赖脸的去问那些会的同学,然后及时发现,并解决自己不足的地方,在这次的设计实验暴露出来,将自己的不足来弥补上,在每次测验中,增加自己的知识面,让自己运用工具的更加灵活。

posted @ 2020-06-30 11:17  yyyyyccccc  阅读(230)  评论(0)    收藏  举报