【homework1】彩票奖金问题(苛刻条件变松弛条件需要避免条件重复)

一.问题描述

/* 3、假设你想开发一个玩彩票的游戏,程序随机地产生一个两位数的彩票,提示用户输入一个两位数,然后按照下面的规则判定用户是否能赢。 1) 如果用户输入的数匹配彩票的实际顺序,奖金10 000美元。 2) 如果用户输入的所有数字匹配彩票的所有数字,但顺序不一致,奖金3 000美元。 3) 如果用户输入的一个数字仅满足顺序情况下匹配彩票的一个数字,奖金1 000美元。 4) 如果用户输入的一个数字仅满足非顺序情况下匹配彩票的一个数字,奖金500美元。 5) 如果用户输入的数字没有匹配任何一个数字,则彩票作废。 */


import java.util.Scanner;

public class Main{

public static void main(String[] args){

int code = (int)(Math.random() * (100 - 10) + 10);

System.out.println("请输入一个两位数:");

Scanner input = new Scanner(System.in);

int num = input.nextInt();

if(num / 10 == code / 10 && num % 10 == code % 10){

System.out.println("奖金10 000美元");

}

else if(num / 10 == code % 10 && num % 10 == code / 10){

System.out.println("奖金3 000美元");

}

else if(!(num / 10 == code / 10 && num % 10 == code % 10) &&

(num / 10 == code / 10 || num % 10 == code % 10)){

System.out.println("奖金1 000美元");

}

else if(!(num / 10 == code % 10 && num % 10 == code / 10) &&

(num / 10 == code % 10 || num % 10 == code / 10)){

System.out.println("奖金500美元");

}

else{

System.out.println("彩票作废");

}

}

}

相关推荐
怒放吧德德14 小时前
Netty 4.2 入门指南:从概念到第一个程序
java·后端·netty
雨中飘荡的记忆16 小时前
大流量下库存扣减的数据库瓶颈:Redis分片缓存解决方案
java·redis·后端
心之语歌18 小时前
基于注解+拦截器的API动态路由实现方案
java·后端
华仔啊19 小时前
Stream 代码越写越难看?JDFrame 让 Java 逻辑回归优雅
java·后端
ray_liang19 小时前
用六边形架构与整洁架构对比是伪命题?
java·架构
Ray Liang21 小时前
用六边形架构与整洁架构对比是伪命题?
java·python·c#·架构设计
Java水解21 小时前
Java 中间件:Dubbo 服务降级(Mock 机制)
java·后端
SimonKing1 天前
OpenCode AI辅助编程,不一样的编程思路,不写一行代码
java·后端·程序员
FastBean1 天前
Jackson View Extension Spring Boot Starter
java·后端
Seven971 天前
剑指offer-79、最⻓不含重复字符的⼦字符串
java