- 博客(30)
- 收藏
- 关注
原创 用数组(列表)模拟Josephus问题
Josephus及他的朋友共41人围成一个圆圈,由第1个人开始报数,每数到3该人就必须出去,然后再由下一个人重新报数,直到圆圈上少于3人为止。Josephus 将朋友与自己安排在第16个与第31个位置,成为最后剩下的人。
2024-04-03 16:32:01 212
原创 鸡兔同笼套餐
张三面前有A、B两个笼子,每只笼子中混装着一些鸡和兔:A笼中鸡兔的比例是3:1;B笼中鸡兔的比例是1:2。销售时有两种组合套餐方案,3只鸡搭配1只兔或1只鸡搭配2只兔。请编一个程序,用户在同一行内输入两个整数,代表两个笼中全部鸡和兔的头和脚的数量,编程计算两笼中各有多少只鸡和兔以及两笼中共有多少鸡和兔。
2024-03-21 21:25:26 728
原创 韦达定理用处多
韦达定理说明了一元n次方程中根和系数之间的关系。法国数学家韦达(F. Vieta,1540—1603)最早发现代数方程的根与系数之间有这种关系,因此,人们把这个关系称为韦达定理。有趣的是,韦达在16世纪就得出这个定理,证明这个定理要依靠代数基本定理,而代数基本定理却是在1799年才由高斯作出第一个实质性的论证。韦达定理在方程论中有着广泛的应用。
2024-02-01 11:21:27 4257
原创 turtle使用初步(一)
几百年前,有个西方人听一个印度教徒说地球处在一只乌龟的背上。被问到这只乌龟站在什么东西上时,印度教徒解释说:“一直往下,全是乌龟。Python官网上说turtle module is“An educational framework for simple graphics applications."
2024-01-23 20:58:17 420
原创 cin.get()与cin.getline()的使用练习一题——平均绩点
通过本练习进一步熟悉cin.get()与cin.getline()两种输入方式的各自的特点及其区别。
2024-01-23 17:04:04 376
原创 【用积分求抛物线与直线围成的面积】
A land is enclosed by a parabola and a straight line. The picture below shows the area. Now given all the intersectant points shows in the picture, can you tell Ignatius the area of the land? The point P1 in the picture is the vertex of the parabola.
2024-01-23 13:13:02 1052
原创 第17课 文件操作
文件是指存储在某种长期存储设备(如硬盘、U盘、移动硬盘、光盘等)上的一段数据。这些数据可以以二进制或文本的形式存在,并且被组织成一种特定的结构,以便于程序能够读取和写入。文件的主要作用是长期保存数据,并在需要时提供对这些数据的访问。C++把每一个文件看作一个有序的字节流,每个文件都以文件结束标识结束。如果要操作某个文件,程序必须首先打开改文件。当一个文件被打开后,该文件就和一个流关联起来,这里的流实际上是一个字节序列。C++将文件分为文本(字符)文件和二进制文件。
2024-01-06 21:51:17 1150
原创 第16课 字符数组与字符串
本课主要介绍了以下内容。字符数组的定义与初始化和赋值;字符串类型变量的定义;字符串类型变量的输入和输出;字符串类型变量的操作函数。字符数组中也可以存放字符串。字符数组和字符串的区别就在于是否存在字符串结束标识——‘\0’。
2024-01-05 11:23:37 1113
原创 第15课 数组举例
本课介绍的主要内容如下。兔子繁殖的问题、排序的问题、求最值的问题、铺地毯的问题。课外练习中涉及的有插入排序问题、两路归并排序问题、塔形方阵问题等。
2024-01-02 16:37:26 1192
原创 第14课 多维数组
本课主要介绍如下内容:二维数组的定义,二维数组的初始化,二维数组的使用举例。二维数组在使用中也是按元素逐个使用,使用时要给出行、列两个下标。当然,我们也可以以访问一维数组的方式来访问二维数组。
2024-01-01 13:19:49 1090
原创 第13课 一维数组
C++是一种面向对象编程语言,其中数组是其中一种重要的数据结构。数组是一个数据对象集合,其中每个元素都具有相同的数据类型,并且可以根据其所在的位置(即索引)进行查询和引用。有一个整数数组,数组元素由n个,用键盘输入,试着将数组的第一个元素移到数组末尾,其余的数组元素依次前移一个位置后顺序输出。C++数组中的数据,在内存中是连续存放的,每个元素占据相同大小的空间,就像排好队一样,理解这点非常重要。
2024-01-01 11:56:13 1077
原创 第12课 循环综合举例
本课使用循环结构,介绍了以下问题的解决方法。质数判断问题、百人百砖问题、猴子吃桃问题、质因数分解问题、数字统计问题。借助于在循环体中适当地使用break语句和continue语句,for循环、while循环和do-while循环其实是可以相互替换的。
2023-12-31 13:11:23 1232
原创 第11课 while循环与do-while循环
本课主要介绍了如下内容:while循环语法和举例;do-while循环语法和举例;break和continue语句再循环结构中的作用;涉及的新的关键字:while, do, break, continue略。
2023-12-29 17:47:42 1064 1
原创 第10课 for循环举例
学习了for循环,本次课再通过实例编程练习,巩固学过的知识。本课主要介绍了如下问题的解决方法。平均成绩问题、水仙花数问题、用字符打印等腰三角形图形问题、幂的末尾三个数字问题、救援问题等。
2023-12-29 15:51:36 1293 1
原创 第9课 for循环
循环结构用于在程序中控制某些指令重复执行,是计算机程序中使用最多的一种控制结构,可以解决实际应用中需要重复处理的问题。譬如要统计全班同学某一课程某次考试成绩的平均分,局需要先把每个同学该课程的考试分数累加起来,这就需要用到循环结构。使用循环控制结构可以解决一些按一定规则重复执行的问题而无须重复书写代码,这是程序设计中最能发挥计算机特长的程序结构之一。本课内容对for循环控制结构通过一些案例进行了介绍,读者在学习的时候要与枚举算法,即穷举算法结合起来思考问题并解决问题。
2023-12-29 08:43:37 1018 1
原创 第8课 选择结构程序举例
学过了选择结构,有必要认真做几道题,巩固学过的知识。本课内容中,有些程序代码没有完成或没有给出,读者可以自己动手试着完成之。
2023-12-28 18:00:38 912 1
原创 第7课 选择结构
本课主要介绍如下内容。(1)选择结构的概念(2)if-else语句及其应用(3)switch-case语句及其应用本课用到的关键字包括if、else、switch、case、break、default。
2023-12-27 14:55:28 834 1
原创 第5课 三种程序结构
顺序结构是指计算机总是按语句顺序"自顶向下"一条一条地执行。选择结构又称为分支结构。通常是根据一个条件的"真"或者"假"选择程序中一部分语句(一个分支)执行。循环结构是指当某个条件为真时,反复执行某块语句的一种结构。这是计算机中使用最多的一种控制结构,用于解决实际应用中需要重复处理的问题。本节主要介绍顺序结构,其余两种结构会在后续章节中介绍。
2023-12-26 22:41:44 836 1
原创 第19课 函数
函数是完成某种功能的程序段,是程序模块化的体现。对于一个复杂的问题,可以将其分解成若干个子问题来解决,如果子问题依然很复杂,还可以将它继续分解。直到每个子问题都是一个具有独立任务的模块。以这种方式编写的程序结构清晰,逻辑关系明确,会给编写、阅读、调试以及修改带来很多好处。一个程序可以有许多函数,包括主函数和非主函数,主函数只能有一个,非主函数可以有多个。主函数自动执行,非主函数只有被调用时才会执行。
2023-12-26 10:51:51 1274 1
原创 第22课 类和对象
程序如何实现模块化?我们已经学过函数和结构体,它们一个是算法的模块化,一个是数据的模块化,二者能否结合呢?自然是可以的,类就是一种这样的自定义类型,它里面既可以有数据又可以又函数。
2023-12-25 21:42:44 555
原创 第21课 结构体
结构体是一个由程序员定义的数据类型,可以容纳许多不同的数据值。在过去,面向对象编程的应用尚未普及之前,程序员通常使用这些从逻辑上连接在一起的数据组合到一个单元中。一旦结构体类型被声明并且其数据成员被标识,即可创建该类型的多个变量,就像可以为同一个类创建多个对象一样。
2023-12-24 19:17:34 892
原创 第20课 函数举例
本课内容开启函数历练之旅。主要介绍了以下内容。进制转换、计算组合数、机器翻译、维吉尼亚密码、聪明的克鲁。函数是C/C++语言组织代码的重要的形式,在类中,类中的函数就成为了类的成员方法。在编写自定义函数时,考虑编写的函数的通用性是函数本身特性的内在要求。
2023-12-22 17:12:54 783
原创 第4课 赋值运算和算术运算
一个程序主题(主函数内)通常包含四部分:定义数据、输入变量、计算处理、输出结果。从现在开始,我们将逐一介绍计算处理方法。C++语言中有很多运算符和表达式,本课值涉及到C++语言中最基本的赋值运算和算术运算。
2023-12-22 09:45:31 782
原创 定义矩阵相乘和转置的通用函数
如果矩阵列数不固定,则不适宜用矩阵作为函数参数,这时可以使用指针(即一维数组)和行列数作为函数参数来定义通用的矩阵相乘和转置的函数。
2023-12-21 16:11:11 471
原创 第2课 程序格式与数据定义
在limits.h中定义的宏中,与long long int整型相关的一共有3个:LLONG_MIN、LLONG_MAX和ULLONG_MAX,它们分别代表了。平台上最小的long long int值、最大的long long int值,以及最大的unsigned long long int值。可见,对于整数数据类型,int和long都是32位的(4个字节),只有long long 才是64位(8个字节)。
2023-12-20 21:29:20 835
原创 简单枚举算法
枚举算法是我们在日常中使用到的最多的一个算法,它的核心思想就是:枚举所有的可能。枚举法的本质就是从所有候选答案中去搜索正确的解,使用该算法需要满足两个条件:(1)可预先确定候选答案的数量;(2)候选答案的范围在求解之前必须有一个确定的集合。枚举算法简单粗暴,他暴力的枚举所有可能,尽可能地尝试所有的方法。虽然枚举算法非常暴力,而且速度可能很慢,但确实我们最应该优先考虑的!因为枚举法变成实现最简单,并且得到的结果总是正确的。本文收集可以采用枚举算法的一些题例,以供查阅、学习之用。
2023-12-20 16:40:21 1913
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人