📜  CBSE 11 级 |编程方法的概念

📅  最后修改于: 2022-05-13 01:57:58.910000             🧑  作者: Mango

CBSE 11 级 |编程方法的概念

编程就是通过计算机化代码解决特定问题。无论是任何购物中心的库存管理问题、OMR 表的标记评估、远程汽车的运行,甚至是导弹的运行。因此,编程的范围从非常简单的任务到极其复杂的任务。但在所有代码的背后,都有一个参数是共同的,那就是高效地处理和解决问题。由于不能仅仅通过观看飞机的飞行来学习驾驶飞机,因此必须实际学习它。同样,要成为一名熟练的编码员,必须实际编写代码。而且,一旦学习了如何应用逻辑来解决问题,编码的任务就变得非常容易。

计算机编程包括编写、测试、故障排除、调试和维护计算机程序的基本实体。

  1. 写作涉及在纸上写下所需的代码输出。这可以通过绘制流程图来轻松完成,该流程图描述了从开始到结束所涉及的所有步骤。然后编写还涉及将课程的第一个副本实际写入相应的软件。然后必须测试编写的代码。
  2. 一旦测试,如果有一些错误,那么这些错误必须被删除。此过程称为故障排除。
  3. 确定代码中错误的确切位置是通过一个称为调试的过程来执行的。
  4. 成功完成所有这些步骤后,正在执行程序以获得所需的结果。这称为运行程序。

只有当一个程序给出对应于每个输入的正确输出(包括错误输入)时,它才被称为有效程序。撰写如此高效的文章的系统方法包括两个步骤:
a) 程序结构和 b) 程序表示。而前者采用自下而上或自上而下的方式实现,被称为“流行方式”;后者用于使代码更具可读性和可理解性。

什么是高效或好的程序?

一个好的程序可以产生更快和准确的结果,并且应该在计算机内存中占用更少的空间。这种对内存空间的约束通常被称为内存约束。世界上杰出的程序员已经商定了一份被认为对编程有益的习惯清单。

此列表包含:

  1. 表达式的清晰性和简单性:运算符、操作数和常量构成表达式。为确保表达式的清晰和简单,应牢记以下几点:
    • 使用库函数让程序更强大

      例如:

      Find Output = x4
      
      Output = x*x*x*x
      
      We can use output = power (x, 6)
      
    • 遵循简洁,保持表达的清晰

      例如:

      X = (A + B) / (A - B) - (U + VY) / (X + Y)

      我们可以将其简化并写为:

      X1 = (A + B) / (A - B)
      
      X2 = (U + VY) / (X + Y)
      
      X = X1 - X2
      
    • 避免使用用户难以理解的程序技巧。
  2. 标识符的专有名称的使用:用于命名事物的用户定义名称称为标识符。与任何函数、常量或变量相关联的名称用于引用该特定对象。只有字母 (AZ, az)下划线字符( _ )数字 (0-9)可以构成有效标识符。但是,数字不能用于任何标识符的名称开头。
    • 应为数据对象(变量)和函数使用有意义的名称。
      To find area of a rectangle
      
      Use the variable names as length and breadth
      
      Area = length * breadth
      
    • 应该选择有意义的常量名称。
      E = 2.71
      
      Use instead euler_constant = 2.71
      
    • 应避免使用类似的名称,如书籍、簿记员或图书馆、图书管理员。
    • 应避免使用 a、b、c 等单字母标识符。而是使用更相关的名称,如年龄、姓名、名字等
  3. 注释:为了增强程序的可读性,使用了注释。这些用于在程序的原始代码或源代码中嵌入程序员可读的注释。这些注释对程序员来说非常重要,但编译器和解释器却忽略了它们。应以简单的英语在程序中添加注释,说明在程序中使用特定函数的原因或指定在代码中使用任何特定数据对象或函数的原因。评论通常分为两类,即“块评论”和“行评论”。行注释是单行注释,而块注释通常是多行注释。表示块注释和行注释的符号在不同语言中是不同的。但是,块注释的符号也可以用于行注释。例如在Python中,块注释由“”和“””实现,而行注释由#实现。举个例子:
  4. 缩进:缩进被定义为在每个语句的开头引导空白(制表符和空格)的过程。它用于确定语句的组。举个例子:

    在此示例中,正在使用的“if”块是一种代码块。如果“if”条件为真,则执行块 1,否则(否则)执行块 2。虽然,单个块可以有多行,但很明显,适当的缩进使特定块的可见性更容易和更简单。

良好编程的特征

如果我们将芒果种子埋在地下会发生什么。多年后,那里会长出一棵芒果树。嗯,这是一个非常基本的东西。这个想法的概念是“输入决定输出”。这个概念甚至适用于编程。为了产生/提供正确和期望的输出,我们需要为计算机提供/提供正确和正确的指令集。一个好的程序的特点如下:

  • 灵活性:应该可以适应程序中的修改,而无需再次编写整个代码。该程序应该能够服务于多种用途。例如,CAD(计算机辅助设计)软件可以有效地服务于工程制图、工艺美术、织物设计、印刷电路布局和设计、建筑制图等各个领域。大多数软件都是针对特定时期开发的,需要更新使软件也适应新的用途。
  • 用户友好:用户友好的程序是那些初学者可以很容易理解的程序。用户和程序之间的交互应该易于理解。程序中的命令,如输入数据、打印结果等,必须很容易被天真的用户理解。
  • 可移植性:程序在不同操作系统上运行而无需任何或最少更改的能力称为程序或应用程序的可移植性。随着众多平台的兴起,其中嵌入了不同的操作系统,以及各种硬件和软件的可用性,如今每个应用程序开发人员都在关注可移植性。没有可移植性,一个程序对一个人来说非常有用平台变得过时了。用高级语言开发的程序通常比用汇编语言开发的程序更容易移植。
  • 可靠性:程序的可靠性是指其准确执行其预期函数以及某些修改的能力。程序处理错误输入或无输入异常的能力是定义可靠性的基本行为之一。虽然,程序预计不会在这些异常中产生正确的结果,但它应该能够提供错误消息。具备这种特性的程序称为可靠程序。
  • 自记录代码:自记录代码是源代码,其中使用了合适的标识符名称。标识符的正确名称使用户更容易理解特定变量或辅音(标识符)的功能。因此,建议每个好的程序都必须有一个自记录代码。

