首页 > 其他 > 详细

第二阶段的事后诸葛亮

时间:2015-12-05 00:31:47      阅读:533      评论:0      收藏:0      [点我收藏+]

组长:李咏江,组员:叶煜稳,谢洪跃,周伟雄

第二个阶段已经结束,我们团队基本完成了对四则运算的开发,但是对于我们四则运算还没有调查用户的情况,在第三阶段我们会对我们的产品进行调查问卷和改善,以确保更加的完美!

重要代码如下:

主要布局:

package com.example.dazuoye;

import android.app.ActionBar;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;


public class MainActivity extends Activity {
private Button btn1;
private Button btn2;
private Button btn3;
private Button btn4;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);    
btn1=(Button)findViewById(R.id.button1);
btn2=(Button)findViewById(R.id.button2);
btn3=(Button)findViewById(R.id.button3);
btn4=(Button)findViewById(R.id.button4);
ActionBar actionBar = getActionBar();//获取ActionBar对象
actionBar.setDisplayShowHomeEnabled(true);//显示应用程序图标
actionBar.setDisplayHomeAsUpEnabled(true);
btn1.setOnClickListener(new View.OnClickListener() {

public void onClick(View arg0) {
Intent intent=new Intent();
intent.setClass(MainActivity.this,Jiandan.class);
startActivity(intent);
MainActivity.this.finish();
}

}); 
btn2.setOnClickListener(new View.OnClickListener() {

public void onClick(View arg0) {

}

}); 
btn3.setOnClickListener(new View.OnClickListener() {

public void onClick(View arg0) {
Intent intent1=new Intent();
intent1.setClass(MainActivity.this,kunan.class);
startActivity(intent1);
MainActivity.this.finish();
}

}); 
btn4.setOnClickListener(new View.OnClickListener() {

public void onClick(View arg0) {
System.exit(0);
}

});
}
public boolean onOptionsItemSelected(MenuItem item) {
// TODO Auto-generated method stub
switch (item.getItemId()) {
case R.id.help:
/*    Intent intent1=new Intent(this,Help.class);
startActivity(intent1);*/
break;
case R.id.newgame:
//    Intent intent2=new Intent(this,New_Game.class);
//    startActivity(intent2);
break;
case R.id.about:
//    Intent intent3=new Intent(this,About.class);
//    startActivity(intent3);
break;
case android.R.id.home:
//创建启动MainActivity的Intent
Intent intent=new Intent(this,MainActivity.class);
//添加额外的Flag,将Activity栈中处于MainActivity之上的Activity弹出
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
break;
default:
break;
}
return super.onOptionsItemSelected(item);
}

public boolean onCreateOptionsMenu(Menu menu) {
// TODO Auto-generated method stub
MenuInflater inflater = new MenuInflater(this);
inflater.inflate(R.menu.main, menu);
return super.onCreateOptionsMenu(menu);
}

}

 

简单算法:

package Szys;

 

public class Szys {
public double e,d;
double b;
public double result;
public int a1; 
public char f; 
public Szys(double e,double d,int a1)
{
this.e=e;
this.d=d;
this.a1=a1;

}
public void setnumber(int e,int d,int a1)
{
this.e=e;
this.d=d;
this.a1=a1;    
}
public void seta1(int a1){this.a1=a1;}
public double gete(){return e;}
public double getd(){return d;}
public char getf(){    
switch(a1)
{
case 1: f=‘+‘;break;
case 2: f=‘-‘;break;
case 3: f=‘*‘;break;
case 4: f=‘/‘;break; 
default: 
break;
}
return f;
}    
public double b() {
switch(a1)
{
case 1: b=e+d;break;
case 2: b=e-d;break;
case 3: b=e*d;break;
case 4: b=e/d;break;
}
// TODO Auto-generated method stub
return b;
}
}

package com.example.dazuoye;

import Szys.Szys;
import android.annotation.SuppressLint;
import android.app.ActionBar;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;

public class Jiandan extends Activity {
private EditText tv1;
private TextView tv2;
private Button btn1,btn2;
int i=0,b=0;

protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.jiandan);
tv1=(EditText) findViewById(R.id.editText1);
tv2=(TextView) findViewById(R.id.textView2);
btn1=(Button) findViewById(R.id.button1);
btn2=(Button) findViewById(R.id.button2);
ActionBar actionBar = getActionBar();//获取ActionBar对象
actionBar.setDisplayShowHomeEnabled(true);//显示应用程序图标
actionBar.setDisplayHomeAsUpEnabled(true);

