zoukankan      html  css  js  c++  java
  • 作业6--超级无敌终结

    之前的项目需求弄错了,忘记是在APP上重新弄的软件功能,所以在这再发一下。

    准备实现的功能

    1. 可以出表达式里含有负整数(负整数最小不小于-100)的题目,且负数需要带括号,用户输入的结果不用带括号。如: 2*(-4) = -8
    2. 用户答题结束以后,程序可以显示用户答题所用的时间
    3. 用户可以选择出题的个数(最多不能超过5个题目),答题结束可以显示用户答错的题目个数和答对的题目个数 
    4. 程序可以出单个整数阶乘的题目:如:4!=24
    5. 程序可以设置背景功能,可以改变界面的背景即可。
    6. 用户可以选择在限定时间答题,答题结束可以显示用户答错的题目个数和答对的题目个数
    7. 用户选择随机产生题目进行答题
    8. 报错功能    

    ------------------------------------------------------------我是分割线------------------------------------------------------------

      经过几天的努力,在许小学生的带领下,在磕磕绊绊的摸索中,终于掏出了产品,也许还有许多功能没有完善,也许还有许多不足的地方,也许还没法

    为社会带来福利,也许还没法赚钱是吧。。。这期间经历了许组长的练车不打码,玩游戏不打码,看电视剧不打码,心情不好不打码,反正最后打了码让

    我们其他组员非常欣慰,此处应该有掌声!谢谢,谢谢大家的厚爱!

      废话不多,送上许小学生的代码及截图:

      1 package com.example.ddd;
      2 
      3 import android.support.v7.app.ActionBarActivity;
      4 import android.support.v7.app.ActionBar;
      5 import android.support.v4.app.Fragment;
      6 import android.os.Bundle;
      7 import android.view.LayoutInflater;
      8 import android.view.Menu;
      9 import android.view.MenuItem;
     10 import android.view.View;
     11 import android.view.View.OnClickListener;
     12 import android.view.ViewGroup;
     13 import android.widget.*;
     14 import android.os.Build;
     15 
     16 public class MainActivity extends ActionBarActivity {
     17     
     18     private Button b1,b2,b3;
     19     private TextView[]T=new TextView[9];
     20     private EditText[]E=new EditText[6];
     21     int i,k,n;
     22     long begintime,endtime,time;
     23     int[]a=new int[5];
     24     int[]b=new int[5];
     25     int[]c=new int[5];
     26     int[]d=new int[5];
     27     int[]answer=new int[5];
     28 
     29     @Override
     30     protected void onCreate(Bundle savedInstanceState)
     31   {
     32         super.onCreate(savedInstanceState);
     33         setContentView(R.layout.activity_main);
     34         
     35         b1=(Button)findViewById(R.id.button1);
     36         b2=(Button)findViewById(R.id.button2);
     37         b3=(Button)findViewById(R.id.button3);
     38         T[0]=(TextView)findViewById(R.id.textView4);
     39         T[1]=(TextView)findViewById(R.id.textView6);
     40         T[2]=(TextView)findViewById(R.id.textView9);
     41         T[3]=(TextView)findViewById(R.id.textView12);
     42         T[4]=(TextView)findViewById(R.id.textView15);
     43         T[5]=(TextView)findViewById(R.id.textView18);
     44         T[6]=(TextView)findViewById(R.id.textView20);
     45         T[7]=(TextView)findViewById(R.id.textView22);
     46         T[8]=(TextView)findViewById(R.id.textView24);
     47         E[0]=(EditText)findViewById(R.id.editText2);
     48         E[1]=(EditText)findViewById(R.id.editText3);
     49         E[2]=(EditText)findViewById(R.id.editText4);
     50         E[3]=(EditText)findViewById(R.id.editText5);
     51         E[4]=(EditText)findViewById(R.id.editText6);
     52         E[5]=(EditText)findViewById(R.id.editText1);
     53         b1.setOnClickListener(new OnClickListener()
     54     {
     55             
     56             @Override
     57         public void onClick(View v)
     58         {
     59                 // TODO Auto-generated method stub
     60             try
     61             {
     62                 for(k=0;k<5;k++)
     63                 {
     64                     T[k].setText(null);
     65                 }
     66                 for(k=0;k<5;k++)
     67                 {
     68                     E[k].setText(null);
     69                 }
     70                 T[5].setText(null);
     71                 T[6].setText(null);
     72                 T[7].setText(null);
     73                 T[8].setText(null);
     74                 i=0;
     75                 if(E[5].getText().length()==0)
     76                 {
     77                     Toast.makeText(MainActivity.this, "请输入题数", 1).show();
     78                 }
     79                 else if(Integer.parseInt(E[5].getText()+"")>5 || Integer.parseInt(E[5].getText()+"")<1)
     80                 {
     81                     Toast.makeText(MainActivity.this, "题数最多不超过5题,不少于1题", 1).show();
     82                 }
     83                 else
     84                 {
     85                     i=Integer.parseInt(E[5].getText()+"");
     86                     
     87                     for(k=0;k<i;k++)
     88                     {
     89                         a[k]=(int)(Math.random()*201-100);
     90                         b[k]=(int)(Math.random()*201-100);
     91                         c[k]=(int)(Math.random()*5);
     92                         d[k]=(int)(Math.random()*12+1);
     93                         Core core=new Core(a[k],b[k],c[k],d[k]);
     94                         answer[k]=core.calc();
     95                         T[k].setText(core.toString());
     96                         
     97                     }
     98                     begintime = System.currentTimeMillis();
     99                 }
    100             }catch(NumberFormatException u)
    101             {
    102                 Toast.makeText(MainActivity.this, "请输入正确的数字", 1).show();
    103             }
    104         }
    105     });
    106         
    107         b2.setOnClickListener(new OnClickListener() {
    108             
    109             @Override
    110             public void onClick(View v) {
    111                 // TODO Auto-generated method stub
    112                 if(i==0)
    113                 {
    114                     Toast.makeText(MainActivity.this, "请先开始答题", 1).show();
    115                 }
    116                 else
    117                 {
    118                     endtime = System.currentTimeMillis();
    119                     time=(endtime-begintime)/1000;
    120                     n=0;
    121                     for(k=0;k<i;k++)
    122                     {
    123                         if(E[k].getText().length()==0)
    124                         {
    125                             continue;
    126                         }
    127                         try
    128                         {
    129                             if(answer[k]==Integer.parseInt(E[k].getText()+""))
    130                             {
    131                                 n++;
    132                             }
    133                         }catch(NumberFormatException u)
    134                         {
    135                             Toast.makeText(MainActivity.this, "请输入正确的数字", 1).show();
    136                         }
    137                         
    138                     }
    139                     T[5].setText(n+"道题");
    140                     T[6].setText((i-n)+"道题");
    141                     T[7].setText(time+"秒");
    142                     T[8].setText("");
    143                     for(k=0;k<i;k++)
    144                     {
    145                         T[8].setText(T[8].getText()+""+answer[k]+";");
    146                     }
    147                     i=0;
    148                 }
    149             }
    150         });
    151         
    152         b3.setOnClickListener(new OnClickListener() {
    153             
    154             @Override
    155             public void onClick(View v) {
    156                 // TODO Auto-generated method stub
    157                 for(k=0;k<5;k++)
    158                 {
    159                     T[k].setText(null);
    160                 }
    161                 for(k=0;k<5;k++)
    162                 {
    163                     E[k].setText(null);
    164                 }
    165                 T[5].setText(null);
    166                 T[6].setText(null);
    167                 T[7].setText(null);
    168                 T[8].setText(null);
    169                 i=0;
    170             }
    171         });
    172   }
    173 
    174 
    175     @Override
    176     public boolean onCreateOptionsMenu(Menu menu) {
    177         
    178         // Inflate the menu; this adds items to the action bar if it is present.
    179         getMenuInflater().inflate(R.menu.main, menu);
    180         return true;
    181     }
    182 
    183     @Override
    184     public boolean onOptionsItemSelected(MenuItem item) {
    185         // Handle action bar item clicks here. The action bar will
    186         // automatically handle clicks on the Home/Up button, so long
    187         // as you specify a parent activity in AndroidManifest.xml.
    188         int id = item.getItemId();
    189         if (id == R.id.action_settings) {
    190             return true;
    191         }
    192         return super.onOptionsItemSelected(item);
    193     }
    194 
    195     /**
    196      * A placeholder fragment containing a simple view.
    197      */
    198     public static class PlaceholderFragment extends Fragment {
    199 
    200         public PlaceholderFragment() {
    201         }
    202 
    203         @Override
    204         public View onCreateView(LayoutInflater inflater, ViewGroup container,
    205                 Bundle savedInstanceState) {
    206             View rootView = inflater.inflate(R.layout.fragment_main, container, false);
    207             return rootView;
    208         }
    209     }
    210 
    211 }
    核心类
    package com.example.ccc;
    
    public class Core {
        int a;
        int b;
        int c;
        int d;
        public Core(int a,int b,int c,int d)
        {
            this.a=a;
            this.b=b;
            this.c=c;
            this.d=d;
        }
        public int calc()
        {
            if(c==0)
            {
                return a+b;
            }
            else if(c==1)
            {
                return a-b;
            }
            else if(c==2)
            {
                return a*b;
            }
            else if(c==3)
            {
                if(b==0)
                {
                    b++;
                }
                return a/b;
            }
            else
            {
                return jiecheng(d);
            }
        }
        public String toString()
        {
            String A=new String();
            String B=new String();
            if(a<0)
            {
                A="("+a+")";
            }
            else
            {
                A=a+"";
            }
            if(b<0)
            {
                B="("+b+")";
            }
            else
            {
                B=b+"";
            }
            if(c==0)
            {
                return A+"+"+B;
            }
            else if(c==1)
            {
                return A+"-"+B;
            }
            else if(c==2)
            {
                return A+"*"+B;
            }
            else if(c==3)
            {
                return A+"/"+B;
            }
            else
            {
                return d+"!";
            }
        }
    
        public int jiecheng(int x)
        {
            if(x==0 || x==1)
            {
                return 1;
            }
            else
            {
                return x*jiecheng(x-1);
            }
        }
    }
    计算类
      1 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
      2     xmlns:tools="http://schemas.android.com/tools"
      3     android:id="@+id/container"
      4     android:layout_width="match_parent"
      5     android:layout_height="match_parent"
      6     android:orientation="vertical"
      7     android:background="@drawable/ss2" >
      8 
      9     <LinearLayout
     10         android:layout_width="match_parent"
     11         android:layout_height="wrap_content"
     12         android:gravity="center" >
     13 
     14         <TextView
     15             android:id="@+id/textView1"
     16             android:layout_width="wrap_content"
     17             android:layout_height="wrap_content"
     18             android:text="欢迎您,尊敬的用户"
     19             android:textSize="20sp" />
     20 
     21     </LinearLayout>
     22 
     23     <LinearLayout
     24         android:layout_width="match_parent"
     25         android:layout_height="wrap_content"
     26         android:gravity="center" >
     27 
     28         <TextView
     29             android:id="@+id/textView2"
     30             android:layout_width="wrap_content"
     31             android:layout_height="wrap_content"
     32             android:text="请输入题数:"
     33             android:textSize="20sp" />
     34 
     35         <EditText
     36             android:id="@+id/editText1"
     37             android:hint="不超过5题"
     38             android:layout_width="100dp"
     39             android:layout_height="wrap_content"
     40             android:textSize="15sp"
     41              >
     42 
     43             <requestFocus />
     44         </EditText>
     45 
     46         <Button
     47             android:id="@+id/button1"
     48             android:layout_width="wrap_content"
     49             android:layout_height="34dp"
     50             android:text="开始答题"
     51             android:textSize="15sp"
     52             android:textColor="#ee7755" />
     53 
     54     </LinearLayout>
     55 
     56     <LinearLayout
     57         android:layout_width="match_parent"
     58         android:layout_height="wrap_content" >
     59 
     60         <TextView
     61             android:id="@+id/textView3"
     62             android:layout_width="wrap_content"
     63             android:layout_height="wrap_content"
     64             android:text="第一题:"
     65             android:textSize="20sp" />
     66 
     67         <TextView
     68             android:id="@+id/textView4"
     69             android:layout_width="110dp"
     70             android:layout_height="wrap_content"
     71             android:textSize="20sp" />
     72 
     73         <TextView
     74             android:id="@+id/textView5"
     75             android:layout_width="wrap_content"
     76             android:layout_height="wrap_content"
     77             android:text=" = "
     78             android:textSize="25sp" />
     79 
     80         <EditText
     81             android:id="@+id/editText2"
     82             android:layout_width="70dp"
     83             android:layout_height="wrap_content"
     84             android:textSize="15sp" />
     85 
     86     </LinearLayout>
     87     
     88     <LinearLayout
     89         android:layout_width="match_parent"
     90         android:layout_height="wrap_content" >
     91 
     92         <TextView
     93             android:id="@+id/textView25"
     94             android:layout_width="wrap_content"
     95             android:layout_height="wrap_content"
     96             android:text="第二题:"
     97             android:textSize="20sp" />
     98 
     99         <TextView
    100             android:id="@+id/textView6"
    101             android:layout_width="110dp"
    102             android:layout_height="wrap_content"
    103             android:textSize="20sp" />
    104 
    105         <TextView
    106             android:id="@+id/textView7"
    107             android:layout_width="wrap_content"
    108             android:layout_height="wrap_content"
    109             android:text=" = "
    110             android:textSize="25sp" />
    111 
    112         <EditText
    113             android:id="@+id/editText3"
    114             android:layout_width="70dp"
    115             android:layout_height="wrap_content"
    116             android:textSize="15sp" />
    117 
    118     </LinearLayout>
    119     
    120     <LinearLayout
    121         android:layout_width="match_parent"
    122         android:layout_height="wrap_content" >
    123 
    124         <TextView
    125             android:id="@+id/textView8"
    126             android:layout_width="wrap_content"
    127             android:layout_height="wrap_content"
    128             android:text="第三题:"
    129             android:textSize="20sp" />
    130 
    131         <TextView
    132             android:id="@+id/textView9"
    133             android:layout_width="110dp"
    134             android:layout_height="wrap_content"
    135             android:textSize="20sp" />
    136 
    137         <TextView
    138             android:id="@+id/textView10"
    139             android:layout_width="wrap_content"
    140             android:layout_height="wrap_content"
    141             android:text=" = "
    142             android:textSize="25sp" />
    143 
    144         <EditText
    145             android:id="@+id/editText4"
    146             android:layout_width="70dp"
    147             android:layout_height="wrap_content"
    148             android:textSize="15sp" />
    149 
    150     </LinearLayout>
    151     
    152     <LinearLayout
    153         android:layout_width="match_parent"
    154         android:layout_height="wrap_content" >
    155 
    156         <TextView
    157             android:id="@+id/textView11"
    158             android:layout_width="wrap_content"
    159             android:layout_height="wrap_content"
    160             android:text="第四题:"
    161             android:textSize="20sp" />
    162 
    163         <TextView
    164             android:id="@+id/textView12"
    165             android:layout_width="110dp"
    166             android:layout_height="wrap_content"
    167             android:textSize="20sp" />
    168 
    169         <TextView
    170             android:id="@+id/textView13"
    171             android:layout_width="wrap_content"
    172             android:layout_height="wrap_content"
    173             android:text=" = "
    174             android:textSize="25sp" />
    175 
    176         <EditText
    177             android:id="@+id/editText5"
    178             android:layout_width="70dp"
    179             android:layout_height="wrap_content"
    180             android:textSize="15sp" />
    181 
    182     </LinearLayout>
    183     
    184     <LinearLayout
    185         android:layout_width="match_parent"
    186         android:layout_height="wrap_content" >
    187 
    188         <TextView
    189             android:id="@+id/textView14"
    190             android:layout_width="wrap_content"
    191             android:layout_height="wrap_content"
    192             android:text="第五题:"
    193             android:textSize="20sp" />
    194 
    195         <TextView
    196             android:id="@+id/textView15"
    197             android:layout_width="110dp"
    198             android:layout_height="wrap_content"
    199             android:textSize="20sp" />
    200 
    201         <TextView
    202             android:id="@+id/textView16"
    203             android:layout_width="wrap_content"
    204             android:layout_height="wrap_content"
    205             android:text=" = "
    206             android:textSize="25sp" />
    207 
    208         <EditText
    209             android:id="@+id/editText6"
    210             android:layout_width="70dp"
    211             android:layout_height="wrap_content"
    212             android:textSize="15sp" />
    213 
    214     </LinearLayout>
    215 
    216     <LinearLayout
    217         android:layout_width="match_parent"
    218         android:layout_height="wrap_content"
    219         android:gravity="right" >
    220 
    221         <Button
    222             android:id="@+id/button2"
    223             android:layout_width="wrap_content"
    224             android:layout_height="34dp"
    225             android:text="提交"
    226             android:textSize="15sp" />
    227 
    228     </LinearLayout>
    229 
    230     <LinearLayout
    231         android:layout_width="match_parent"
    232         android:layout_height="wrap_content" >
    233 
    234         <TextView
    235             android:id="@+id/textView17"
    236             android:layout_width="wrap_content"
    237             android:layout_height="wrap_content"
    238             android:text="你答对了:"
    239             android:textSize="20sp" />
    240 
    241         <TextView
    242             android:id="@+id/textView18"
    243             android:layout_width="100dp"
    244             android:layout_height="wrap_content"
    245             android:textSize="20sp" />
    246 
    247     </LinearLayout>
    248     
    249      <LinearLayout
    250         android:layout_width="match_parent"
    251         android:layout_height="wrap_content" >
    252 
    253         <TextView
    254             android:id="@+id/textView19"
    255             android:layout_width="wrap_content"
    256             android:layout_height="wrap_content"
    257             android:text="你答错了:"
    258             android:textSize="20sp" />
    259 
    260         <TextView
    261             android:id="@+id/textView20"
    262             android:layout_width="100dp"
    263             android:layout_height="wrap_content"
    264             android:textSize="20sp" />
    265 
    266     </LinearLayout>
    267     
    268      <LinearLayout
    269         android:layout_width="match_parent"
    270         android:layout_height="wrap_content" >
    271 
    272         <TextView
    273             android:id="@+id/textView21"
    274             android:layout_width="wrap_content"
    275             android:layout_height="wrap_content"
    276             android:text="用时:"
    277             android:textSize="20sp" />
    278 
    279         <TextView
    280             android:id="@+id/textView22"
    281             android:layout_width="100dp"
    282             android:layout_height="wrap_content"
    283             android:textSize="20sp" />
    284 
    285     </LinearLayout>
    286     
    287      <LinearLayout
    288         android:layout_width="match_parent"
    289         android:layout_height="wrap_content" >
    290 
    291         <TextView
    292             android:id="@+id/textView23"
    293             android:layout_width="wrap_content"
    294             android:layout_height="wrap_content"
    295             android:text="参考答案:"
    296             android:textSize="20sp" />
    297 
    298         <TextView
    299             android:id="@+id/textView24"
    300             android:layout_width="wrap_content"
    301             android:layout_height="wrap_content"
    302             android:textSize="20sp" />
    303 
    304     </LinearLayout>
    305 
    306      <LinearLayout
    307          android:layout_width="match_parent"
    308          android:layout_height="wrap_content"
    309          android:gravity="right" >
    310 
    311          <Button
    312              android:id="@+id/button3"
    313              android:layout_width="wrap_content"
    314              android:layout_height="34dp"
    315              android:text="重置"
    316              android:textSize="15sp" />
    317 
    318      </LinearLayout>
    319 
    320 </LinearLayout>
    界面

    **最后上传图片时18:59分!!老师手下留情啊!手机卡了一点点!所以最后提交慢了几分钟!!一定要见谅啊!!

  • 相关阅读:
    内置函数,闭包。装饰器初识
    生成器
    百度ai 接口调用
    迭代器
    HashMap与ConcurrentHashMap的测试报告
    ConcurrentHashMap原理分析
    centos 5.3 安装(samba 3.4.4)
    什么是shell? bash和shell有什么关系?
    Linux中使用export命令设置环境变量
    profile bashrc bash_profile之间的区别和联系
  • 原文地址:https://www.cnblogs.com/zhanshenlianmeng/p/4536722.html
Copyright © 2011-2022 走看看