찾다
Javajava지도 시간Java에서 행운권 추첨 기능을 구현하는 방법

1. 작업

등록 및 로그인 행운권 추첨의 전체 과정을 시뮬레이션합니다

2. 주요 기능:

1.Register
2.Login
3.Logout
4.Lottery
5.시스템 로그아웃

홈페이지 :

1. 메뉴 출력
2. 메뉴 번호 선택
3. 번호가 틀리면 "입력이 잘못되었습니다!" 출력

1. 시스템은 카드 번호로 4자리 난수를 생성합니다. 2. 등록이 성공하면 사용자 정보가 출력됩니다.


로그인:

1. 등록 중에 사용자 이름과 비밀번호를 입력하면 로그인이 성공하고 시스템에 로그인이 성공했다는 메시지가 표시됩니다. 2. 사용자 이름과 비밀번호를 잘못 입력한 경우 계속 입력하라는 메시지가 표시됩니다.


로그아웃:

1. 로그인되어 있는 경우 로그아웃합니다. 2. 로그인되어 있지 않으면 로그인되지 않은 것으로 표시됩니다.


추첨:

1 .멤버십 카드 번호를 입력하시면 시스템에서 무작위로 4자리 숫자를 행운의 숫자로 생성해 드립니다2. 만약 멤버십 카드 번호가 그 중 하나라면 오늘 행운의 회원이 될 것입니다.

시스템 종료:

사용자가 이 시스템의 사용을 종료하려면 시스템을 종료하고 프로그램을 종료할 수 있습니다. 코드 구현:

import java.util.Scanner;
 
class User{//用户
    String name;
    String password;
    int cardid;
    User(String name,String password){
        this.name=name;
        this.password=password;
        cardid=(int)(Math.random()*9000+1000);
    }
    String getName(){
        return name;
    }
    String getPassword(){
        return password;
    }
    int getCardid(){
        return cardid;
    }
}
public class Lottery {//抽奖系统
 
    public static void main(String[] args) {//main方法
        User[]user=new User[10];
        int total=0;//注册人数
        int j=0;//是否退出系统
        int x=0;//登录状态,默认未登录
        int y=-1;//当前登录用户元素
        do {
            System.out.println("*****欢迎进入幸运抽奖系统*****");
            System.out.println("\t1、注册");
            System.out.println("\t2、登录");
            System.out.println("\t3、退出登录");
            System.out.println("\t4、抽奖");
            System.out.println("\t5、退出系统");
            System.out.print("\t请选择:");
            int choice;
            Scanner reader=new Scanner(System.in);
            choice=reader.nextInt();
 
            switch (choice){
                case 1:
                    if (x==0)
                    total = getTotal(user, total);
                    else
                        System.out.println("您正在登录中,请先退出登录再注册!\n");
                    break;
                case 2:
                    if (x==0) {
                        int i = 0;
                        do {
                            y = toLogin(user, total);
                            if (y==-1) {
                                System.out.println("您的输入有误,请重新输入!\n");
                                i = 1;
                            }else {
                                x = 1;
                                i=0;
                            }
                        } while (i == 1);
                    }else
                        System.out.println("您正在登录中!\n");
                    break;
                case 3:
                    if (x==1){
                        x=0;
                        System.out.println("退出登录成功!\n");
                    }else
                        System.out.println("您未登录,请先登录!\n");
                    break;
                case 4:
                    if (x==1){
                        toLottery(user, y);
                    }else
                        System.out.println("您未登录,请先登录!\n");
                    break;
                case 5:
                    j=1;
                    break;
                default:
                    System.out.println("您的输出有误,请重新输入!\n");
            }
        }while(j!=1);
    }
 
    private static void toLottery(User[] user, int y) {//抽奖方法
        int j=0;
        System.out.println("本日幸运会员卡号为:");
        int cardid[]=new int[5];
        cardid[0]=(int)(Math.random()*9000+1000);
        cardid[1]=(int)(Math.random()*9000+1000);
        cardid[2]=(int)(Math.random()*9000+1000);
        cardid[3]=(int)(Math.random()*9000+1000);
        cardid[4]=(int)(Math.random()*9000+1000);
        for (int i=0;i<5;i++){
            System.out.print(cardid[i]+"  ");
            if(user[y].getCardid()==cardid[i]){
                j=1;
            }
        }
        System.out.println("\n您的会员卡号为:\n"+user[y].getCardid());
        if (j==1)
            System.out.println("恭喜您,成为本日的幸运会员!\n");
        else
            System.out.println("很遗憾,您不是本日幸运会员!\n");
    }
 
    private static int toLogin(User[] user, int total) {//登录方法
        Scanner reader=new Scanner(System.in);
        System.out.print("请输入您的用户名:");
        String name= reader.nextLine();
        System.out.print("请输入您的密码:");
        String password= reader.nextLine();
        int j=-1;
        for (int i = 0; i< total; i++) {
            if (name.equals(user[i].getName())) {
                if (password.equals(user[i].getPassword())) {
                    System.out.println("登陆成功!");
                    System.out.println("用户名:"+name+"\n密码:"+password+"\n会员号:"+user[i].getCardid()+"\n");
                    j=i;
                }
            }
        }
        return j;
    }
    private static int getTotal(User[] user, int total) {//注册方法
        Scanner reader=new Scanner(System.in);
        System.out.print("请输入您的用户名:");
        String name= reader.nextLine();
        System.out.print("请输入您的密码:");
        String password= reader.nextLine();
        for (int i=0;i<total;i++) {
            if (name.equals(user[i].getName())) {
                System.out.println("用户名已存在,请重新输入!\n");
                return total;
            }
        }
        user[total]=new User(name,password);
        System.out.println("用户名:"+name+"\n密码:"+password+"\n会员号:"+user[total].getCardid()+"\n");
        total++;
        return total;
    }
}

