问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

算法和伪代码有什么区别啊

发布网友 发布时间:2022-04-24 23:25

我来回答

3个回答

热心网友 时间:2023-10-14 11:17

伪代码(Pseudocode)是一种算法描述语言。使用为代码的目的是为了使被描述的算法可以容易地以任何一种编程语言(Pascal, C, Java, etc)实现。因此,伪代码必须结构清晰,代码简单,可读性好,并且类似自然语言。

下面介绍一种类Pascal语言的伪代码的语法规则。

伪代码的语法规则
在伪代码中,每一条指令占一行(else if 例外,),指令后不跟任何符号(Pascal和C中语句要以分号结尾);
书写上的“缩进”表示程序中的分支程序结构。这种缩进风格也适用于if-then-else语句。用缩进取代传统Pascal中的begin和end语句来表示程序的块结构可以大大提高代码的清晰性;同一模块的语句有相同的缩进量,次一级模块的语句相对与其父级模块的语句缩进;
例如:

line 1
line 2
sub line 1
sub line 2
sub sub line 1
sub sub line 2
sub line 3
line 3
而在Pascal中这种关系用begin和end的嵌套来表示,

line 1
line 2
begin
sub line 1
sub line 2
begin
sub sub line 1
sub sub line 2
end;
sub line 3
end;
line 3在C中这种关系用{ 和 } 的嵌套来表示,

line 1
line 2
{
sub line 1
sub line 2
{
sub sub line 1
sub sub line 2
}
sub line 3
}
line 3
在伪代码中,通常用连续的数字或字母来标示同一即模块中的连续语句,有时也可省略标号。
例如:

1. line 1
2. line 2
a. sub line 1
b. sub line 2
1. sub sub line 1
2. sub sub line 2
c. sub line 3
3. line 3符号△后的内容表示注释;
在伪代码中,变量名和保留字不区分大小写,这一点和Pascal相同,与C或C++不同;
在伪代码中,变量不需声明,但变量局部于特定过程,不能不加显示的说明就使用全局变量;
赋值语句用符号←表示,x←exp表示将exp的值赋给x,其中x是一个变量,exp是一个与x同类型的变量或表达式(该表达式的结果与x同类型);多重赋值i←j←e是将表达式e的值赋给变量i和j,这种表示与j←e和i←e等价。
例如:

x←y
x←20*(y+1)
x←y←30
以上语句用Pascal分别表示为:

x := y;
x := 20*(y+1);
x := 30; y := 30;
以上语句用C分别表示为:

x = y;
x = 20*(y+1);
x = y = 30;
选择语句用if-then-else来表示,并且这种if-then-else可以嵌套,与Pascal中的if-then-else没有什么区别。
例如:

if (Condition1)
then [ Block 1 ]
else if (Condition2)
then [ Block 2 ]
else [ Block 3 ]
循环语句有三种:while循环、repeat-until循环和for循环,其语法均与Pascal类似,只是用缩进代替begin - end;
例如:

1. x ← 0
2. y ← 0
3. z ← 0
4. while x < N
1. do x ← x + 1
2. y ← x + y
3. for t ← 0 to 10
1. do z ← ( z + x * y ) / 100
2. repeat
1. y ← y + 1
2. z ← z - y
3. until z < 0
4. z ← x * y
5. y ← y / 2
上述语句用Pascal来描述是:

x := 0;
y := 0;
z := 0;
while x < N do
begin
x := x + 1;
y := x + y;
for t := 0 to 10 do
begin
z := ( z + x * y ) / 100;
repeat
y := y + 1;
z := z - y;
until z < 0;
end;
z := x * y;
end;
y := y / 2;
上述语句用C或C++来描述是:

x = y = z = 0;
while( z < N )
{
x ++;
y += x;
for( t = 0; t < 10; t++ )
{
z = ( z + x * y ) / 100;
do {
y ++;
z -= y;
} while( z >= 0 );
}
z = x * y;
}
y /= 2;
数组元素的存取有数组名后跟“[下标]”表示。例如A[j]指示数组A的第j个元素。符号“ …”用来指示数组中值的范围。
例如:

A[1…j]表示含元素A[1], A[2], … , A[j]的子数组;

复合数据用对象(Object)来表示,对象由属性(attribute)和域(field)构成。域的存取是由域名后接由方括号括住的对象名表示。
例如:

数组可被看作是一个对象,其属性有length,表示其中元素的个数,则length[A]就表示数组A中的元素的个数。在表示数组元素和对象属性时都要用方括号,一般来说从上下文可以看出其含义。

用于表示一个数组或对象的变量被看作是指向表示数组或对象的数据的一个指针。对于某个对象x的所有域f,赋值y←x就使f[y]=f[x],更进一步,若有f[x]←3,则不仅有f[x]=3,同时有f[y]=3,换言之,在赋值y←x后,x和y指向同一个对象。

有时,一个指针不指向任何对象,这时我们赋给他nil。

函数和过程语法与Pascal类似。
函数值利用 “return (函数返回值)” 语句来返回,调用方法与Pascal类似;过程用 “call 过程名”语句来调用;

例如:

1. x ← t + 10
2. y ← sin(x)
3. call CalValue(x,y)
参数用按值传递方式传给一个过程:被调用过程接受参数的一份副本,若他对某个参数赋值,则这种变化对发出调用的过程是不可见的。当传递一个对象时,只是拷贝指向该对象的指针,而不拷贝其各个域。

热心网友 时间:2023-10-14 11:18

当然有区别!
伪代码就是不能运行 但能非常完整地表示程序结构的代码

比如:
如果(我吃了苹果)则
 睡觉
上面是伪代码 而下面
if ( I->eat() )
Sleep();

则是真正的代码!

热心网友 时间:2023-10-14 11:18

没有区别
算法和伪代码有什么区别啊

伪代码(Pseudocode)是一种算法描述语言。使用为代码的目的是为了使被描述的算法可以容易地以任何一种编程语言(Pascal, C, Java, etc)实现。因此,伪代码必须结构清晰,代码简单,可读性好,并且类似自然语言。下面介绍一种类Pascal语言的伪代码的语法规则。伪代码的语法规则 在伪代码中,每一条指令占一行...

算法和伪代码有什么区别啊

伪代码就是说出你自己的思路,而不是真正能运行的代码。可能你平时用的是c语言吧,但是任何编程语言都可以表示一种算法,老师没有时间来检验你的程序是否可以执行,那样太麻烦了,他只是检查你的思路,因此就用伪代码,伪代码就相当于思路。人能看懂,机器看不懂!

算法和伪代码有什么区别啊

伪代码(Pseudocode)是一种算法描述语言。使用为代码的目的是为了使被描述的算法可以容易地以任何一种编程语言(Pascal, C, Java, etc)实现。因此,伪代码必须结构清晰,代码简单,可读性好,并且类似自然语言。 下面介绍一种类Pascal语言的伪代码的语法规则。 伪代码的语法规则 在伪代码中,每一条指令占...

什么是伪代码

伪代码是一种算法描述语言。伪代码的目的是使被描述的算法可以容易地以任何一种编程语言实现。所以伪代码应该结构清晰、代码简单、可读性好,并且类似自然语言。 以编程语言的书写形式指明算法职能。伪代码相比程序语言它更类似自然语言。它是半角式化、不标准的语言。可以将整个算法运行过程的结构用接近自然...

算法可以使用哪些描述方式,各有什么优势?

算法的描述方式有:自然语言,流程图,伪代码等。1、自然语言的优势:自然语言即人类语言,描述的算法通俗易懂,不用专门的训练,较为灵活。2、流程图的优势:流程图描述的算法清晰简洁,容易表达选择结构,不依赖于任何具体的计算机和计算机程序设计语言,从而有利于不同环境的程序设计。3、伪代码的优势:...

算法的表示方法有

2. 流程图:通过不同图形的框和指向的流程线来展现算法执行的路径。流程图因其直观性而被广泛应用于算法说明中。它包括起始框、决策框等元素,用以标识算法的起始点、结束点以及对条件的判定。3. 伪代码:这是一种既接近自然语言又兼容编程语言的表达方式,用于阐述算法的逻辑而不涉及具体编程语言的...

考研,数据结构,算法设计题要求是代码还是伪代码?如果是伪代码,各种语言...

比如如下算法【简单示例】输入3个数,打印输出其中最大的数。可用如下的伪... 考研,数据结构,算法设计题要求是代码还是伪代码?如果是伪代码,各种语言的伪代码形式一样吗?有没有要求?比如如下算法【简单示例】输入3个数,打印输出其中最大的数。可用如下的伪代码表示:Begin(算法开始)输入A,B,CIF A&gt;B 则 A→...

