数学函数

本文介绍了.NET框架中Math类提供的各种数学函数及其用法,包括绝对值、平方根等,并通过实例展示了如何利用这些函数进行数值计算。此外,还探讨了不使用额外变量交换值及判断整数是否为偶数的方法。

.net提供了基础的数学函数

Math常用方法

绝对值Abs
返回两个32位大数乘积
BigMul
接近数
Ceiling
Floor
Round
求余和商DivRem
数字比较
Max
Min
返回指定数字的平方根
Sqrt
返回幂
Pow
三角函数
Acos
Asin
Atan
Cos
Cosh
Sin
Tan
1None.gifSystem.Console.WriteLine(System.Math.Ceiling(1.1415926));
2None.gifSystem.Console.WriteLine(System.Math.Floor(1.1415926));
3None.gifSystem.Console.WriteLine(System.Math.Min(1,10));
4None.gifSystem.Console.WriteLine(System.Math.Max(1,10));
5None.gif//对于下面的Round请注意观察
6None.gifSystem.Console.WriteLine(System.Math.Round(3.44,1));
7None.gifSystem.Console.WriteLine(System.Math.Round(3.45,1));
8None.gifSystem.Console.WriteLine(System.Math.Round(3.46,1));
9None.gifSystem.Console.WriteLine(System.Math.Round(3.54,1));
10None.gifSystem.Console.WriteLine(System.Math.Round(3.55,1));
11None.gifSystem.Console.WriteLine(System.Math.Round(3.56,1));
12None.gifSystem.Console.WriteLine(System.Math.Sqrt(2));


有两个数:m和n。不使用第3变量交换这两个值
1None.gifintm=76;
2None.gifintn=100;
3None.gif
4None.gifm=m+n;
5None.gifn=m-n;
6None.gifm=m-n;
7None.gif
8None.gifSystem.Console.WriteLine("m:{0}",m);
9None.gifSystem.Console.WriteLine("n:{0}",n);

给定一个整数,不使用模的方式判断其是不是偶数

1None.giffor(intn=1;n<=100;n++)
2ExpandedBlockStart.gifContractedBlock.gifdot.gif{
3InBlock.gifintm=0;
4InBlock.gifinti=0;
5InBlock.gifdo
6ExpandedSubBlockStart.gifContractedSubBlock.gifdot.gif{
7InBlock.gifm=i*2;
8InBlock.gifi++;
9ExpandedSubBlockEnd.gif}

10InBlock.gifwhile(m<n);
11InBlock.gifif(m==n)
12ExpandedSubBlockStart.gifContractedSubBlock.gifdot.gif{
13InBlock.gifSystem.Console.WriteLine("{0}是偶数",n);
14ExpandedSubBlockEnd.gif}

15InBlock.gifelse
16ExpandedSubBlockStart.gifContractedSubBlock.gifdot.gif{
17InBlock.gifSystem.Console.WriteLine("{0}是奇数",n);
18ExpandedSubBlockEnd.gif}

19ExpandedBlockEnd.gif}

同理求质数

1None.giffor(intk=0;k<=100;k++)
2ExpandedBlockStart.gifContractedBlock.gifdot.gif{
3InBlock.gifboolisSearch=false;
4InBlock.giffor(inti=2;i<=k-1;i++)
5ExpandedSubBlockStart.gifContractedSubBlock.gifdot.gif{
6InBlock.giffor(intj=i;j<=k-1;j++)
7ExpandedSubBlockStart.gifContractedSubBlock.gifdot.gif{
8InBlock.gifif(i*j==k)
9ExpandedSubBlockStart.gifContractedSubBlock.gifdot.gif{
10InBlock.gifisSearch=true;
11InBlock.gifbreak;
12ExpandedSubBlockEnd.gif}

13ExpandedSubBlockEnd.gif}

14InBlock.gifif(isSearch==true)
15ExpandedSubBlockStart.gifContractedSubBlock.gifdot.gif{
16InBlock.gifbreak;
17ExpandedSubBlockEnd.gif}

18ExpandedSubBlockEnd.gif}

19InBlock.gifif(isSearch==true)
20ExpandedSubBlockStart.gifContractedSubBlock.gifdot.gif{
21InBlock.gifSystem.Console.WriteLine("{0}不是质数",k);
22ExpandedSubBlockEnd.gif}

23InBlock.gifelse
24ExpandedSubBlockStart.gifContractedSubBlock.gifdot.gif{
25InBlock.gifSystem.Console.WriteLine("{0}是质数",k);
26ExpandedSubBlockEnd.gif}

27ExpandedBlockEnd.gif}


内容概要:本文深入剖析了HTTPS中SSL/TLS握手的全流程,系统讲解了HTTPS的诞生背景及其相较于HTTP在安全性上的优势,重点阐述了SSL/TLS握手各阶段的技术细节,包括ClientHello、ServerHello、证书交换、密钥交换及加密通信建立等环节。文章结合加密基础概念(对称加密、非对称加密、哈希算法)和数字证书机制,解释了数据加密、身份验证与完整性保护的实现原理,并通过Wireshark抓包实例帮助读者直观理解握手过程中的数据交互。同时,归纳了常见握手失败问题及其解决方案,最后对SSL/TLS未来发展趋势进行了展望,涵盖抗量子加密算法和高效协议优化方向。; 适合人群:具备基本网络和安全知识的开发人员、运维工程师、网络安全爱好者,以及希望深入理解HTTPS底层机制的技术从业者;尤其适合1-3年经验、正在向中高级岗位发展的技术人员。; 使用场景及目标:①掌握HTTPS工作原理及SSL/TLS握手全过程,理解加密通信建立机制;②能够分析和排查HTTPS连接中的证书、加密套件、版本兼容等问题;③通过抓包实践提升对网络安全协议的实际分析能力;④为后续学习TLS 1.3、零RTT、前向保密等高级主题打下坚实基础; 阅读建议:此资源理论与实践结合紧密,建议在学习过程中同步使用Wireshark等工具进行抓包实验,对照文档中的握手阶段逐一验证各消息内容,加深对加密协商、证书验证和密钥生成过程的理解。同时关注最新TLS版本的发展趋势,拓展安全视野。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值