C#,《小白学程序》第十四课:随机数(Random)第一,几种随机数的计算方法与代码

1 文本格式

/// <summary>

/// 《小白学程序》第十四课:随机数(Random)第一,几种随机数的计算方法与代码

/// 本课初步接触一下随机数。

/// </summary>

/// <param name="sender"></param>

/// <param name="e"></param>

private void button14_Click(object sender, EventArgs e)

{

int n = 100;

// 定义一个 随机数 发生器

Random rnd = new Random();

StringBuilder sb = new StringBuilder();

sb.AppendLine("<h2>一般随机数(整数 0 ... ):</h2>");

for (int i = 0; i < n; i++) sb.AppendLine(i + ": " + rnd.Next() + "<br>");

sb.AppendLine("<br>");

sb.AppendLine("<h2>有范围限制的随机数(整数-50 ... +50):</h2>");

for (int i = 0; i < n; i++) sb.AppendLine(i + ": " + (rnd.Next(100) - 50) + "<br>");

sb.AppendLine("<br>");

sb.AppendLine("<h2>随机数(浮点数 0.00 ... 1.00):</h2>");

for (int i = 0; i < n; i++) sb.AppendLine(i + ": " + rnd.NextDouble() + "<br>");

sb.AppendLine("<br>");

sb.AppendLine("<h2>有范围限制的浮点数(-1.0 ... +1.0):</h2>");

for (int i = 0; i < n; i++) sb.AppendLine(i + ": " + (rnd.NextDouble() * 2.0 - 1.0) + "<br>");

sb.AppendLine("<br>");

sb.AppendLine("<h2>随机的角度(0 ... 360)及其 Sin 值:</h2>");

for (int i = 0; i < n; i++)

{

// 错误的写法!

//sb.Append(i + ": sin(" + (rnd.NextDouble() * 360.0) + ") = " + Math.Sin(rnd.NextDouble() * 360.0) + "<br>");

// 正确的写法!

double angle = (int)(rnd.NextDouble() * 360.0);

sb.AppendLine(i + ": sin(" + angle + ") = " + Math.Sin(angle) + "<br>");

}

sb.AppendLine("<br>");

webBrowser1.DocumentText = sb.ToString();

}

2 代码格式

cs 复制代码
/// <summary>
/// 《小白学程序》第十四课:随机数(Random)第一,几种随机数的计算方法与代码
/// 本课初步接触一下随机数。
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button14_Click(object sender, EventArgs e)
{
    int n = 100;
    // 定义一个 随机数 发生器
    Random rnd = new Random();

    StringBuilder sb = new StringBuilder();
    sb.AppendLine("<h2>一般随机数(整数 0 ... ):</h2>");
    for (int i = 0; i < n; i++) sb.AppendLine(i + ": " + rnd.Next() + "<br>");
    sb.AppendLine("<br>");

    sb.AppendLine("<h2>有范围限制的随机数(整数-50 ... +50):</h2>");
    for (int i = 0; i < n; i++) sb.AppendLine(i + ": " + (rnd.Next(100) - 50) + "<br>");
    sb.AppendLine("<br>");

    sb.AppendLine("<h2>随机数(浮点数 0.00 ... 1.00):</h2>");
    for (int i = 0; i < n; i++) sb.AppendLine(i + ": " + rnd.NextDouble() + "<br>");
    sb.AppendLine("<br>");

    sb.AppendLine("<h2>有范围限制的浮点数(-1.0 ... +1.0):</h2>");
    for (int i = 0; i < n; i++) sb.AppendLine(i + ": " + (rnd.NextDouble() * 2.0 - 1.0) + "<br>");
    sb.AppendLine("<br>");

    sb.AppendLine("<h2>随机的角度(0 ... 360)及其 Sin 值:</h2>");
    for (int i = 0; i < n; i++)
    {
        // 错误的写法!
        //sb.Append(i + ": sin(" + (rnd.NextDouble() * 360.0) + ") = " + Math.Sin(rnd.NextDouble() * 360.0) + "<br>");
        // 正确的写法!
        double angle = (int)(rnd.NextDouble() * 360.0);
        sb.AppendLine(i + ": sin(" + angle + ") = " + Math.Sin(angle) + "<br>");
    }
    sb.AppendLine("<br>");

    webBrowser1.DocumentText = sb.ToString();
}
相关推荐
码界奇点1 小时前
Java设计模式精讲从基础到实战的常见模式解析
java·开发语言·设计模式·java-ee·软件工程
mit6.8241 小时前
二维差分+前缀和
算法
民乐团扒谱机1 小时前
自然的算法:从生物进化到智能优化 —— 遗传算法的诗意与硬核“
算法
希望有朝一日能如愿以偿1 小时前
力扣每日一题:仅含1的子串数
算法·leetcode·职场和发展
四维碎片1 小时前
【Qt】配置安卓开发环境
android·开发语言·qt
西游音月1 小时前
(7)框架搭建:Qt实战项目之主窗体导航栏、状态栏
开发语言·qt
3***49961 小时前
Swift Experience
开发语言·ios·swift
iFlow_AI1 小时前
iFlow CLI Hooks 「从入门到实战」应用指南
开发语言·前端·javascript·人工智能·ai·iflow·iflow cli
Maybyy1 小时前
Chart.js图标绘制工具库
开发语言·javascript·ecmascript
漂流瓶jz1 小时前
SourceMap数据生成核心原理:简化字段与Base64VLQ编码
前端·javascript·算法