C#版抽奖--双色球抽奖源代码
作者:Lynn 日期:2008-12-26
C#版抽奖--双色球抽奖源代码
[code]
using System;
using System.Collections.Generic;
using System.Text;
using System.IO;
using System.Collections;
namespace TwoColor
{
class Program
{
static void Main(string[] args)
{
//初始化两色球
ArrayList alRed = new ArrayList();
for (int i = 1; i < 34; i++)
{
alRed.Add(i);
}
ArrayList alBlue = new ArrayList();
for (int i = 1; i < 17; i++)
{
alBlue.Add(i);
}
//输入红色过滤
Console.Write("please input bad red number:");
string exceptRed = Console.ReadLine();
//输入蓝色过滤
Console.Write("please input bad blue number:");
string exceptBlue = Console.ReadLine();
alRed = removeBall(alRed, exceptRed);
alBlue = removeBall(alBlue, exceptBlue);
ArrayList[] birth = new ArrayList[5];
for (int i = 0; i < 5; i++)
{
birth[i] = birthBall(alRed, alBlue);
for (int j = 0; j < birth[i].Count; j++)
Console.Write("{0,4}",birth[i][j].ToString());
Console.WriteLine();
}
Console.Read();
}
//生成球
public static ArrayList birthBall(ArrayList red, ArrayList blue)
{
ArrayList reBirth = new ArrayList();
ArrayList tempRed = new ArrayList();
ArrayList tempBlue = new ArrayList();
for (int i = 0; i < red.Count; i++)
{
tempRed.Add(red[i]);
}
for (int i = 0; i < blue.Count; i++)
{
tempBlue.Add(blue[i]);
}
int rndNum = 0;
for (int i = 0; i < 6; i++)
{
Random rnd = new Random(getRandom());
rndNum = rnd.Next(tempRed.Count-1);
reBirth.Add(tempRed[rndNum]);
tempRed.Remove(tempRed[rndNum]);
}
reBirth.Sort();
Random rnds = new Random(getRandom());
rndNum = rnds.Next(tempBlue.Count - 1);
reBirth.Add(tempBlue[rndNum]);
return reBirth;
}
//得到一个随机大数
public static int getRandom()
{
string tempStr = Path.GetTempFileName().ToString();
tempStr = tempStr.Substring(tempStr.IndexOf("\\tmp") + 4);
tempStr = tempStr.Replace(".tmp", "");
int tempA = Convert.ToInt32(tempStr, 16) + DateTime.Now.Millisecond/2;
return tempA;
}
//过滤球
public static ArrayList removeBall(ArrayList al, string filter)
{
string[] filBall;
if (filter.IndexOf(',') > -1)
{
filBall = filter.Split(',');
}
else
{
filBall = filter.Split(' ');
}
for (int i = 0; i < filBall.Length; i++)
{
if(filBall[i].Trim()!=""&&al.Contains(int.Parse(filBall[i].Trim())))
{
al.Remove(int.Parse(filBall[i].Trim()));
}
}
return al;
}
}
}
[/code]
上一篇
下一篇

文章来自:
Tags: