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();
}
相关推荐
沐知全栈开发2 分钟前
MongoDB 创建数据库
开发语言
pystraf18 分钟前
UOJ 228 基础数据结构练习题 Solution
数据结构·c++·算法·线段树
ErizJ20 分钟前
Golang | 迭代器模式
开发语言·golang·迭代器模式
牙痛不能吃糖,哭24 分钟前
C++面试复习日记(8)2025.4.25,malloc,free和new,delete的区别
开发语言·c++
海底火旺27 分钟前
破解二维矩阵搜索难题:从暴力到最优的算法之旅
javascript·算法·面试
健康的猪27 分钟前
golang的cgo的一点小心得
开发语言·后端·golang
冰茶_32 分钟前
.NET MAUI 发展历程:从 Xamarin 到现代跨平台应用开发框架
学习·microsoft·微软·c#·.net·xamarin
夜夜敲码1 小时前
C语言教程(十六): C 语言字符串详解
c语言·开发语言
宋康1 小时前
C语言结构体和union内存对齐
c语言·开发语言
居然是阿宋1 小时前
Kotlin高阶函数 vs Lambda表达式:关键区别与协作关系
android·开发语言·kotlin