Java用do-while循环写出一个抽奖程序

如题

//这个是我习惯的包名,呵呵package com.james.wk;import java.util.Random;
import java.util.Scanner;public class guess {
public static boolean getIt() {
Scanner input = new Scanner(System.in);
Random ra = new Random();
System.out.println("请输入你的会员号:");
int a=0; //初始化会员号
a = input.nextInt();
int b = ra.nextInt(10); //随机数
System.out.println("幸运数是:" + b);
int c = 0; //定义a的百位数
if (a <= 999 || a >= 10000) {
System.out.println("请输入四位数");
getIt();
}
c = a / 100 % 10;
if (b == c) {
return true;
}

return false;
} public static void main(String[] args) {
String sure=null;
do{
System.out.println("是否开始猜奖?(任意键开始,’N‘下次退出)");
sure=new Scanner(System.in).next();
if(sure.toLowerCase().equals("n")){
System.out.println("您已经退出!");
return;
}else{
if (new guess().getIt()) {
System.out.println("恭喜你是猜到了!");
} else {
System.out.println("猜错了");
}
}
}while(1==1);
}
}
会有点漏洞,会员号输入时验证不能为其他字符没有做,不好意思
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-12-11
太罗嗦了,可以尝试使用算法,算法使代码更加简洁,重要的是效率大大提高
第2个回答  2013-12-11
题目呢 ...
第3个回答  2013-12-11
不错

谁能用vb帮忙做一个1到120号随机的,不重复的抽奖程序,急用,谢谢
a Set dic = CreateObject("scripting.dictionary") Do While True Randomize a = Int(120 * Rnd) + 1 If Not dic.Exists(a) Then dic.Add a, "" n = n + 1 End If If n = 120 Then Exit Do Loop a = dic.keys Text1 = Join(a, ",")...

EXCEL抽奖如何多次抽奖不重复excel抽奖怎么不重复
Private Sub CommandButton4_Click()'开始抽奖 Dim zb As String, dj As String, rs As Integer Dim SARR(1 To 5000, 1 To 2) '存放本次抽奖的候选人清单 1-姓名 2-电话号码 'Dim lsARR '存放最近100次的候选人 Dim ZZ1 As Integer, ZZ2 As Integer, ZZ3 As Integer 'Dim jgarr Di...

如何用java技术实现幸运抽奖活动系统
= new Scanner(System.in);do { System.out.println("***欢迎进入奖客富翁系统***");System.out.println("\\t1.注册");System.out.println("\\t2.登录");System.out.println("\\t3.抽奖");System.out.println("***");System.out.print("请选择菜单:");int choice = input.nextInt();...

vb 编写一个抽奖程序
text1用来自己输入 command2用来判断 基本思想:假设连续有a位相同,经过验证如果为真则得出结果,如果为假,则假设a=a-1位相同……直到a=0 也可以自己输入text2数据来检验程序 这段程序不局限于7位数 Private Sub Command2_Click()Dim a$, b$, i%, j%, k a = CStr(Text1)b = CStr(Text...

用VFP模拟电视抽奖程序,求完整程序
直接在FOXPRO 桌面上运行的抽奖程序,供参考。本程序和什么时钟没什么关系,用随机数来生成记录号 !SET TALK OFFCLEARuse phonen=RECCOUNT()ON KEY LABEL END do jiesu do while .t.k=INT(n*RAND()+1)GOTO knum=SUBSTR(phone,1,9)+'**'@ 10,10 say numenddouse RETURNPROCEDURE jiesuUSE...

求java程序代码,200行左右
3.先判断用户是否已登陆(是否存在会员卡) 询问是否进行抽奖,选Y,电脑随机输出5个4位 数字。如果其中有一个数字与用户卡号相同,则为中奖,奖励 人民币为卡号数字的金额。否则,谢谢参与。程序退出。 *\/import java.util.Scanner;import java.util.Random;public class RichPerson {public static void...

求VB写的循环人名抽奖程序源代码
int totalid; \/\/参加抽奖的id总数,如果抽出一个,自减1 bool bstart; \/\/标记进度条是否在滚动 \/\/ Dialog Data \/\/{{AFX_DATA(CGiftDlg)enum { IDD = IDD_GIFT_DIALOG };CButton m_btgo;CString m_code;CString m_msg;\/\/}}AFX_DATA \/\/ ClassWizard generated virtual function overrides ...

用java类模拟游戏的账号的登陆,注册,退出。 1.没有账号,需要注册。 2...
3.先判断用户是否已登陆(是否存在会员卡) 询问是否进行抽奖,选Y,电脑随机输出5个4位 数字。如果其中有一个数字与用户卡号相同,则为中奖,奖励 人民币为卡号数字的金额。否则,谢谢参与。程序退出。 *\/import java.util.Scanner;import java.util.Random;public class RichPerson {public static void...

为什么我的do循环没有作用呢?(八百里加急)
内部的do :System.out.println("对不起,您输入的卡号有误。请重新输入!");break;break;是跳出循环, 用continue;继续下次循环就行了

那个IF里,如果要让用户名和密码输入的跟前面注册的一样;应该怎么写条件...
将用户名和密码改成全局信息,记住注册时候的用户名,密码,卡号 但是程序只会记住最近一次的注册信息!然后 if (a.equals(f) && b.equals(g)) { System.out.println("欢迎您:"+c);}

相似回答