【Ruby简单脚本02】双色球系统

发布于:2024-06-22 ⋅ 阅读:(126) ⋅ 点赞:(0)
# frozen_string_literal: true  
  
require 'date'  
  
# 生成中奖号码的工具  
# 红球 1-32 篮球 1-15  
  
def create_num  
  nums = []  
  6.times do  
    while true      
      num = rand(1..32)  
      unless nums.include?(num)  
        nums << num  
        break  
      end    
      end 
    end  
  blue = rand(1..15)  
  nums.sort << blue  
end  
  
# print(create_num())  
  
def pan_duan(nums, buy_nums)  
  red = 0  
  blue = 0  
  buy_nums[0..-2].each do |i|  
    if nums[0..-2].include?(i)  
      red += 1  
    end  
  end  blue += 1 if buy_nums[-1] == nums[-1]  
  
  # 判断中了几等奖  
  '''  
  一等奖:6个红色球号码+1个蓝色球号码全中。(6+1)  
  red == 6 and blue ==1  二等奖:6个红色球号码全中。(6+0)  
  red == 6  三等奖:5个红色球号码+1个蓝色球号码。(5+1)  
  red == 5 and blue == 1  四等奖:5个红色球号码全中或者4个红色球号码+1个蓝色球号码。  
  red + blue == 5  五等奖:4个红色球号码全中或者3个红色球号码+1个蓝色球号码。  
  red + blue == 4  六等奖:2个红色球号码+1个蓝色球号码或1个红色球号码+1个蓝色球号码或只有1个蓝  
  (red == 2 and blue == 1) or (red == 1 and blue == 1) or blue ==1  '''  if red == 6 && blue == 1  
    return 1  
  elsif red == 6  
    return 2  
  elsif red == 5 && blue == 1  
    return 3  
  elsif red + blue == 5  
    return 4  
  elsif red + blue == 4  
    return 5  
  elsif (red == 2 && blue == 1) || (red == 1 && blue == 1) || blue == 1  
    return 6  
  else  
    return 0  
  end  
end  
  
nums = create_num  
puts "开奖号码为:#{nums}"  
buy_nums = [1, 2, 7, 12, 26, 27, 2]  
puts "购买号码为:#{buy_nums}"  
  
puts "您中了:#{pan_duan(nums, buy_nums)} 等奖!!"

本文由【产品经理不是经理】gzh 同步发布,欢迎关注


网站公告

今日签到

点亮在社区的每一天
去签到