猜猜看

原创 2015年07月07日 18:04:31

package com.example.caicaikan;
/**
 * 12345对应着abcde
 * 
 * 
 * */
public class Test {
	String[] message=new String[]{"a","b","c","d","e"};
	int[] number=new int[]{1,2,3,4,5};
	public void reset(){
		for(int i=0;i<3;i++){
			int temp = number[i];				//将数组元素i保存到临时变量中
			int index = (int) (Math.random()*5);		//生成一个随机数
			number[i] = number[index];			//将随机数指定的数组元素的内容赋值给数组元素i
			number[index] = temp;
		
		}
		System.out.print("   ssssssssssss   ");
		//int[] xx={1,2,3};
		int[] xx=new int[3];
		for(int i=0;i<3;i++){
			System.out.print(number[i]);
			System.out.print(message[number[i]-1]);
			 xx[i]=number[i];
			 
		}
		System.out.print("    ooooooooooooooooooo  ");
		int index = (int) (Math.random()*3);
		System.out.print("结果为:"+xx[index]);
		System.out.print("结果为:"+message[xx[index]-1]);
		}
	
	
	
	public static void main(String[] args) {
//		Test test=new Test();
//		test.reset();
//		
		
	        System.out.println("循环没有开始");

	        System.out.println("现在开始测试continue");
	        for (int i = 0; i < 3; i++) {
	            System.out.println("开始第" + i + "次for循环");
	            if (i == 1) {
	                continue;
	            }
	            System.out.println("看看continue后这里执行了吗?");
	        }
	        System.out.println("continue测试完毕\n***********************");

	        System.out.println("现在开始测试break");
	        for (int i = 0; i < 3; i++) {
	            System.out.println("开始第" + i + "次for循环");
	            if (i == 1){
	                break;
	            }

	            System.out.println("看看break后这里执行了吗?");
	        }
	        System.out.println("break测试完毕\n***********************");
	    }
		
	}


在这个程序,最难的应该是那个随机抽取一个数字,然后对于不同的图片进行点击,如果对的话,则显示正确的结果,否则则是错。上面那些代码是用来测试的,java语言。因为android测试的话,要不断地装程序进手机里面,所以比较麻烦,所以我就用了上面的代码进行测试。也就是核心代码了,下面的则是android代码。



package com.example.caicaikan;

import java.security.PublicKey;

import android.R.integer;
import android.support.v7.app.ActionBarActivity;
import android.text.StaticLayout;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;

