最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C#定時(shí)器和隨機(jī)數(shù)

 更新時(shí)間:2015年06月17日 11:08:57   投稿:hebedich  
在前一篇中我們介紹了鍵盤和鼠標(biāo)事件,其實(shí)還有一個(gè)非常常用的事件,就是定時(shí)器事件,如果要對(duì)程序?qū)崿F(xiàn)時(shí)間上的控制,那么就要使用到定時(shí)器。而隨機(jī)數(shù)也是很常用的一個(gè)功能,在我們要想產(chǎn)生一個(gè)隨機(jī)的結(jié)果時(shí)就要使用到隨機(jī)數(shù)。本文我們就來(lái)簡(jiǎn)單介紹一下定時(shí)器和隨機(jī)數(shù)。

.net.Frameword中提供了一個(gè)專門產(chǎn)生隨機(jī)數(shù)的類System.Random,此類默認(rèn)情況下已被導(dǎo)入,編程過(guò)程中可以直接使用。我們知道,計(jì)算機(jī)并不能產(chǎn)生完全隨機(jī)的數(shù)字,它生成的數(shù)字被稱為偽隨機(jī)數(shù),它是以相同的概率從一組有限的數(shù)字中選取的,所選的數(shù)字并不具有完全的隨機(jī)性,但就實(shí)用而言,其隨機(jī)程度已經(jīng)足夠了。

我們來(lái)看下面的例子

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;
       }
    }
    //整數(shù)
    private void radioButton1_CheckedChanged(object sender, EventArgs e)
    {
      RadioButton r = sender as RadioButton;
      if (r.Checked == true)
      {
        zheng = 1;
      }
    }
    //實(shí)數(shù)
    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;
    }
    //很不錯(cuò)的算法
    public static double GetDoubleRandomNumber(int min,int max)
    {
      Random r = new Random();
 //很不錯(cuò)的算法    
      double m=r.NextDouble() * max;
      double n = r.NextDouble() * min;
      
      if(m-n>2.0)
      return m;
      else
      return n+3.0;
    }
  }
}

以上所述就是本文的全部?jī)?nèi)容了,希望大家能夠喜歡。

相關(guān)文章

  • C#中的GDI+圖像編程詳解

    C#中的GDI+圖像編程詳解

    本文詳細(xì)講解了C#中的GDI+圖像編程,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-05-05
  • C# 利用IRawPixels接口遍歷柵格數(shù)據(jù)

    C# 利用IRawPixels接口遍歷柵格數(shù)據(jù)

    本文主要介紹了利用IRawPixels接口遍歷柵格數(shù)據(jù)。具有很好的參考價(jià)值,下面跟著小編一起來(lái)看下吧
    2017-02-02
  • C# 委托的三種調(diào)用示例(同步調(diào)用 異步調(diào)用 異步回調(diào))

    C# 委托的三種調(diào)用示例(同步調(diào)用 異步調(diào)用 異步回調(diào))

    本文將主要通過(guò)同步調(diào)用、異步調(diào)用、異步回調(diào)三個(gè)示例來(lái)講解在用委托執(zhí)行同一個(gè)加法類的時(shí)候的的區(qū)別和利弊
    2013-12-12
  • 基于C#實(shí)現(xiàn)Windows服務(wù)的方法詳解

    基于C#實(shí)現(xiàn)Windows服務(wù)的方法詳解

    在實(shí)際應(yīng)用過(guò)程中,有時(shí)候我們希望開發(fā)的程序,不需要界面,直接開機(jī)就可以長(zhǎng)時(shí)間運(yùn)行,這時(shí)候,我們可以考慮做成一個(gè)Windows服務(wù)。這篇文章跟大家介紹一下,如何基于C#實(shí)現(xiàn)Windows服務(wù)的創(chuàng)建、安裝、啟動(dòng)、停止和卸載,需要的可以參考一下
    2022-09-09
  • c# 委托和事件實(shí)例學(xué)習(xí)

    c# 委托和事件實(shí)例學(xué)習(xí)

    今天把委托和事件研究了一個(gè),winForm環(huán)境下,一般的小例子都是字符界面,我為了運(yùn)用一下,寫了winForm
    2009-01-01
  • C# TreeView從數(shù)據(jù)庫(kù)綁定數(shù)據(jù)的示例

    C# TreeView從數(shù)據(jù)庫(kù)綁定數(shù)據(jù)的示例

    這篇文章主要介紹了C# TreeView從數(shù)據(jù)庫(kù)綁定數(shù)據(jù)的示例,幫助大家更好的理解和學(xué)習(xí)使用c#,感興趣的朋友可以了解下
    2021-03-03
  • C#跨平臺(tái)開發(fā)之使用C/C++生成的動(dòng)態(tài)鏈接庫(kù)

    C#跨平臺(tái)開發(fā)之使用C/C++生成的動(dòng)態(tài)鏈接庫(kù)

    這篇文章介紹了C#跨平臺(tái)開發(fā)之使用C/C++生成的動(dòng)態(tài)鏈接庫(kù),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-01-01
  • 詳解.NET 6如何實(shí)現(xiàn)獲取當(dāng)前登錄用戶信息

    詳解.NET 6如何實(shí)現(xiàn)獲取當(dāng)前登錄用戶信息

    這篇文章主要介紹了.NET 6在應(yīng)用開發(fā)時(shí)是如何實(shí)現(xiàn)當(dāng)前登陸用戶信息獲取的,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起了解一下
    2022-01-01
  • C#十五子游戲編寫代碼

    C#十五子游戲編寫代碼

    這篇文章主要為大家詳細(xì)介紹了C#十五子游戲的編寫代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-05-05
  • C#線程同步的三類情景分析

    C#線程同步的三類情景分析

    這篇文章主要介紹了C#線程同步的三類情景分析,較為詳細(xì)生動(dòng)的講述了C#線程同步的三類情況,讓大家對(duì)C#多線程程序設(shè)計(jì)有一個(gè)深入的了解,需要的朋友可以參考下
    2014-10-10

最新評(píng)論

盐源县| 政和县| 大邑县| 吴桥县| 修武县| 嵩明县| 习水县| 开鲁县| 丹东市| 洛宁县| 平和县| 阿坝| 秭归县| 三明市| 玛纳斯县| 甘孜县| 龙南县| 姜堰市| 泌阳县| 突泉县| 金湖县| 临清市| 长春市| 青神县| 吴忠市| 桦南县| 金山区| 会同县| 巴林右旗| 山阴县| 阳原县| 峡江县| 收藏| 宝清县| 大田县| 阿鲁科尔沁旗| 兴宁市| 思南县| 天等县| 禄丰县| 长垣县|