模块化编程方法

在实际世界中经常有很长的代码。编写这些代码是为了执行各种功能或任务。现在,一个高效的程序或代码是将冗长的代码分成不同的部分/模块。这种将长代码分成不同子代码的过程称为模块化编程方法。这些不同的模块通常被称为程序中的函数。

举个例子:

让下面的代码代表一个程序来评估学生在 10 年级考试中的百分比。

Input marks of first subject

Input marks of second subject

Input marks of third subject

Input marks of fourth subject

Input marks of fifth subject

Add marks of all subject

Multiply the total marks by 100

Divide the above result by 5

Output the result as percentage of the student.

现在,上面的程序是一个冗长的程序如何更难操作的简要说明。现在,根据模块化方法,上述程序如下所示:

Input marks

Get total marks

Evaluate percentage

Output result
Input Marks      # Module 1
{
  
       Input marks of first subject
  
       Input marks of second subject
  
       Input marks of third subject
  
       Input marks of fourth subject
  
       Input marks of fifth subject
  
}
  
  
Get total marks   # Module 2
{
      Add marks of all subject
}
  
  
Evaluate Percentage  # Module 3
{
  
       Multiply the total marks by 100
  
       Divide the above result by 5
}
  
  
Output result   # Module 4
{
     Output the result as percentage of the student.
}

这被称为模块化编程方法,应该遵循长程序。

文档和程序维护

在模块化编程方法中,我们看到不同的模块有助于以有效的方式处理程序。在代码比平时更长的务实世界中,同一程序的不同模块由组织的不同部门开发。因此,需要对这些模块进行适当的记录和维护,以便每个部门都可以有效地使用它们。此过程称为程序的文档编制和维护。

一份好的文件的准则如下:

  1. 文档应该从读者的角度来完成。
    • 它不应该是模棱两可的。
    • 应避免重复文件。
    • 在准备文件时,应遵循行业标准。
    • 应定期更新文件。
    • 应删除或更新过时的文档。
  2. 文档的优点
    • 有助于以模块化方式跟踪整个程序。
    • 更容易维护
    • 提高软件质量
    • 开发人员和其他人也可以理解代码。
    • 使用户培训更容易
    • 如果第一个开发人员在两者之间离开了工作,那么新开发人员可以很容易地熟悉正在进行的工作。
  3. 文件类型
    • 用户手册:它就像最终用户的“如何使用”指南。
    • 操作手册:它包含程序中使用的所有操作及其相互依赖关系。
    • 设计文档:它列出了程序的所有设计方面,并包含数据流、实体关系等图表。
    • 需求文档:它列出了有效运行软件的需求。
    • 技术文档:本文档中列出了程序代码、算法、功能模块等组件。
    • 已知错误列表文档:在此文档中列出了后来发现的错误或错误,因此无法从软件中删除。

错误及其类型

错误是由于程序的开发人员或用户执行的非法操作而在程序中发生的不希望的异常。错误在编程语言中也被称为“错误”。在程序编译或执行之前,它们不会被检测到。常见的类型或错误如下:

  • 语法错误:语法错误或编译时错误是在不遵循特定语言的正确书写规则时发生的错误。每种语言都有一组指令,在用该特定语言编写代码时必须遵循这些指令。这些错误称为语法错误。由于这些错误是在编译时由编译器检测到的,因此也称为编译时错误。

    例子:

    a = int(input('Enter a number: '))
    
    whille a%3 == 0:
        print('The number is divisible by 3.')
    else:
        print ('The number is not divisible by 3.')
    

    请注意,上面代码中的“while”关键字拼写不正确。这些类型的错误称为语法错误。

  • 运行时错误:这些是在程序执行时发生的错误,因此也称为执行时错误。这些错误会导致程序突然完成,或者程序也可能进入死循环。

    例子:

    a = int(input('Enter a number: '))
    b  = 0
    whille a%b == 0:
        print('The first number is a multiple of second number.')
    else:
        print ('The first number is not a multiple of second number.')
    

    请注意,第二个数字默认设置为零。现在一个数字除以零会导致无穷大,这是未知的。此类错误称为运行时错误。

  • 逻辑错误:这些错误顾名思义,是由于程序开发人员执行了不正确的逻辑而发生的。在编译或执行程序时不会检测到这些错误。

    例子:

    x = float(input('Enter a number: '))
    y = float(input('Enter a number: '))
    
    z = x + y / 2
    print ('The average of the two numbers you have entered is:', z)
    

    现在,根据期望的目标,上述程序预计会给出两个数字 x 和 y 的平均值。但它不会产生预期的结果。因为首先,y 除以 2,然后将结果添加到 x。因此存在不正确的逻辑。按照正确的逻辑,开发人员应该写:

    z = ( x + y ) / 2

    这些类型的错误称为逻辑错误语义错误