C#准時器和隨機數。本站提示廣大學習愛好者:(C#准時器和隨機數)文章只能為提供參考,不一定能成為您想要的結果。以下是C#准時器和隨機數正文
.net.Frameword中供給了一個專門發生隨機數的類System.Random,此類默許情形下已被導入,編程進程中可以直接應用。我們曉得,盤算機其實不能發生完整隨機的數字,它生成的數字被稱為偽隨機數,它是以雷同的幾率從一組無限的數字當選取的,所選的數字其實不具有完整的隨機性,但就適用而言,其隨機水平曾經足夠了。
我們來看上面的例子
MainForm.cs
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
//using example3.RandomHelp;
namespace example3
{
public partial class MainForm : Form
{
Timer timer = new Timer();
int zheng;
int shi;
public MainForm()
{
InitializeComponent();
button1.Click+=button1_Click;
button2.Click+=button2_Click;
// if (textBox3.Text != null)
// {
// string m = textBox3.Text;
}
void timer_Tick(object sender, EventArgs e)
{
//throw new NotImplementedException();
// radioButton2_Click(null,null);
// double r = (example3.RandomHelp.GetIntRandomNumber(int.Parse(textBox1.Text), int.Parse(textBox2.Text)));
// string s = r.ToString();
// label4.Text = s;
if (zheng == 1)
{
int r = (example3.RandomHelp.GetIntRandomNumber(int.Parse(textBox1.Text), int.Parse(textBox2.Text)));
string s = r.ToString();
label4.Text = s;
}
if (shi == 2)
{
double r = (example3.RandomHelp.GetDoubleRandomNumber(int.Parse(textBox1.Text), int.Parse(textBox2.Text)));
string s = r.ToString();
label4.Text = s;
}
}
//整數
private void radioButton1_CheckedChanged(object sender, EventArgs e)
{
RadioButton r = sender as RadioButton;
if (r.Checked == true)
{
zheng = 1;
}
}
//實數
private void radioButton2_CheckedChanged(object sender, EventArgs e)
{
RadioButton r = sender as RadioButton;
if (r.Checked == true)
{
shi = 2;
}
}
//開端
private void button1_Click(object sender, EventArgs e)
{
timer.Interval = int.Parse(textBox3.Text);
//timer.Interval = 500;
timer.Tick += timer_Tick;
timer.Start();
}
//停滯
private void button2_Click(object sender, EventArgs e)
{
timer.Stop();
}
}
}
RandomHelp.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
//using System.Windows.Forms.Timer;
namespace example3
{
class RandomHelp
{
public static int GetIntRandomNumber(int min,int max)
{
Random r=new Random();
int ran=r.Next(min, max + 1);
return ran;
}
//很不錯的算法
public static double GetDoubleRandomNumber(int min,int max)
{
Random r = new Random();
//很不錯的算法
double m=r.NextDouble() * max;
double n = r.NextDouble() * min;
if(m-n>2.0)
return m;
else
return n+3.0;
}
}
}
以上所述就是本文的全體內容了,願望年夜家可以或許愛好。