请问算法和编程的区别,最好能举例

2020-11-23 10:53:19 字数 5587 阅读 7821

1楼:沙里波特

解决一个问题,有不同的解决方法。

这就是算法。

比如:1 + 2 + 。。。100 = 5050。

显然,有不同的算法。

编程,是跟着算法来的。

当然,同样的算法,也能写出不同的程序结构。

这就是经验的问题了。

2楼:路之舞者

算法不就是编程的一部分吗? 你编写1+..100 程序,可以从1加到100,也可以1加100后再乘以50快速计算,或者还有别的方法,算法就是你解决问题的方法啊!这个理解不了吗?

编程就是用程序语言(语法)来把解决问题的方法表达出来!如果还不能理解,你就自己去学一门语言,实际体验下什么是编程,慢慢对比一下就能理解了。

如果还理解不了,干脆就别挣扎了,连上帝都救不了你,我说的。

算法与程序的区别与联系

3楼:旅者一生

算法和程序的区别是:

(1) 两者定义不同。算法是对特定问题求解步骤的描述,它是有限序列指令。而程序是实现预期目的而进行操作的一系列语句和指令。

说通俗一些算法是解决一个问题的思路,程序,是解决这些问题所具体好写的**。算法没有语言界限。他只是一个思路。为实现相同的一个算法,用不同语言编写的程序会不一样。

(2)两者的书写规定不同。程序必须用规定的程序设计语言来写,而算法很随意。算法是一系列解决问题的清晰指令,也就是说,能够对一定规范的输入,在有限时间内获得所要求的输出。

算法常常含有重复的步骤和一些逻辑判断。

简单算法举例 例:求 1*2*3*4*5

步骤 1 :先求 1*2 ,得到结果 2 。

步骤 2 :将步骤 1 得到的乘积 2 再乘以 3 ,得到结果 6 。

步骤 3 :将步骤 2 得到的乘积 6 再乘以 4 ,得到结果 24 。

步骤 4 :将步骤 3 得到的乘积 24 再乘以 5 ,得到最后结果 120 。

算法与程序的联系 :

算法和程序都是指令的有限序列 ,但是程序是算法,而算法不一定是 程序。程序 = 数据结构 + 算法。算法的主要目的在于为人们提供阅读了解所执行的工作流程与步骤。

数据结构与算法要通过程序的实现,才能由计算机系统来执行。可以这样理解,数据结构和算法形成了可执行的程序。

扩展资料

算法的要素:

一、数据对象的运算和操作:计算机可以执行的基本操作是以指令的形式描述的。一个计算机系统能执行的所有指令的集合,成为该计算机系统的指令系统。一个计算机的基本运算和操作有如下四类:

1、算术运算:加减乘除等运算。

2、逻辑运算:或、且、非等运算。

3、关系运算:大于、小于、等于、不等于等运算。

4、数据传输:输入、输出、赋值等运算。

二、算法的控制结构:一个算法的功能结构不仅取决于所选用的操作,而且还与各操作之间的执行顺序有关。

4楼:独爱蓝天谁人同

算法和程序的区别是:

(1) 两者定义不同。算法是指解题方****而完整的描述,是一系列解决问题的清晰指令,算法代表着用系统的方法描述解决问题的策略机制。计算机程序,港、台译做电脑程式。

计算机程序是一组计算机能识别和执行的指令,运行于电子计算机上,满足人们某种需求的信息化工具。

(2)两者的书写规定不同。程序以某些程序设计语言编写,运行于某种目标结构体系上,程序是一个指令序列,而算法很随意。算法中的指令描述的是一个计算,当其运行时能从一个初始状态和(可能为空的)初始输入开始,经过一系列有限而清晰定义的状态,最终产生输出并停止于一个终态。

随机化算法在内的一些算法,包含了一些随机输入。算法常常含有重复的步骤和一些逻辑判断。

算法和程序的联系是:

程序包含算法,算法就是程序的灵魂,一个需要实现特定功能的程序,实现它的算法可以有很多种,所以算法的优劣决定着程序的好坏。一个算法的质量优劣将影响到算法乃至程序的效率。

扩展资料:

算法的要素:

一、数据对象的运算和操作:计算机可以执行的基本操作是以指令的形式描述的。一个计算机系统能执行的所有指令的集合,成为该计算机系统的指令系统。一个计算机的基本运算和操作有如下四类:

1、算术运算:加减乘除等运算。