final Szys []binder=new Szys[10];
for(int a=0;a<10;a++)
binder[a]=new Szys((double)((int)(Math.random()*10000))/100,(double)((int)(Math.random()*10000))/100,(int)(Math.random()*3+1));
tv2.setText(String.valueOf(binder[b].gete())+binder[b].getf()+String.valueOf(binder[b].getd())+"=");
btn2.setOnClickListener(new View.OnClickListener() {    
@SuppressLint("ResourceAsColor")
public void onClick(View arg0) {
tv1.getText().toString();
if(String.valueOf(binder[b].b()).equals(tv1.getText().toString())==true)
{
i++;    
Toast.makeText(Jiandan.this, "恭喜你答对了", Toast.LENGTH_LONG).show();
}
else
{
tv2.setBackgroundColor(R.color.red); 
Toast.makeText(Jiandan.this, "很遗憾。你答错了", Toast.LENGTH_LONG).show();
}
}
});
btn1.setOnClickListener(new View.OnClickListener() {


public void onClick(View arg0) {
if(b<8)
{    
b++;
tv2.setBackgroundColor(getResources().getColor(android.R.color.white));
tv2.setText(String.valueOf(binder[b].gete())+binder[b].getf()+String.valueOf(binder[b].getd())+"="+String.valueOf(binder[i].b()));
tv1.setText(null);
}
else if(b==8)
{
b++;
tv2.setText(String.valueOf(binder[b].gete())+binder[b].getf()+String.valueOf(binder[b].getd())+"="+String.valueOf(binder[i].b()));
btn1.setText("关闭");
}    
}
});

}
public boolean onOptionsItemSelected(MenuItem item) {
// TODO Auto-generated method stub
switch (item.getItemId()) {
case R.id.help:
//    Intent intent1=new Intent(this,Help.class);
//    startActivity(intent1);
break;
case R.id.newgame:
//    Intent intent2=new Intent(this,New_Game.class);
//    startActivity(intent2);
break;
case R.id.about:
//    Intent intent3=new Intent(this,About.class);
//    startActivity(intent3);
break;
case android.R.id.home:
//创建启动MainActivity的Intent
Intent intent=new Intent(this,MainActivity.class);
//添加额外的Flag,将Activity栈中处于MainActivity之上的Activity弹出
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
break;


default:
break;
}
return super.onOptionsItemSelected(item);
}
}

 

中等算法

public class MainActivity extends Activity implements OnClickListener{

private int num1=0,num2=0,num3,result,resultTure;
int trueNum,falseNum;
private Button btn_star,btn_next,btn_QD,btn_end;
private EditText text; //输入答案
private TextView textView; //题目
private TextView textViewtip; //提示
Core core=new Core();
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btn_star=(Button) findViewById(R.id.button1);
btn_star.setOnClickListener(this);
btn_next=(Button) findViewById(R.id.button2);
btn_next.setOnClickListener(this);
btn_QD=(Button) findViewById(R.id.button3);
btn_QD.setOnClickListener(this);
btn_end=(Button) findViewById(R.id.button4);
btn_end.setOnClickListener(this);
text=(EditText) findViewById(R.id.editText1);
textView=(TextView) findViewById(R.id.textView5);
textViewtip=(TextView) findViewById(R.id.textView3);
}
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
switch (v.getId()) {
case R.id.button1:
btn_star.setText("重新开始"); 
text.setText(null);
trueNum=0;
falseNum=0;
Count();
break;
case R.id.button2:
text.setText(null);
textViewtip.setText(null);
Count();
break;
case R.id.button3:
checkout(resultTure);
break;
case R.id.button4:
ending( );
break;
}
}

