本书介绍计算机专业用到的相关知识和常用的软件。本书共12章,第1~3章结合高中所学数学基础知识,详细讲解了与计算机专业密切相关的数制、排列组合、数论的相关内容;第4章介绍逻辑运算;第5~10章简单介绍计算机专业的编程基础语言:C语言、java语言和Python语言,介绍与专业相关的经典算法和排序方法;第11章介绍矩阵的基础知识,第12章介绍数据处理常用的MATLAB软件。本书各章节都有课后练习,可帮助读者巩固所用的内容。 本书突破常规数学课纯理论教学的方式、计算机编程课重在编程而容易忽略编程的思维方式,保证知识的系统性、计算机编程实现算法的有效性,突出数学知识与编程思维相结合的特点。本书结合专业课需要的数学知识,加强算法实现过程中需要的数学原理及其推导过程、编程思路的训练,为专业课的教学和学习做了良好的知识储备。教材通过设计科学的教学内容和教学顺序,通过手工计算、推导过程与计算机编程实现并行教学的方式,激发学生浓厚的学习兴趣,高效实施教学,是一本易教易学的教材。
本书突破常规数学课纯理论教学的方式、计算机编程课重在编程而容易忽略编程的思维方式,保证知识的系统性、计算机编程实现算法的有效性,突出数学知识与编程思维相结合的特点。本书结合专业课需要的数学知识,加强算法实现过程中需要的数学原理及其推导过程、编程思路的训练,为专业课的教学和学习做了良好的知识储备。教材通过设计科学的教学内容和教学顺序,通过手工计算、推导过程与计算机编程实现并行教学的方式,激发学生浓厚的学习兴趣,高效实施教学,是一本易教易学的教材。
前言 计算机数学是计算机专业的一门基础课程,它不仅为计算机专业课程的学习提供必要的数学知识和数学思想,也为计算机专业学生数学素质的养成提供必要的环境。 本教材是为计算机数学课程编写的,并且是根据计算机类专业课对数学知识和编程的要求而编写的,其教学内容符合高职学生的特点,满足高职计算机专业学生的就业特点和职业发展要求,也符合计算机类专业课的教学需求,目标是想更好地为后续的专业课服务。针对计算机专业人才培养目标,本书编写的指导思想是:内容设计与专业结合,教学设计和教学内容贴近学生,教学设计也利于教师教、学生学。它遵循以应用为目的,以必须、够用为度的原则,在内容取舍和编排上,注意与计算机专业的实际应用相结合,注重实践性教学环节的设计,特别是算法设计与编程实践上;注重数学基本概念与数学基本思想的讲解,特别注重学生利用计算机解决实际问题能力的培养。考虑到计算机数学应用的基础是算法,本书中以计算机专业用到的数制、数论、算法和排序方法为主线,注意在内容上根据专业的需求对数学知识进行取舍,对算法实现的思路、原理作了详细的说明,借以突出数学思想的计算机应用效果,使得数学与计算机应用能密切地结合。本书通过数制、排列与组合、数论、逻辑、矩阵等教学内容训练学生的数学思维,以C语言、Java语言或Python语言的编程基础、递归、经典算法和排序方法来训练学生的编程思维,从中积累专业课需要用到的数学知识,加强在算法实现过程中的数学原理及其推导过程、编程思路等方面的训练。 本书突破常规数学课纯理论教学的方式、计算机编程课重在编程而容易忽略编程的思维方式,保证知识的系统性、计算机编程实现算法的有效性,突出数学知识与编程思维相结合的特点。传统的数学学科教学注重学科知识的系统性和理论推导,学生缺乏对数学应用价值的理解,难以体现相关数学知识的闪光点和数学知识的应用效果。本书结合专业课需要的数学知识,加强算法实现过程中需要的数学原理及其推导过程、编程思路的训练,为专业课的教学和学习做了良好的知识储备。本书通过设计科学的教学内容和教学顺序,通过手工计算、推导过程与计算机编程实现并行教学的方式,激发学生浓厚的学习兴趣,高效实施教学,是一本易教易学的教材。 本书适用于高等职业教育中的软件技术、计算机网络技术、人工智能、计算机应用技术和大数据等计算机类专业的计算机数学课程教材,也可用于应用数学、计算机爱好者自学的参考书,建议学时80学时。 本书在编写过程中得到有关数学教师和计算机专业教师的大力支持,同时采纳他们提出的宝贵意见,在此向他们表示衷心的感谢。 编者
冯超玲,女,副教授,广西职业技术学院专任教师,主要讲授计算机数学、数学建模、运筹学、数据清洗与分析、程序设计基础等课程。指导大学生参加全国大学生数学建模竞赛,获全国一等3次,全国二等2次,赛区一、二、三等奖14次。广西大学基础数学专业研究生班毕业。发表论文15篇:中文核心2篇、广西核心2篇,一般论文11篇,正式出版教材3本,校本教材1本。主持、参与完成区级教改课题3项,主持完成院级教改课题3项,参与完成院级课题2项。
第1章 数制
1.1 数制
1.2 数制间的转换
1.3 用编程方法实现数制间的转换
第2章 排列与组合
2.1 引例
2.2 加法法则
2.3 乘法法则
2.4 置换和阶乘
2.5 排列
2.6 组合
2.7 关于排列、组合的编程问题
第3章 数论
3.1 整除
3.2 公约数与小公倍数
3.3 辗转相除法和同余
第4章 逻辑
4.1 命题及其相关问题
4.2 复杂命题及真值表
第5章 C语言简介
5.1 C语言基础知识
5.2 C语言的基本结构
5.3 C语言中的函数
第6章 Java语言简介
6.1 Java语言的基础知识
6.2 Java语言的基本结构
6.3 Java语言中的函数
第7章 Python语言简介
7.1 Python语言的基本语法
7.2 标识符和关键字
7.3变量和数据类型
7.4 基本数据类型
7.5 运算符及优先级
7.6控制结构
第8章 递归
第9章 经典算法
9.1 判断算法
9.2 穷举算法
9.3 递推算法
9.4 递归算法
第10章 排序方法
10.1 冒泡排序法
10.2 选择排序法
10.3 插入排序法
第11章 矩阵
11.1 矩阵的概念
11.2 矩阵的运算
11.3 矩阵的初等变换和逆矩阵
11.4 矩阵的秩
第12章 MATLAB软件简介
12.1 MATLAB的特点
12.2 MATLAB的基础知识
12.3 MATLAB的运算符
12.4 数学函数
12.5矩阵的相关操作
12.6 解线性方程组
12.7画图
12.8流程控制和M文件
12.9曲线拟合的小二乘法