2023-2024-1 20231402《计算机基础与程序设计》第十周学习总结
作业信息
这个作业属于哪个课程 | 2023-2024-1-计算机基础与程序设计 |
---|---|
这个作业要求在哪里 | 2023-2024-1计算机基础与程序设计第10周作业 |
这个作业的目标 | 自学计算机科学概论第12,13,14章 ,《C语言程序设计》第9章 |
作业正文 | https://www.cnblogs.com/lsh0815/p/17865519.html |
教材学习内容总结
《计算机科学概论》
- 12章主要介绍了电子数据表,数据库管理系统,13章则介绍了人工智能,讲了图灵测试,知识表示,专家系统,生物神经网路和人工神经网络,以及机器人学,14章介绍了模拟,模型和游戏。
《C语言程序设计》
- 这章主要讲了指针变量,按值调用和模拟按引用调用,函数指针及其应用。
教材学习中的问题和解决过程
-
问题1:为什么要尽量在公式中使用常量?
-
问题1解答:
在计算机编程中,尽量在公式中使用常量而不是硬编码的数字有一些重要的原因:- 可读性和可维护性: 使用常量可以增强代码的可读性。通过使用具有描述性名称的常量,代码更易于理解。硬编码的数字可能不够清
晰,并且在多次使用相同数值时,如果需要进行修改,可能需要在多个地方进行更改。使用常量可以使代码更容易维护,因为只需在一个地方进行修改即可。 - 易于调整: 如果在公式中使用硬编码的数字,当需要更改数值时,你必须找到每一个使用该数值的地方进行修改。而使用常量,你只需修改常量的定义,整个程序中使用该常量的地方都会得到更新。这降低了出错的可能性。
- 提高代码的灵活性: 使用常量可以提高代码的灵活性。如果将常量用作公式中的参数,可以轻松调整这些参数,而不必修改公式本身。这样的设计使得程序更容易适应不同的需求。
- 数值精度: 在一些科学计算或需要精确数值的情况下,使用常量可以确保数值的一致性。硬编码的数字可能会导致舍入误差或其他数值问题。
- 符号表达: 常量的使用可以增加代码中的符号表达,使得代码更易理解。例如,如果你在代码中看到PI代表圆周率,就比看到3.14159更容易理解。
- 代码重用: 使用常量可以促进代码的重用。如果某个数值在不同的地方多次使用,将其定义为常量可以方便地在其他地方重用,而不必复制粘贴相同的数字。
总的来说,使用常量可以提高代码的可读性、可维护性,降低出错的概率,增加代码的灵活性,促进符号表达,以及方便代码重用。这些因素都有助于编写更高质量的、易于理解和维护的代码。
- 可读性和可维护性: 使用常量可以增强代码的可读性。通过使用具有描述性名称的常量,代码更易于理解。硬编码的数字可能不够清
-
问题2:如何解决词法二义性和句法二义性给计算机带来的问题?
-
问题2解答:
词法二义性和句法二义性是自然语言处理中常见的问题,它们给计算机处理语言带来了挑战。以下是解决这些问题的一些方法:
词法二义性(Lexical Ambiguity):- 上下文分析: 利用上下文信息可以帮助解决词法二义性。通过考虑词语在句子中的位置以及与其他词语的关系,可以更准确地确定词语的含义。
- 词性标注: 使用词性标注可以帮助消除一些词法二义性。对于同一个词,根据其在句子中的词性,可以更好地确定其含义。
- 语法分析: 通过与句法分析结合,可以更全面地理解句子的结构,从而减少对词法的二义性。
句法二义性(Syntactic Ambiguity):
- 上下文分析: 类似于词法二义性,上下文分析在解决句法二义性时也是有效的。通过考虑整个句子的结构和语境,可以更好地理解句子的含义。
- 使用语法规则: 制定和使用明确的语法规则可以帮助解决句法二义性。定义更精确的语法规则可以减少模糊性。
- 概率模型: 使用概率模型(例如,隐马尔可夫模型、条件随机场)来处理句法结构可以考虑多个可能的解析,并为每种可能性分配一个概率。这样可以在多个可能性之间做出权衡。
- 语言模型: 使用语言模型可以帮助理解句子的合理性。如果一个解析在语言模型中更为自然,那么它可能更有可能是正确的。
- 语义分析: 考虑句子的语义结构,可以帮助排除一些句法二义性。语义分析可以提供关于句子含义的信息,有助于选择正确的语法结构。
在处理自然语言时,通常会综合运用这些方法,选择最适合特定应用场景的策略。这可能涉及到机器学习、深度学习和基于规则的方法的组合。解决词法和句法二义性是自然语言处理领域的一个重要挑战,需要不断的研究和改进。
-
问题3:微分方程的输入是怎样影响不同模型输出结果的好坏的?
-
问题3解答:
微分方程是描述变化和变动的数学工具,它在建模动态系统和自然现象时非常有用。微分方程的输入可以是系统的初始条件和外部驱动力,这些输入对于模型的输出结果有着重要的影响。
以下是微分方程输入如何影响不同模型输出结果的好坏的一些方面:- 初始条件: 微分方程的解依赖于初始条件。初始条件是指在时间 t=0 时系统的状态。不同的初始条件可能导致系统在时间的演化中产生不同的行为。因此,对于同一个微分方程,如果初始条件不同,模型的输出结果也会不同。
- 外部驱动力: 一些微分方程模型包括外部驱动力或输入项,这些项表示系统受到的外部影响。外部驱动力的幅度、频率和时间特性会直接影响系统的响应。对于某些系统,外部驱动力可能是决定系统行为的关键因素。
- 参数: 微分方程中的参数也对模型输出产生显著影响。调整参数的值可能会改变系统的动态特性。在某些情况下,参数可以表示系统的特性,如阻尼比、质量、弹性系数等。调整这些参数可以模拟不同条件下系统的响应。
- 系统复杂性: 输入如何影响输出还取决于微分方程模型的复杂性。一些系统可能对初始条件和外部驱动力非常敏感,而另一些可能对这些因素相对不敏感。在一些情况下,系统可能对某些输入变化非常稳定,而对其他输入变化则非常敏感。
- 数值求解方法: 对微分方程进行数值求解时,选择的数值方法也可能影响模型的输出结果。一些数值方法可能对某些类型的微分方程更有效,而对另一些可能不太适用。数值误差的累积也可能在模拟的长时间尺度内引入一些不确定性。
总体来说,微分方程模型对输入的敏感性取决于具体的方程形式和系统特性。通过仔细选择合适的初始条件、外部驱动力和参数值,以及合适的数值方法,可以更好地理解和预测微分方程模型的行为。
基于AI的学习
代码调试中的问题和解决过程
-
问题1:没标列数
-
问题1解决方案:在定义函数时标明二维数组的列数。
上周考试错题总结
- Which of the following describes a CPU scheduling algorithm in which each process is given a small amount of time to use the CPU before being forced to wait until its turn comes around again?
A. Shortest-job-next B. First-come, first-served
C. Time slice D. Round robin
E. Turnaround time
正确答案: D
你的作答: C - An operating system uses nonpreemptive CPU scheduling when a process moves from the waiting state to the ready state.
正确答案: 错误
你的作答: 正确 - A text file contains bytes of data that represent characters from a particular character set such as ASCII or Unicode.
正确答案: 正确
你的作答: 错误
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 | |
第一周 | 0/0 | 2/2 | 20/20 | |
第二周 | 100/100 | 2/4 | 40/40 | |
第三周 | 300/300 | 6/7 | 62/60 | |
第四周 | 500/500 | 8/9 | 80/80 | |
第五周 | 800/800 | 10/10 | 100/100 | |
第六周 | 1200/1200 | 11/11 | 120/120 | |
第七周 | 1500/1500 | 13/13 | 140/140 | |
第八周 | 2000/2000 | 14/14 | 160/160 | |
第九周 | 2500/2500 | 16/16 | 178/180 | |
第十周 | 3100/3000 | 17/18 | 200/200 |
-
计划学习时间:20小时
-
实际学习时间:22小时