2、逻辑运算:或、且、非等运算。

3、关系运算:大于、小于、等于、不等于等运算。

4、数据传输:输入、输出、赋值等运算。

二、算法的控制结构:一个算法的功能结构不仅取决于所选用的操作,而且还与各操作之间的执行顺序有关。

5楼:逗比逗无悔

联系:算法是解决问题的步骤;程序是算法的**实现算法要依靠程序来完成功能;程序需要算法作为灵魂

程序是结果,算法是手段(为编写出好程序所使用的运算方法)。同样编写一个功能的程序,使用不同的算法可以让程序的体积、效率差很多。所以算法是编程的精华所在。

算法是程序设计的核心,算法的好坏很大程度上决定了一个程序的效率。一个好的算法可以降低程序运行的时间复杂度和空间复杂度。先选出一个好的算法,再配合以一种适宜的数据结构,这样程序的效率会大大提高。

算法和程序都是指令的有限序列 ,但是:程序是算法,而算法不一定是 程序。

区别:(1) 在语言描述上,程序必须是用规定的程序设计语言来写,而算法很随意;

(2) 在执行时间上,算法所描述的步骤一定是有限的,而程序可以无限地执行下去。算法是对特定问题求解步骤的描述,它是指令的有限序列。

扩展资料

一个算法应该具有以下五个重要的特征:

1、有穷性(finiteness),算法的有穷性是指算法必须能在执行有限个步骤之后终止;

2、确切性(definiteness),算法的每一步骤必须有确切的定义;

3、输入项(input),一个算法有0个或多个输入,以刻画运算对象的初始情况,所谓0个输入是指算法本身定出了初始条件;

4、输出项(output),一个算法有一个或多个输出,以反映对输入数据加工后的结果。没有输出的算法是毫无意义的;

5、可行性(effectiveness),算法中执行的任何计算步骤都是可以被分解为基本的可执行的操作步,即每个计算步都可以在有限时间内完成(也称之为有效性)。

6楼:门下走狗金牛

一,区别:

1,在语言描述上,程序必须是用规定的程序设计语言来写,而算法很随意;

2,在执行时间上,算法所描述的步骤一定是有限的,而程序可以无限地执行下去。

二,联系:

算法+数据结构=应用程序。

算法是程序设计的核心,算法的好坏很大程度上决定了一个程序的效率。一个好的算法可以降低程序运行的时间复杂度和空间复杂度。先选出一个好的算法,再配合以一种适宜的数据结构,这样程序的效率会大大提高。

扩展资料:

程序算法特性

1,有穷性

在有限的操作步骤内完成。有穷性是算法的重要特性,任何一个问题的解决不论其采取什么样的算法,其终归是要把问题解决好。如果一种算法的执行时间是无限的,或在期望的时间内没有完成,那么这种算法就是无用和徒劳的,我们不能称其为算法。

2,确定性

每个步骤确定,步骤的结果确定。算法中的每一个步骤其目的应该是明确的,对问题的解决是有贡献的。如果采取了一系列步骤而问题没有得到彻底的解决,也就达不到目的,则该步骤是无意义的。

3,可行性

每个步骤有效执行,得到确定的结果。每一个具体步骤在通过计算机实现时应能够使计算机完成,如果这一步骤在计算机上无法实现,也就达不到预期的目的,那么这一步骤是不完善的和不正确的,是不可行的。

4,零个或多个输入

从外界获得信息。算法的过程可以无数据输入,也可以有多种类型的多个数据输入,需根据具体的问题加以分析。

5,一个或多个输出

算法得到的结果就是算法的输出(不一定就是打印输出)。算法的目的是为解决一个具体问题,一旦问题得以解决,就说明采取的算法是正确的,而结果的输出正是验证这一目的的最好方式。

7楼:米粒教育

主要讨论程序与算法,**程序与算法之间的关系,通过案例揭示从提出问题、给出解决问题的算法以及实现程序的过程

8楼:匿名用户

算法与程序:

(1).一个程序不一定满足有穷性。例操作系统,只要整个系统不遭破坏,它将永远不会停止,即使没有作业需要处理,它仍处于动态等待中。因此,操作系统不是一个算法。

(2).程序中的指令必须是机器可执行的,而算法中的指令则无此限制。

(3).算法代表了对问题的解,而程序则是算法在计算机上的特定的实现。一个算法若用程序设计语言来描述,则它就是一个程序.