代码和伪代码什么区别

伪代码不能在计算机上实际执行,但是严谨的伪代码描述容易转换为相应的语言程序;而代码是可以实际执行的

算法的表示方法有哪些

2. 伪代码:伪代码是一种介于自然语言和编程语言之间的算法描述方式,有助于理解算法逻辑。3. 流程图:流程图使用图形符号来描述算法,易于理解和绘制。4. 结构化流程图:结构化流程图结合了流程图和数据流图的特点,可以清晰地表示出算法的结构和数据流。5. 状态图:对于复杂算法,特别是涉及到状态...

伪代码是什么意思

1.伪代码的定义和概念 伪代码(pseudo-code)是一种基于自然语言的、近似代码的描述方式,用以说明算法的步骤。伪代码是不存在于任何具体的编程环境之中,因此没有一定的语法规则,程序员根据需要自行定,以描述特定的算法。2.伪代码的特点 伪代码常用于计算机程序设计、算法设计以及与客户沟通等方面。伪...

算法伪代码 算法一定要用伪代码 用伪代码表示算法 伪代码可以描述算法吗 伪代码是什么 伪代码是什么意思 伪代码例题 快速排序伪代码 冒泡排序伪代码
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
高分求林志颖版绝代双骄中所有曲子,不是片头曲和片尾曲!!! 世界著名的美声音乐家 谁有林志颖版绝代双骄里面的全部配乐??知道名字也行... 丝瓜要多久才开花 新闻照怎样照才最有新闻价值 ...花木兰提名奥斯卡,不同风格的小仙女,《花木兰》有什么特色? 北师大江津附中教学质量怎样 里有什么四字成语 阅读材料,选择合适的方法把下列混合物按要求分离.材料一:如图:材料... 如果物体是易溶于水,但熔点50沸点75的话,跟水混合后,蒸馏水时会不会跟... 经济学专业就业前景好吗 经济学就业前景怎么样 女生学习经济学会不会很难? 经济学专业的就业前景 美国留学生经济学专业就业前景? 经济学就业前景怎么样?女生学习经济学会不会很难? 数字显示万用表,我想入门学习使用? 万用表各档位使用方法,学会以后,快速入门学电工,值得收藏 有完整的书籍读物吗(例:万用表入门的基础知识) 图解万用表使用技巧快速精通的内容简介 《鬼灭之刃》下弦实力有多让人看不起? 鬼灭之刃,无惨为什么会被称为“屑老板”? 万用表使用从入门到精通的图书目录 《鬼灭之刃》中,无惨为什么被称为人间之屑?他似乎没有做错什么? 《鬼灭之刃》鬼杀队九柱当中天才众多,为何只有岩柱才是公认的第一强者? 郑州海尔空调售后维修哪家最好?郑州海尔空调售后维修在哪里啊? 《鬼灭之刃》目前死了哪些柱哪些反派?其他的柱目前的情况如何? 最近QQ有张图片上是分辨您请没有看过鬼灭之刃的朋友指出以下哪位是女性? 《鬼灭之刃》无惨变好惨,后期为何会如此狼狈? 鬼灭之刃中鬼是一个什么样的生物? 你觉得《鬼灭之刃》里的鬼值不值得被原谅? c语言程序设计的算法用伪代码描述过程是怎样的 VB里描述算法的为什么叫伪代码而不是代码 遗传算法伪代码是什么 数据结构里的算法(或者说伪代码)和真正可以执行的代码有什么区别?怎么写这种伪代码?哪些该写哪些不该 算法一定要用伪代码表示吗 算法伪代码 执行循环次数的问题 算法一定要用伪代码吗 怎么用伪代码表示算法2 怎么用伪代码表示算法。 apriori算法的伪代码是什么意思?伪代码要出现在程序里面吗? 高一算法,伪代码运算 SPFA算法的伪代码 这道算法题的伪代码具体是什么意思? 编程 输出3个数中最大的数 写出算法伪代码 要具体过程, 求一道简单题目的算法伪代码 怎样更快速、便捷地统计某个新浪微博博主一年来的每条微博的转发量、评论数、点赞数? 如何统计某个人关于某个关键词发的所有微博的总转发数和总评论数 怎么查看自己的微博评论数? 怎么看新浪微博自己的评论数量 2021吉林专升本专业和学校有哪些?