public void Count()
{
num1=(int)(Math.random()*10);
num2=(int)(Math.random()*10+1);
num3=(int)(Math.random()*10+2);
int i=0;
char[]h={‘+‘,‘-‘,‘*‘,‘/‘};
i=(int)(Math.random()*4);
textView.setText(" "+num1+""+h[i]+""+num2+h[i]+""+num3+"=");
switch (i) {
case 0:
resultTure=core.Add(num1, num2,num3);

break;
case 1:
resultTure=core.Subtraction(num1, num2,num3);
break;
case 2:
resultTure=core.multiplication(num1, num2,num3);
break;
case 3:
resultTure=core.Division(num1, num2,num3);
break;
}
}
public void checkout(int resultTure)
{
String str=this.text.getText().toString();
boolean isAllDigit = true;//定义一个boolean值,用来表示是否包含其他字符
for(int i=0 ;i<str.length(); i++)//循环遍历字符串 
if(!Character.isDigit(str.charAt(i))){isAllDigit=false;}//用char包装类中的判断数字的方法判断每一个字符
if(isAllDigit)
{
result=Integer.parseInt(this.text.getText().toString());
if(result==resultTure)
{
this.textViewtip.setText("答案正确");trueNum++;
}
else
{
this.textViewtip.setText("错误,正确答案是:"+this.resultTure);falseNum++;
}
}
else
this.textViewtip.setText("输入有误!!");
}
public void ending()
{
if(trueNum==0&&falseNum==0)this.textViewtip.setText("你还没开始答题呢!"); 
else
{
double a,b;a=trueNum;b=falseNum;
this.textViewtip.setText("共答对"+trueNum+"题,答错"+falseNum+"题\n正确率为:"+a/(a+b)*100+"%"); 
}
}
}

package activity;

import java.math.*;
public class Core 
{
public int Add(int a,int b,int c)//加法
{

return a+b+c;
}
public int Subtraction(int a,int b,int c)//减法
{

return a-b-c;
}
public int multiplication(int a,int b,int c)//减法
{
return a*b*c;
}
public int Division(int a,int b,int c)//除法
{

return a/b/c;
}
}

 

 

困难算法 

package Szys;

 

