仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 705|回复: 11
打印 上一主题 下一主题

[学习教程] ASP.NET网站制作之C#中模运算符(%)在分歧的.NET版本为何会有分歧了局?仓酷云 ...

[复制链接]
跳转到指定楼层
楼主
发表于 2015-1-18 11:14:32 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
说句实话,net网页编程跨平台根本就不是外行人想想的那种,一次编译,处处运行。我对用户的输出做加密,以天生暗码字符串。可是个中一行代码在分歧的框架下给出了分歧的了局。这是含有效户按键的值的部分代码。
按键:1。变量ascii码是49。盘算后’e’和’n’的值:
1
2
3
4
e=103,
n=143,
Math.Pow(ascii,e)%n

上述代码的了局:


  • 在.NET3.5(C#)
1
Math.Pow(ascii,e)%n

值是9.0


  • 在.NET4(C#)
1
Math.Pow(ascii,e)%n

值是77.0
Math.Pow()在两个版本中给出了准确的(不异的)的了局。
这是甚么缘故原由酿成的,大概有办理举措吗?
最好回覆:
Math.Pow是针对双精度浮点型数值的;因而,你不该希冀凌驾了局第一个15-17位是正确无误的:
一切的浮点型数值也有一个无限的无效位数,这个位数也决意了浮点型值是怎样照实地靠近实在值。一个双精度值有多达15位的十进制精度,但外部撑持最多17位数。
可是,模运算必要一切的数位都是准确的。在你的程序中,你盘算了49103,这个了局由175位数构成,使得模运算在你的谜底中都没成心义。
为了盘算出准确的值,你应当利用高精度盘算,这由BigInteger类供应(.NET4.0引进)。
编纂修改:正以下面批评中MarkPeters指出的,你应当利用BigInteger.ModPow办法,它恰是用来处置这类运算的:
1
intval=(int)BigInteger.ModPow(49,103,143);//gives114

数据库有很多应用领域,但是如果你单单学数据库的话基本上做数据库管理员比较合适而已,跟领域结合的你还得再学习那些领域知识。(其实数据挖掘我真是不懂,本来这学期开了一门课了。
深爱那片海 该用户已被删除
沙发
发表于 2015-1-20 18:21:36 | 只看该作者
如今主流的Web服务器软件主要由IIS或Apache组成。IIS支持ASP且只能运行在Windows平台下,Apache支持PHP,CGI,JSP且可运行于多种平台,虽然Apache是世界使用排名第一的Web服务器平台。
不帅 该用户已被删除
板凳
发表于 2015-1-29 14:14:31 来自手机 | 只看该作者
Servlet的形式和前面讲的CGI差不多,它是HTML代码和后台程序分开的。它们的启动原理也差不多,都是服务器接到客户端的请求后,进行应答。不同的是,CGI对每个客户请求都打开一个进程(Process)。
再见西城 该用户已被删除
地板
发表于 2015-2-6 01:46:19 | 只看该作者
代码逻辑混乱,难于管理:由于ASP是脚本语言混合html编程,所以你很难看清代码的逻辑关系,并且随着程序的复杂性增加,使得代码的管理十分困难,甚至超出一个程序员所能达到的管理能力,从而造成出错或这样那样的问题。
若相依 该用户已被删除
5#
发表于 2015-2-6 09:25:38 | 只看该作者
但是目前在CGI中使用的最为广泛的是Perl语言。所以,狭义上所指的CGI程序一般都是指Perl程序,一般CGI程序的后缀都是.pl或者.cgi。
灵魂腐蚀 该用户已被删除
6#
发表于 2015-2-8 23:51:49 | 只看该作者
ASP.NET:ASP.net是Microsoft.net的一部分,作为战略产品,不仅仅是ActiveServerPage(ASP)的下一个版本;它还提供了一个统一的Web开发模型,其中包括开发人员生成企业级Web应用程序所需的各种服务。ASP.NET的语法在很大程度上与ASP兼容,同时它还提供一种新的编程模型和结构,可生成伸缩性和稳定性更好的应用程序,并提供更好的安全保护。
小妖女 该用户已被删除
7#
发表于 2015-2-26 14:03:38 | 只看该作者
PHP的源代码完全公开,在OpenSource意识抬头的今天,它更是这方面的中流砥柱。不断地有新的函数库加入,以及不停地更新,使得PHP无论在UNIX或是Win32的平台上都可以有更多新的功能。它提供丰富的函数,使得在程式设计方面有着更好的资源。目前PHP的最新版本为4.1.1,它可以在Win32以及UNIX/Linux等几乎所有的平台上良好工作。PHP在4.0版后使用了全新的Zend引擎,其在最佳化之后的效率,比较传统CGI或者ASP等技术有了更好的表现。
因胸联盟 该用户已被删除
8#
发表于 2015-3-7 01:10:54 | 只看该作者
市场决定一切,我个人从经历上觉得两者至少在很长时间内还是要共存下去,包括C和C++,至少从找工作就看得出来,总不可能大家都像所谓的时尚一样,追捧一门语言并应用它。
简单生活 该用户已被删除
9#
发表于 2015-3-8 01:34:17 | 只看该作者
Asp.net脚本的出现,为ASP空间带来了更高的稳定性,同时也为程序员建站提供更高环境!
第二个灵魂 该用户已被删除
10#
发表于 2015-3-10 21:29:13 | 只看该作者
当然我们在选择Asp.net主机是,除了要考虑服务提供商在版本是否是实时更新以外,机房的环境和配置也是非常重要的,通常选择骨干网的机房,在速度和稳定性上会非常有保证。
兰色精灵 该用户已被删除
11#
发表于 2015-3-17 10:11:42 | 只看该作者
ASP.Net摆脱了以前ASP使用脚本语言来编程的缺点,理论上可以使用任何编程语言包括C++,VB,JS等等,当然,最合适的编程语言还是MS为.NetFrmaework专门推出的C(读csharp)。
柔情似水 该用户已被删除
12#
发表于 2015-3-24 07:05:54 | 只看该作者
平台无关性是PHP的最大优点,但是在优点的背后,还是有一些小小的缺点的。如果在PHP中不使用ODBC,而用其自带的数据库函数(这样的效率要比使用ODBC高)来连接数据库的话,使用不同的数据库,PHP的函数名不能统一。这样,使得程序的移植变得有些麻烦。不过,作为目前应用最为广泛的一种后台语言,PHP的优点还是异常明显的。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-6-15 10:41

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表