JAVA用户抽奖系统设计(幸运大转盘作业)

商家为了吸引用户,设100个奖品,一等奖3名,二等奖6名,三等奖10名,四等奖50名,其他为谢谢参与.编写程序产生奖项.

package luckPan;
public class LuckPan {
	public static void main(String[] args) {
		int a;
		int first,second,third,fouth;
		first=second=third=fouth=0;
		java.util.Random random=new java.util.Random();
		for(int i=0;i<100;i++)
		{
			a=random.nextInt(5);
			if(first<=3&&a==0){
				first++;
				System.out.println("获得一等奖");
			}else if(second<=6&&a==1){
				second--;
				System.out.println("获得二等奖");
			}else if(third<=10&&a==2){
				third--;
				System.out.println("获得三等奖");
			}else if(fouth<=50&&a==3){
				fouth--;
				System.out.println("获得四等奖");
			}else{
				System.out.println("谢谢参与!");
			}
		}
		
	}

}

(2)为了精细控制抽奖过程,要求如下:
 * 1.  每周最多产生一个一等奖
 * 2. 每天至少产生10个四等奖
 * 3. 用户摇奖前,显示当前最近获奖的5个四等奖以上的奖项。
请在原有程序的基础上实现上述要求。

package luckPan;

import java.util.Scanner;

public class LuckPan2 {
	public static void main(String[] args) {
		int a;
		int first,second,third,fouth;
		
		int days;
	
		
		java.util.Random random=new java.util.Random();
		Scanner week=new Scanner(System.in);
		int weeks=1;
		while (weeks==1) {
			days=7;
			int show=5;
			first=second=third=fouth=0;
			while (days>0) 
			{
				fouth=10;//每天至少10个
				for(int i=0;i<100;i++)
				{
					a=random.nextInt(5);
					
					if(show>0&&first<1&&a==0){
						//每周
						first++;
						System.out.println("获得一等奖");
						show--;
					}else if(show>0&&second<=6&&a==1){
						//每周
						second++;
						System.out.println("获得二等奖");
						show--;
					}else if(show>0&&third<=10&&a==2){
						//每周
						third++;
						System.out.println("获得三等奖");
						show--;
					}else if(show>0&&fouth<=10&&a==3){
						fouth--;
						System.out.println("获得四等奖");
						show--;
					}else{
						//System.out.println("谢谢参与!");
					}
				}
				days--;
			}
			
			System.out.println("本周已经结束!\n继续抽奖请输入1,退出输入0\n");	
			weeks=week.nextInt();
		}
	}

}



 

posted @ 2016-09-28 21:27  Joe.Smith  阅读(3685)  评论(0编辑  收藏  举报