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();
}
相关推荐
言乐610 小时前
Python游戏水平测试辅助系统
开发语言·python·游戏·django·pygame
yuhulkjv33515 小时前
Claude表格复制到word不再崩溃,AI导出鸭批量导出+格式无损一键搞定
人工智能·ai·c#·word·ai导出鸭
大明者省16 小时前
WSL2 Ubuntu22.04 GPU训练环境配置指南
人工智能·算法·计算机视觉
WWJA王文举17 小时前
I²C通信完整流程详解:START、地址、ACK、数据、Repeated START和STOP一次讲透
c语言·开发语言
zhanghaha131417 小时前
Python进阶教程:6_JSON 数据解析 —— 新手完全指南
开发语言·python·json
白狐_79818 小时前
408数据结构第8章:排序②——性质对比秒杀、场景选择与外部排序
java·数据结构·算法
zander25818 小时前
LeetCode 84:柱状图中的最大矩形——单调栈如何确定左右边界
java·数据结构·算法
Shell运维手记18 小时前
Linux 常用基础命令学习笔记
linux·运维·笔记·学习·算法·github
qq_4480111619 小时前
C语言中的动态内存分配
c语言·开发语言·php
杨航 AI19 小时前
O(n log n):线性对数原理拆解 这个是排序算法的黄金复杂度之一。
算法·排序算法