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




相关文章:
C#,《小白学程序》第十四课:随机数(Random)第一,几种随机数的计算方法与代码
1 文本格式 /// <summary> /// 《小白学程序》第十四课:随机数(Random)第一,几种随机数的计算方法与代码 /// 本课初步接触一下随机数。 /// </summary> /// <param name"sender"></param> ///…...
[杂谈]-快速了解Modbus协议
快速了解Modbus协议 文章目录 快速了解Modbus协议1、为何 Modbus 如此受欢迎2、范围和数据速率3、逻辑电平4、层数5、网络与通讯6、数据帧格式7、数据类型8、服务器如何存储数据9、总结 Modbus 是一种流行的低速串行通信协议,广泛应用于自动化行业。 该协议由 Mo…...
WhatsApp的两个商业模式该如何选择
WhatsApp Business 是什么 目前 WhatsApp 提供两种商业模式,企业应根据自身需求选择相应版本。 第一个版本是 WhatsApp Business:初创企业只需一个手机应用程序,便可以个体单位与客户轻松互动; 另一个版本是 WhatsApp Business APIÿ…...
动态表单设计
动态表单设计 背景方案讨论基于上面分析,对比调研,自定义动态表单数据模型表单详解(一) 表单模板:jim_dynamic_form(二)表单数据类型:jim_form_data_type(三)…...
JAR will be empty - no content was marked for inclusion!
现象 在对自建pom依赖组件打包时,出现JAR will be empty - no content was marked for inclusion!错误。 方案 在pom中怎么加packaging标签内容为pom,标识只打包pom文件 <?xml version"1.0" encoding"UTF-8"?> ...<grou…...
软件生命周期及流程【软件测试】
软件的生命周期 软件生命周期是软件开始研制到最终被废弃不用所经历的各个阶段。 瀑布型生命周期模型 规定了它们自上而下、相互衔接的固定次序,如同瀑布流水,逐级下落,具有顺序性和依赖性。每个阶段规定文档并需进行评审。 特点ÿ…...
2023高教社杯数学建模E题思路代码 - 黄河水沙监测数据分析
# 1 赛题 E 题 黄河水沙监测数据分析 黄河是中华民族的母亲河。研究黄河水沙通量的变化规律对沿黄流域的环境治理、气候变 化和人民生活的影响, 以及对优化黄河流域水资源分配、协调人地关系、调水调沙、防洪减灾 等方面都具有重要的理论指导意义。 附件 1 给出了位…...
双翌保养码使用指南方法(一)
保养码使用指南一 为了确保软件的正常运行和有效使用,正确地使用保养码是至关重要的。以下是保养码使用的简单指南,以帮助您进行正确的操作。 1. 打开软件入口:首先,在您的电脑上打开文件夹,并找到s-y softactive tool…...
hive指定字段插入数据,包含了分区表和非分区表
1、建表 语句如下: CREATE EXTERNAL TABLE ods_lineitem_full (l_shipdate date,l_orderkey bigint,l_linenumber int,l_partkey int,l_suppkey int,l_quantity decimal(15, 2),l_extendedprice decimal(15, 2),l_discount de…...
浏览器端vscode docker搭建(附带python环境)
dockerfile from centos:7 #安装python环境 run yum -y install wget openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel zlib-devel libffi-devel gcc make run wget https://www.python.org/ftp/python/3.9.0/Python-3.9.0.tgz run tar -xvf Python-3.9.…...
Echarts图表跟随父容器的变化自适应
如果页面中有多个图表 隐藏/展开左边侧边栏echarts图表自适应 <div class"line"><div class"title">制冷站关键参数</div><div id"chartLine1" style"width: 100%;height:85%;"></div></div><…...
【多线程】ThreadLocal是什么?有哪些使用场景?使用ThreadLocal需要注意些什么?
文章目录 前言一、ThreadLocal 是什么?二、有哪些使用场景?三、实现原理四、在线程池中使用 ThreadLocal 为什么可能导致内存泄露呢?五、线程池中,如何正确使用 ThreadLocal?六、ThreadLocal 核心方法 前言 一、Threa…...
一种基于动态代理的通用研发提效解决方案
作为一名研发人员,除了业务开发之外,研发提效是一个永恒的话题,而女娲正是这一话题下进行的一次全面的剖析和实践。 作者:张全洪(钝悟) 一、女娲是什么 女娲是业务研发同学(开发、测试、运维)在软件迭代的…...
【vue3】一些关于hooks的使用经验
前言 最近接到了一个需求,隔壁嵌入式部门希望我们用前端解析渲染Kconfig表单。这篇文章用来记录一下本次使用hook pinia vue3的经验 hooks hooks的概念最早是在 React 中听到的,虽然早些时间也写过一点react,但也只是照葫芦画瓢…...
面试系列 - Java 并发容器详解
Java 并发容器是一组用于在多线程环境下安全访问和操作数据的数据结构。它们提供了线程安全的集合和映射,使开发者能够更轻松地处理并发编程问题。 一、Java并发容器 ConcurrentHashMap: 它是一个高效的并发哈希表,支持多线程并发操作而不需…...
使用动态住宅代理还能带来哪些好处?
一、什么是动态住宅代理ip 动态住宅代理是一种代理技术,它利用代理服务器中转用户和目标服务器之间的网络流量,实现用户真实位置的屏蔽。代理提供商会有自己的ip大池子,当你通过代理服务器向网站发送请求时,服务器会从池子中选中…...
笙默考试管理系统-MyExamTest----codemirror(18)
笙默考试管理系统-MyExamTest----codemirror(18) 目录 一、 笙默考试管理系统-MyExamTest----codemirror 二、 笙默考试管理系统-MyExamTest----codemirror 三、 笙默考试管理系统-MyExamTest----codemirror 四、 笙默考试管理系统-MyExamTest---…...
TGA格式文件转材质
今天淘宝上买了一个美女的模型,是blender的源文件,上面说有fbx格式的。我用unity,所以觉得应该可以用。文件内容如下图: FBX文件夹打开后,内容如下图所示,当时就预感到可能没有色彩。 unity打开后果然发现只…...
IP应用场景查询API:深入了解网络用户行为的利器
前言 随着数字时代的不断发展,互联网已经成为人们生活的重要组成部分。而随着越来越多的业务和社交活动迁移到在线平台上,了解和理解网络用户行为变得至关重要。为了满足这个需求,IP 应用场景查询 API 崭露头角,成为深入了解网络…...
docker从零部署jenkins保姆级教程(上)
jenkins,基本是最常用的持续集成工具。在实际的工作中,后端研发一般没有jenkins的操作权限,只有一些查看权限,但是我们的代码是经过这个工具构建出来部署到服务器的,所以我觉着有必要了解一下这个工具的搭建过程以及简…...
Docker 离线安装指南
参考文章 1、确认操作系统类型及内核版本 Docker依赖于Linux内核的一些特性,不同版本的Docker对内核版本有不同要求。例如,Docker 17.06及之后的版本通常需要Linux内核3.10及以上版本,Docker17.09及更高版本对应Linux内核4.9.x及更高版本。…...
C++初阶-list的底层
目录 1.std::list实现的所有代码 2.list的简单介绍 2.1实现list的类 2.2_list_iterator的实现 2.2.1_list_iterator实现的原因和好处 2.2.2_list_iterator实现 2.3_list_node的实现 2.3.1. 避免递归的模板依赖 2.3.2. 内存布局一致性 2.3.3. 类型安全的替代方案 2.3.…...
反向工程与模型迁移:打造未来商品详情API的可持续创新体系
在电商行业蓬勃发展的当下,商品详情API作为连接电商平台与开发者、商家及用户的关键纽带,其重要性日益凸显。传统商品详情API主要聚焦于商品基本信息(如名称、价格、库存等)的获取与展示,已难以满足市场对个性化、智能…...
在HarmonyOS ArkTS ArkUI-X 5.0及以上版本中,手势开发全攻略:
在 HarmonyOS 应用开发中,手势交互是连接用户与设备的核心纽带。ArkTS 框架提供了丰富的手势处理能力,既支持点击、长按、拖拽等基础单一手势的精细控制,也能通过多种绑定策略解决父子组件的手势竞争问题。本文将结合官方开发文档,…...
ElasticSearch搜索引擎之倒排索引及其底层算法
文章目录 一、搜索引擎1、什么是搜索引擎?2、搜索引擎的分类3、常用的搜索引擎4、搜索引擎的特点二、倒排索引1、简介2、为什么倒排索引不用B+树1.创建时间长,文件大。2.其次,树深,IO次数可怕。3.索引可能会失效。4.精准度差。三. 倒排索引四、算法1、Term Index的算法2、 …...
Android15默认授权浮窗权限
我们经常有那种需求,客户需要定制的apk集成在ROM中,并且默认授予其【显示在其他应用的上层】权限,也就是我们常说的浮窗权限,那么我们就可以通过以下方法在wms、ams等系统服务的systemReady()方法中调用即可实现预置应用默认授权浮…...
汇编常见指令
汇编常见指令 一、数据传送指令 指令功能示例说明MOV数据传送MOV EAX, 10将立即数 10 送入 EAXMOV [EBX], EAX将 EAX 值存入 EBX 指向的内存LEA加载有效地址LEA EAX, [EBX4]将 EBX4 的地址存入 EAX(不访问内存)XCHG交换数据XCHG EAX, EBX交换 EAX 和 EB…...
3403. 从盒子中找出字典序最大的字符串 I
3403. 从盒子中找出字典序最大的字符串 I 题目链接:3403. 从盒子中找出字典序最大的字符串 I 代码如下: class Solution { public:string answerString(string word, int numFriends) {if (numFriends 1) {return word;}string res;for (int i 0;i &…...
分布式增量爬虫实现方案
之前我们在讨论的是分布式爬虫如何实现增量爬取。增量爬虫的目标是只爬取新产生或发生变化的页面,避免重复抓取,以节省资源和时间。 在分布式环境下,增量爬虫的实现需要考虑多个爬虫节点之间的协调和去重。 另一种思路:将增量判…...
论文笔记——相干体技术在裂缝预测中的应用研究
目录 相关地震知识补充地震数据的认识地震几何属性 相干体算法定义基本原理第一代相干体技术:基于互相关的相干体技术(Correlation)第二代相干体技术:基于相似的相干体技术(Semblance)基于多道相似的相干体…...