public class Szys1 {
public double a,b,c,d,e;
double b2;
public double result;
public int a1,b1,c1,d1,b3; 
public char f,f1,f2;
public String str,fe1,fe2;
double fen1,fen2;
public Szys1(double a,double e,double g,double h,int a1,int b1,int c1,int d1)
{
this.c=g;
this.d=h;
this.a=a;
this.b=e;
this.a1=a1;
this.b1=b1;
this.c1=c1;
this.d1=d1;
}
public double geta(){return a;}
public double getb(){return b;}
public double getc(){return c;}
public double getd(){return d;}
public char getf(){    
switch(a1)
{
case 1: f=‘+‘;break;
case 2: f=‘-‘;break;
case 3: f=‘*‘;break;
case 4: f=‘/‘;break; 
default: 
break;
}
return f;
}    
public char getf1(){    
switch(b1)
{
case 1: f1=‘+‘;break;
case 2: f1=‘-‘;break;
case 3: f1=‘*‘;break;
case 4: f1=‘/‘;break; 
default: 
break;
}
return f1;
}
public char getf2(){    
switch(c1)
{
case 1: f2=‘+‘;break;
case 2: f2=‘-‘;break;
case 3: f2=‘*‘;break;
case 4: f2=‘/‘;break; 
default: 
break;
}
return f2;
}
public double d1(double h1,double h2,int h3) {
switch(h3)
{
case 1: e=h1+h2;break;
case 2: e=h1-h2;break;
case 3: e=h1*h2;break;
case 4: e=h1/h2;break;
}
// TODO Auto-generated method stub
return e;
}
public double b(){
switch(d1)
{
case 1: 
if(b1>2||c1<=2)
b2=d1(d1(d1(a,b,a1),c,b1),d,c1);    
else if(b1<=2&&c1>2)    
b2=d1(d1(a,b,a1),d1(c,d,c1),b1);
break;
case 2: 
if(a1>2||c1<=2)
b2=d1(d1(d1(a,b,a1),c,b1),d,c1);
else if(a1<=2&&c1>2)
b2=d1(d1(a,(d1(b,c,b1)),a1),d,c1);
break;
case 3: b2=d1(d1(a,b,a1),d1(c,d,c1),b1);break;
case 4: 
if(a1>2||c1<=2)
b2=d1(d1(a,d1(b,c,b1),a1),d,c1);
else if(a1<=2&&c1>2)
b2=d1(a,d1(d1(b,c,b1),d,c1),a1);
break;
case 5:    
if(b1>2||c1<=2)
b2=d1(a,d1(d1(b,c,b1),d,c1),a1);
else if(b1<=2&&c1>2)
b2=d1(a,d1(b,d1(c,d,c1),b1),a1);
break;
case 6:    
if(a1>2||b1<=2)
b2=d1(d1(a,b,a1),d1(c,d,c1),b1);
else if(a1<=2&&b1>2)
b2=d1(a,d1(b,d1(c,d,c1),b1),a1);
break;
}
// TODO Auto-generated method stub
b3=(int)(b2*100);
b2=((double)b3/100);
return b2;
}
public double fen1(){
switch(d1)
{
case 1: fen1=d1(a,b,a1);break; 
case 2: if(a1>2||c1<=2)
fen1=d1(a,b,a1);
else if(a1<=2&&c1>2)
fen1=d1(b,c,b1);
break;
case 3: fen1=d1(a,b,a1);break;
case 4: fen1=d1(b,c,b1);break;
case 5:    
if(b1>2||c1<=2)
fen1=d1(b,c,b1);
else if(b1<=2&&c1>2)
fen1=d1(c,d,c1);
break;
case 6:    fen1=d1(c,d,c1);break;
}
return fen1;
}
public double fen2(){
switch(d1)
{
case 1: if(b1>2||c1<=2)
fen2=d1(d1(a,b,a1),c,b1);    
else if(b1<=2&&c1>2)    
fen2=d1(c,d,c1);
break;
case 2: if(a1>2||c1<=2)
fen2=d1(d1(a,b,a1),c,b1); 
else if(a1<=2&&c1>2) 
fen2=d1(a,(d1(b,c,b1)),a1); 
break;
case 3: fen2=d1(c,d,c1);break;
case 4: if(a1>2||c1<=2)
fen2=d1(a,d1(b,c,b1),a1);
else if(a1<=2&&c1>2)
fen2=d1(d1(b,c,b1),d,c1);
break;
case 5:    
if(b1>2||c1<=2)
fen2=d1(d1(b,c,b1),d,c1);
else if(b1<=2&&c1>2)
fen2=d1(b,d1(c,d,c1),b1);
break;
case 6:    fen2=d1(c,d,c1);if(a1>2||b1<=2)
fen2=d1(a,b,a1);
else if(a1<=2&&b1>2)
fen2=d1(b,d1(c,d,c1),b1);
break;
}
return fen2;
}
public String str(){
switch(d1)
{
case 1:str="("+String.valueOf(a)+getf()+String.valueOf(b)+")"+getf1()+String.valueOf(c)+getf2()+String.valueOf(d)+‘=‘;break;
case 2:str="("+String.valueOf(a)+getf()+String.valueOf(b)+getf1()+String.valueOf(c)+")"+getf2()+String.valueOf(d)+‘=‘;break;
case 3:str="("+String.valueOf(a)+getf()+String.valueOf(b)+")"+getf1()+"("+String.valueOf(c)+getf2()+String.valueOf(d)+")"+‘=‘;break;
case 4:str=String.valueOf(a)+getf()+"("+String.valueOf(b)+getf1()+String.valueOf(c)+")"+getf2()+String.valueOf(d)+‘=‘;break;
case 5:str=String.valueOf(a)+getf()+"("+String.valueOf(b)+getf1()+String.valueOf(c)+getf2()+String.valueOf(d)+")"+‘=‘;break;
case 6:str=String.valueOf(a)+getf()+String.valueOf(b)+getf1()+"("+String.valueOf(c)+getf2()+String.valueOf(d)+")"+‘=‘; break;
}
return str;
}
public String fe1(){
switch(d1)
{
case 1:fe1=String.valueOf(a)+getf()+String.valueOf(b)+‘=‘+String.valueOf(fen1());break;
case 2:if(a1>2||c1<=2) 
fe1=String.valueOf(a)+getf()+String.valueOf(b)+‘=‘+String.valueOf(fen1());
else if(a1<=2&&c1>2)
fe1=String.valueOf(b)+getf1()+String.valueOf(c)+‘=‘+String.valueOf(fen1());
break;
case 3:fe1=String.valueOf(a)+getf()+String.valueOf(b)+‘=‘+String.valueOf(fen1());break;
case 4:fe1=String.valueOf(b)+getf1()+String.valueOf(c)+‘=‘+String.valueOf(fen1());break;
case 5:if(b1>2||c1<=2)
fe1=String.valueOf(b)+getf1()+String.valueOf(c)+‘=‘+String.valueOf(fen1());
else if(b1<=2&&c1>2)
fe1=String.valueOf(c)+getf2()+String.valueOf(d)+‘=‘+String.valueOf(fen1());
break;
case 6:fe1=String.valueOf(c)+getf2()+String.valueOf(d)+‘=‘+String.valueOf(fen1()); break;
}
return fe1;
}
public String fe2(){
switch(d1)
{
case 1:fe2="("+String.valueOf(a)+getf()+String.valueOf(b)+")"+getf1()+String.valueOf(c)+getf2()+String.valueOf(d)+‘=‘;break;
case 2:fe2="("+String.valueOf(a)+getf()+String.valueOf(b)+getf1()+String.valueOf(c)+")"+getf2()+String.valueOf(d)+‘=‘;break;
case 3:fe2="("+String.valueOf(a)+getf()+String.valueOf(b)+")"+getf1()+"("+String.valueOf(c)+getf2()+String.valueOf(d)+")"+‘=‘;break;
case 4:fe2=String.valueOf(a)+getf()+"("+String.valueOf(b)+getf1()+String.valueOf(c)+")"+getf2()+String.valueOf(d)+‘=‘;break;
case 5:fe2=String.valueOf(a)+getf()+"("+String.valueOf(b)+getf1()+String.valueOf(c)+getf2()+String.valueOf(d)+")"+‘=‘;break;
case 6:fe2=String.valueOf(a)+getf()+String.valueOf(b)+getf1()+"("+String.valueOf(c)+getf2()+String.valueOf(d)+")"+‘=‘; break;
}
return fe2;
}
}