Java에서 행운권 추첨 기능을 구현하는 방법

Java에서 행운권 추첨 기능을 구현하는 방법

Java에서 행운권 추첨 기능을 구현하는 방법

위 내용은 Java에서 행운권 추첨 기능을 구현하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명
이 기사는 亿速云에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제
带你搞懂Java结构化数据处理开源库SPL带你搞懂Java结构化数据处理开源库SPLMay 24, 2022 pm 01:34 PM

本篇文章给大家带来了关于java的相关知识,其中主要介绍了关于结构化数据处理开源库SPL的相关问题,下面就一起来看一下java下理想的结构化数据处理类库,希望对大家有帮助。

Java集合框架之PriorityQueue优先级队列Java集合框架之PriorityQueue优先级队列Jun 09, 2022 am 11:47 AM

本篇文章给大家带来了关于java的相关知识,其中主要介绍了关于PriorityQueue优先级队列的相关知识,Java集合框架中提供了PriorityQueue和PriorityBlockingQueue两种类型的优先级队列,PriorityQueue是线程不安全的,PriorityBlockingQueue是线程安全的,下面一起来看一下,希望对大家有帮助。

完全掌握Java锁(图文解析)完全掌握Java锁(图文解析)Jun 14, 2022 am 11:47 AM

本篇文章给大家带来了关于java的相关知识,其中主要介绍了关于java锁的相关问题,包括了独占锁、悲观锁、乐观锁、共享锁等等内容,下面一起来看一下,希望对大家有帮助。

一起聊聊Java多线程之线程安全问题一起聊聊Java多线程之线程安全问题Apr 21, 2022 pm 06:17 PM

本篇文章给大家带来了关于java的相关知识,其中主要介绍了关于多线程的相关问题,包括了线程安装、线程加锁与线程不安全的原因、线程安全的标准类等等内容,希望对大家有帮助。

详细解析Java的this和super关键字详细解析Java的this和super关键字Apr 30, 2022 am 09:00 AM

本篇文章给大家带来了关于Java的相关知识,其中主要介绍了关于关键字中this和super的相关问题,以及他们的一些区别,下面一起来看一下,希望对大家有帮助。

Java基础归纳之枚举Java基础归纳之枚举May 26, 2022 am 11:50 AM

本篇文章给大家带来了关于java的相关知识,其中主要介绍了关于枚举的相关问题,包括了枚举的基本操作、集合类对枚举的支持等等内容,下面一起来看一下,希望对大家有帮助。

java中封装是什么java中封装是什么May 16, 2019 pm 06:08 PM

封装是一种信息隐藏技术,是指一种将抽象性函式接口的实现细节部分包装、隐藏起来的方法;封装可以被认为是一个保护屏障,防止指定类的代码和数据被外部类定义的代码随机访问。封装可以通过关键字private,protected和public实现。

归纳整理JAVA装饰器模式(实例详解)归纳整理JAVA装饰器模式(实例详解)May 05, 2022 pm 06:48 PM

本篇文章给大家带来了关于java的相关知识,其中主要介绍了关于设计模式的相关问题,主要将装饰器模式的相关内容,指在不改变现有对象结构的情况下,动态地给该对象增加一些职责的模式,希望对大家有帮助。

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

DVWA

DVWA

DVWA(Damn Vulnerable Web App)는 매우 취약한 PHP/MySQL 웹 애플리케이션입니다. 주요 목표는 보안 전문가가 법적 환경에서 자신의 기술과 도구를 테스트하고, 웹 개발자가 웹 응용 프로그램 보안 프로세스를 더 잘 이해할 수 있도록 돕고, 교사/학생이 교실 환경 웹 응용 프로그램에서 가르치고 배울 수 있도록 돕는 것입니다. 보안. DVWA의 목표는 다양한 난이도의 간단하고 간단한 인터페이스를 통해 가장 일반적인 웹 취약점 중 일부를 연습하는 것입니다. 이 소프트웨어는

PhpStorm 맥 버전

PhpStorm 맥 버전

최신(2018.2.1) 전문 PHP 통합 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

MinGW - Windows용 미니멀리스트 GNU

MinGW - Windows용 미니멀리스트 GNU

이 프로젝트는 osdn.net/projects/mingw로 마이그레이션되는 중입니다. 계속해서 그곳에서 우리를 팔로우할 수 있습니다. MinGW: GCC(GNU Compiler Collection)의 기본 Windows 포트로, 기본 Windows 애플리케이션을 구축하기 위한 무료 배포 가능 가져오기 라이브러리 및 헤더 파일로 C99 기능을 지원하는 MSVC 런타임에 대한 확장이 포함되어 있습니다. 모든 MinGW 소프트웨어는 64비트 Windows 플랫폼에서 실행될 수 있습니다.

ZendStudio 13.5.1 맥

ZendStudio 13.5.1 맥

강력한 PHP 통합 개발 환경