当前位置: 首页 > news >正文

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 代码格式


/// <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();
}

http://www.lryc.cn/news/159890.html

相关文章:

  • [杂谈]-快速了解Modbus协议
  • WhatsApp的两个商业模式该如何选择
  • 动态表单设计
  • JAR will be empty - no content was marked for inclusion!
  • 软件生命周期及流程【软件测试】
  • 2023高教社杯数学建模E题思路代码 - 黄河水沙监测数据分析
  • 双翌保养码使用指南方法(一)
  • hive指定字段插入数据,包含了分区表和非分区表
  • 浏览器端vscode docker搭建(附带python环境)
  • Echarts图表跟随父容器的变化自适应
  • 【多线程】ThreadLocal是什么?有哪些使用场景?使用ThreadLocal需要注意些什么?
  • 一种基于动态代理的通用研发提效解决方案
  • 【vue3】一些关于hooks的使用经验
  • 面试系列 - Java 并发容器详解
  • 使用动态住宅代理还能带来哪些好处?
  • 笙默考试管理系统-MyExamTest----codemirror(18)
  • TGA格式文件转材质
  • IP应用场景查询API:深入了解网络用户行为的利器
  • docker从零部署jenkins保姆级教程(上)
  • 2023数模A题——定日镜场的优化问题
  • Container is running beyond memory limits
  • Java后端开发面试题——JVM虚拟机篇
  • SpringMVC增删改查(CRUD)的实现
  • 智安网络|面临日益增长的安全威胁:云安全和零信任架构的重要性
  • JVM常用调优策略
  • 自动化防火墙放行目标域名IP
  • 12.2RAC环境从RAC转为单机模式的问题处理
  • Docker 中 jdk8容器里无法使用 JDK 的 jmap 等命令的问题
  • typeScript--[es6class类实现继承]
  • 解决eclipse的报错:Must declare a named package because this compilation