9楼:安徽新华电脑专修学院

算法只是程序中可以处理的其中一件事.

10楼:匿名用户

用c 语言或pascal语言等高级语言来描述也不能算是程序,有的也用这些不十分严格的编写来完成算法,程序是要能运行,各种初始化工作都要做的,而算法不管那么多.比如做程序里面含有这个类或者结构,一旦某个地方描述过了,以后的算法中就当已经声明了. 很多教材里就是这样做的..

11楼:

算法就是"计算方法"

而编程就是用一种语言来完成这个"计算方法".

12楼:自在天生

算法代表了对问题的解,而程序则是算法在计算机上的特定的实现。一个算法若用程序设计语言来描述,则它就是一个程序-----经典!

硬件,软件,算法,编程的区别?

13楼:乱乱唱出

通俗来讲,软件是程序员对计算机系统编写的程序,是计算机系统的上层。硬件,是复杂的电路系统,是计算机系统的底层。软件工程师工作与编程有关,硬件工程师工作与电路设计、编码等有关。

历史上计算机的雏形早于软件几个世纪就出现了。

而电子计算机的问世离不开苏格兰数学家布尔和现代信息学之父美国人香农。布尔以其超凡的智慧发明了他的布尔代数或者说布尔逻辑,使代数脱离了数字的概念而变得更加抽象,布尔代数中操作数不是数字,而是集(类),一个类仅仅代表一组事物,也就是后来熟知的集合。古希腊人认为,逻辑是追寻真理的过程中用于分析语言的一种手段,因此它被认为是一种哲学。

所以布尔不仅使用数学的方法使逻辑从哲学中脱离出来,还为电子计算机的问世奠定了基础。 只可惜,在19世纪没有人把布尔代数中的与、或和电路中的串联、并联开关联系起来,没有人能意识到布尔代数可以直接由电路实现。直到20世纪30年代才被发现,主要贡献人是现代信息学之父香农,香农在他著名的于1938年在麻省理工所写的硕士**《a symbolic analysis of relay and switching circuits》中阐述了这个问题。

现代电子计算机所完成的加法运算减法运算等都是用逻辑器件所组成的电路完成的。计算机是运用二进制数进行工作,二进制数0和1在逻辑器件中的代表断路和通路。

软件的本质是对计算机系统(硬件)的编程,软件一般都用高级语言进行编程,程序员编写的程序由ide编译、链接后用电烧录到计算机系统的程序寄存器中,不过存放在程序寄存器中的是机器码,一大堆01010111**。我这里拿单片机(微控制器)的工作原理举例来说明之后是怎么工作的。单片机执行指令时,首先从程序存储器中读指令,送指令寄存器保存,后送指令译码器译码,译码结果送定时控制逻辑电路,由定时器控制逻辑产生各种定时信号和控制信号,再送到单片机的各个部件去进行相应操作。

执行程序就是不断重复这一过程。

总之,我觉得计算机还是挺复杂的。

陌生和生疏的区别?请举例,1、陌生和生疏的区别?请举例!

1楼 minos沺 对不认识或者没见过的人或事物一般用陌生,比如你去到一个不曾去过的地方,这 里的一切对你来说都是陌生的 生疏表示某种技术不熟练或者与某人关系不是很要好,但是以前都接触过,比如有个有个亲戚,以前在一起玩的,后来他去了外地,过很长时间回来了,但是你发现现在在一起没话说了,这就是生疏了。...

能愿动词"会"和"能"的区别是什么

1楼 匿名用户 语气的轻重不同 能 can 语气要重 会 could 语气要轻一些 2楼 匿名用户 我能 。 这里的能就是动词,意思是有 的能力。 汉语语法中,表示 可能 的表示,有 能 会 。。得。。 。。。得了 他们有什么区别? 3楼 匿名用户 我感觉, 例1中的 能 表示推测 例2中 会 表示...

请问一下成就感和成就心态的区别最好可以举个例子谢谢

1楼 百度用户 这有位姑娘,是你的理想伴侣,你要追求她,你还没成功,你就想了,你要是能把她追到手,那该多有成就感哦。。。。。。没追到手之前的心态就是成就心态 追到手了之后的感想或者感觉就是成就感。。。。都在一个出发点上。 嘿嘿嘿嘿 成就心态是什么样的心态能举个例子吗 2楼 就是有一定的成绩 在事业上...