.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; } }}
以上所述就是本文的全部內容了,希望大家能夠喜歡。
新聞熱點
疑難解答