程序或算法可以被形式化地证明是正确的吗,如果可以,应该如何证明拜托各位了 3Q

程序或算法可以被形式化地证明是正确的吗,如果可以,应该如何证明拜托各位了 3Q,第1张

提供一个简单的思路:

首先需要明确定义程序算法。一般来说程序是一组有限确定的命令集合;而算法是对于某类命令的解决方法(也就是程序)的抽象说明,可以认为它也是有限的。

其次可以通过归纳证明程序是正确的。程序是由有限确定的命令组成的,那么我们可以证明每个命令都是正确的,每个命令都是基于正确的输入的,所以它们的结果也是正确的。

至此可以证明程序或者算法是正确的。

值得说明的是:这里隐含了一个假设,即程序或算法是没有错误的,忽略人为的失误或错误。

本质上程序是一种给机器看的描述语言,机器按照它来执行,它本身没有对错,对错是人对于结果是否符合预期的一种判断。

错误

刚上完课,算法是可以无穷的,程序不能无穷。

比如算π的算法就是无穷的,人类算了这么久仍让没有算明白π是多少,对吧

程序不能无穷这个就不用多说了吧,都无穷了,这程序还有毛线用处,永远都没算完,永远也得不到你要的结果,这能叫程序吗?

那么有人问了,这个π不是无穷的算法,怎么用程序算的。

当然π也是一步一步算出来呗,算法虽然无穷,我们大概先知道了这个程序算多少位,大约是个什么复杂度,然后根据电脑的情况先算能算出来的部分,对吧!

不可能一下一直算,那再牛逼的超级计算机也永远算不完。

答案C

分析:用算法的定义逐一来分析判断各选项的正确与否.

解答:算法的特点:有穷性,确定性,顺序性与正确性,不唯一性,普遍性

算法可以用自然语言、图形语言,程序语言来表示,故A、B不对

同一问题可以用不同的算法来描述,但结果一定相同,故D不对.C对.

故应选C.

点评:考查算法的定义以及算法的表示形式,算法的特征,考查很详细.

打字不易,如满意,望采纳。

设计算法的原则:

1、正确性:算法的正确性是指算法至少应该具有输入、输出和加工处理无歧义性、能正确反映问题的需要、能够得到问题的正确答案。

2、可读性:设计算法的目的,一方面是为了让计算机执行,但还有一个重要的目的就是为了便于他人的阅读,让人理解和交流,自己将来也可阅读。如果可读性不好,时间长了自己都不知道写了什么,可读性是评判算法(也包括实现它的程序代码)好坏很重要的标志。

3、健壮性:当输入的数据非法时,算法应当恰当地做出反应或进行相应处理,而不是莫名其妙的输出结果。并且处理出错的方法不应是中断程序的执行,而应是返回一个表示错误或错误性质的值,以便于在更高的抽象层次上进行处理。

4、高效率与低存储量:通常,算法的效率指的是算法的执行时间;算法的存储量指的是算法执行过程中所需要的最大存储空间,两者的复杂度都与问题的规模有关。算法分析的任务是对设计的每一个具体的算法,利用数学工具,讨论其复杂度,探讨具体算法对问题的适应性。

扩展资料:

算法的“正确”通常在用法上有很大的差别,大体分为以下4个层次:

1、算法程序没有语法错误;

2、算法程序能够根据正确的输入的值得到满足要求的输出结果;

3、算法程序能够根据错误的输出的值满足规格说明的输出结果;

4、算法程序对于精心设计、极其刁难的测试数据都能满足要求的输出结果。

对于这4层含义,层次要求最低,因为仅仅没有语法错误实在谈不上是好的算法。而层次(4)是最困难的,人们几乎不可能逐一验证所有的输入都得到正确的结果。因此,算法的正确性在大部分情况下都不可能用程序来证明,而是用数学方法证明的。

算法本身的正确性用逻辑推理来证明,和数学定理类似

实现算法的程序的正确性则是两码事

简单的程序也用逻辑推理来证明,稍复杂的可以用某些专门验证程序正确性的程序来验证,再复杂的就没什么好办法了,事实上很多复杂的程序在比较极端的输入下或多或少都会有点问题

算法正确性证明包括两个方面:1证明关于输入与输出之关系的命题是正确的;2证明算法中的公式及计算方法是正确的。

1、检验算法是否正确可以将所编写算法写成代码带入程序中进行运行测验,随机选择多个数值分别进行测试,如果结果符合,则此算法基本无误。

2、请教前辈比如老师或者师兄师姐,请他们帮忙检验。

以上就是关于程序或算法可以被形式化地证明是正确的吗,如果可以,应该如何证明拜托各位了 3Q全部的内容,包括:程序或算法可以被形式化地证明是正确的吗,如果可以,应该如何证明拜托各位了 3Q、“算法和程序都不能是无穷的,否则会进入死循环” 判断是否正确、对算法描述正确的是( )等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9271976.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-26
下一篇 2023-04-26

发表评论

登录后才能评论

评论列表(0条)

保存