package com.example.dazuoye;
import Szys.Szys1;
import android.app.ActionBar;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;

public class kunan extends Activity {
private EditText tv1;
private TextView tv2,tv3;
private Button btn1,btn2;
int i=0,b=0;
boolean sh=true;

protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.kunan);
tv1=(EditText) findViewById(R.id.editText1);
tv2=(TextView) findViewById(R.id.textView2);
tv3=(TextView) findViewById(R.id.textView1);
btn1=(Button) findViewById(R.id.button1);
btn2=(Button) findViewById(R.id.button2);
ActionBar actionBar = getActionBar();//获取ActionBar对象
actionBar.setDisplayShowHomeEnabled(true);//显示应用程序图标
actionBar.setDisplayHomeAsUpEnabled(true);
final Szys1 []binder=new Szys1[10];
for(int a=0;a<10;a++)
binder[a]=new Szys1((double)((int)(Math.random()*10000))/100,(double)((int)(Math.random()*10000))/100,(double)((int)(Math.random()*10000))/100,(double)((int)(Math.random()*10000))/100,(int)(Math.random()*3+1),(int)(Math.random()*3+1),(int)(Math.random()*3+1),(int)(Math.random()*5+1));
//binder[a]=new Szys1((double)((int)(Math.random()*100)),(double)((int)(Math.random()*100)),(double)((int)(Math.random()*100)),(double)((int)(Math.random()*100)),1,1,1,1);
tv2.setText(binder[b].str());    
btn1.setOnClickListener(new View.OnClickListener() {


public void onClick(View arg0) {
if(sh==true)
{

tv1.getText().toString();
if(String.valueOf(binder[b].b()).equals(tv1.getText().toString())==true)
{
i++;    
Toast.makeText(kunan.this, "恭喜你答对了", Toast.LENGTH_LONG).show();
}
else
{
//tv2.setBackgroundColor(R.color.red); 
Toast.makeText(kunan.this, "很遗憾。你答错了", Toast.LENGTH_LONG).show();
}
sh=false;
btn1.setText("下一题");

}
else if(sh==false)
{    
if(b==9)
{
Intent intent=new Intent();
intent.setClass(kunan.this,kunan.class);
startActivity(intent);
kunan.this.finish();
}
else if(b<8)
{    
b++;
tv2.setBackgroundColor(getResources().getColor(android.R.color.white));
tv2.setText(binder[b].str());
tv1.setText(null);
btn1.setText("提交");
}
else if(b==8)
{
b++;
tv2.setText(binder[b].str());
}    
sh=true;
}
}
});
btn2.setOnClickListener(new View.OnClickListener() {    
public void onClick(View arg0) {
tv3.setText("");    
}
});
}
public boolean onOptionsItemSelected(MenuItem item) {
// TODO Auto-generated method stub
switch (item.getItemId()) {
case R.id.help:
//    Intent intent1=new Intent(this,Help.class);
//    startActivity(intent1);
break;
case R.id.newgame:
//    Intent intent2=new Intent(this,New_Game.class);
//    startActivity(intent2);
break;
case R.id.about:
//    Intent intent3=new Intent(this,About.class);
//    startActivity(intent3);
break;
case android.R.id.home:
//创建启动MainActivity的Intent
Intent intent=new Intent(this,MainActivity.class);
//添加额外的Flag,将Activity栈中处于MainActivity之上的Activity弹出
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
break;
default:
break;
}
return super.onOptionsItemSelected(item);
}
}

截图:

技术分享技术分享技术分享技术分享

第二阶段的事后诸葛亮

原文:http://www.cnblogs.com/xhy1210/p/5020834.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!