public class MainActivity extends ActionBarActivity {
 private TextView tv1;
 private ImageView iv1;
 private ImageView iv2;
 private ImageView iv3;
 private Button bt;
 private int selectedNum;
 //int[] xx=new int[3];
 int[] num=new int[]{1,2,3,4,5};
 int[] number=new int[]{R.drawable.fangbingbing,R.drawable.huangshengyi,R.drawable.liuyifei,R.drawable.one,
			R.drawable.wuyifan};
String[] message=new String[]{"范冰冰是哪个","黄圣依是哪个","刘亦菲是哪个","美女是谁","吴亦凡是哪个"};
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		
		setContentView(R.layout.activity_main);
		tv1=(TextView) findViewById(R.id.tv1);
		bt=(Button) findViewById(R.id.bt);
		iv1=(ImageView) findViewById(R.id.iv1);
		iv2=(ImageView) findViewById(R.id.iv2);
		iv3=(ImageView) findViewById(R.id.iv3);
		reset();
		iv1.setImageDrawable(getResources().getDrawable(number[0]));
		iv2.setImageDrawable(getResources().getDrawable(number[1]));
		iv3.setImageDrawable(getResources().getDrawable(number[2]));
		
		
		//重玩一次
		bt.setOnClickListener(new OnClickListener() {
			
			@Override
			public void onClick(View v) {
				reset();
				iv1.setImageDrawable(getResources().getDrawable(number[0]));
				iv2.setImageDrawable(getResources().getDrawable(number[1]));
				iv3.setImageDrawable(getResources().getDrawable(number[2]));
				
			}
		});

	}
	
	public void reset(){
		for(int i=0;i<3;i++){
			int temp = number[i];				//将数组元素i保存到临时变量中
			int tem=num[i];
		int index = (int) (Math.random()*number.length);		//生成一个随机数
//		//不让前后两次重复
//		if(index==selectedNum){
//			if(index<4)
//				index++;
//			else {
//				index=0;
//			}
//		}				
			number[i] = number[index];			//将随机数指定的数组元素的内容赋值给数组元素i
			num[i]=num[index];
			number[index] = temp;				//将临时变量的值赋值给随机数组指定的那个数组元素
			num[index]=tem;
		}
	int[] xx=new int[3];
		for(int i=0;i<3;i++){
			xx[i]=num[i];
		}
		 int ind =(int) (Math.random()*3);
		 
		 String aa=null;
////			
////			//不让前后两次重复
//		 if (xx[ind]==selectedNum) {
//			if (ind<2) {
//			 aa=message[xx[ind+1]-1];
//			 tv1.setText(aa);
//			 selectedNum=xx[ind+1];
//			} else {
//				aa=message[xx[0]-1];
//				tv1.setText(aa);
//				selectedNum=xx[0];
//			}
			 
			 aa=message[xx[ind]-1];		
				tv1.setText(aa);
				selectedNum=xx[ind];
		
		
		//触碰事件
		//为图片1添加监听事件
				iv1.setOnClickListener(new OnClickListener() {			
					@Override
					public void onClick(View v) {
						isRight(v,0);				
					}
				});
				//为图片2添加监听事件
				iv2.setOnClickListener(new OnClickListener() {			
							@Override
					public void onClick(View v) {						
								isRight(v,1);	
							}
						});
				
				//为图片3添加监听事件
				iv3.setOnClickListener(new OnClickListener() {			
							@Override
					public void onClick(View v) {						
								isRight(v,2);	
							}
						});				
	}
	//判断结果
		protected void isRight(View v, int i) {
			iv1.setImageDrawable(getResources().getDrawable(number[0]));
			iv2.setImageDrawable(getResources().getDrawable(number[1]));
			iv3.setImageDrawable(getResources().getDrawable(number[2]));
			
			switch (i) {
			case 0:
				if (num[0]==selectedNum) {
					Toast.makeText(this,i+"选对了,亲"+selectedNum,0).show();
				} else {
					Toast.makeText(this,i+"选错了,加油"+selectedNum,0).show();
				}
				break;
				
			case 1:
				if (num[1]==selectedNum) {
					Toast.makeText(this,i+"选对了,亲"+selectedNum,0).show();
				} else {
					Toast.makeText(this,i+"选错了,加油"+selectedNum,0).show();
				}
				break;
			case 2:
				if (num[2]==selectedNum) {
					Toast.makeText(this,i+"选对了,亲"+selectedNum,0).show();
				} else {
					Toast.makeText(this,i+"选错了,加油"+selectedNum,0).show();
				}
				break;
			default:
				break;
			}

			
		}
	

这个程序,我很早就做好了雏形,但直到现在我都不想改,这个经历告诉我们,做事一定要做好,别留下收尾,否则就很难去进行。都说是雏形,当然,是比较简陋的。那些图片的大小我都没设置好,字体也没调整好。图片我还可以不断地加进去。算法,我就没有做,还没有涉及到。能力还不行。





版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

C# 猜猜看游戏

  • 2015-07-06 20:48
  • 9.21MB
  • 下载

【c#第六次作业】猜猜看游戏

以下是图片资料 以下是图片对应的名字,顺序要和图片一样 以下是界面设计 以下是源代码 using System; using System.Collections.Generi...

蚂蚱猜猜看

  • 2006-03-16 00:00
  • 1.40MB
  • 下载

猜猜看应用

  • 2015-06-06 09:51
  • 38.44MB
  • 下载

《Java程序设计》第17周课程设计:《猜猜看》游戏 第四天

今天我为了实现按钮判断进行了少量的调整,利用输出的text进行判断是否其图片与标记的名字相对应; 可惜我还不能在上方对话框显示名字; 图片旁边的三个黑点其实获取的图片的名称,因为避免被看见我把他隐...

猜猜看源代码

  • 2015-07-08 10:09
  • 4.48MB
  • 下载

《Java程序设计》第17周课程设计:《猜猜看》游戏 第三天

今天的进度并不是很理想,原计划是从文本中获取学生信息的,可惜我根据网上参考做出根据文件名而显示其信息; 今天至少完成了两个方面图片的缩放和选择按钮; 图片的缩放: try { ...

android写的猜猜看小游戏

android版猜猜看     首先分析作业的需求,随机出现三张图片,每张图片一个名字,从三张图片中选出一个名字,然后用户选择图片,如果图片与名字相符合,则提示选择正确,否则错误。然后这是个老师认识学...

C#课程设计:《猜猜看》游戏开发总结

信管1121,201211671117,聂双燕 第一部分:开发要求(完整要求见课程考核说明编程组和游戏说明) 1. 随机显示 一个名字 与 3张相片,选择正确的相片; 2. 随机显示 一张相片 ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)