这个作业属于哪个课程 | 计科2班 |
---|---|
这个作业要求在哪里 | 作业要求 |
这个作业的目标 | <掌握各种类型函数的定义、调用和申明,熟悉变量的作用域、生存周期和存储类型> |
学号 | <20208982> |
1.PTA实验作业(20分/题)
请再此处列出自己的排名图片,
1.1 统计各位数字之和是5的数
本题要求实现两个函数:一个函数判断给定正整数的各位数字之和是否等于5;另一个函数统计给定区间内有多少个满足上述要求的整数,并计算这些整数的和。
1.1.1数据处理
数据表达:用了a,s,count,sum这些变量,通过定义赋值而来,这些变量都属于整数型
数据处理:用了for循环和if-else语句
while(number>0)
a=number%10;
number=number/10;
s=s+a;
if(s==5)
for(int i=a;i<=b;i++)
if(is(i))
1.1.2实验代码截图
1.1.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
104 999 | ![]() |
在104到999之间有15个满足条件,它们的和为3720 |
666 888 | count = 0, sum = 0 | 在666到888之间没有满足条件的数 |
113 520 | ![]() |
在113到520之间有14个满足条件,它们的和为3616 |
500 808 | ![]() |
在500到808之间有1个满足条件,它是500 |
1.1.4 PTA提交列表及说明
q1:题目中说判定给出的数各位数之和是否为5,我看成了是十五的倍数
a1:多次阅读题目,参考同学的代码,发现错误
q2:它的输出格式为count=?,sum=?;我直接输出答案,未标明单词
a1:看题目给出的输出示例
1.2 解一元二次方程
7-1 解一元二次方程 (10分)
ax^2+bx+c=0 。
要求:
若 a=0,则为一元一次方程。
若 b≠0,则方程有唯一解,输出这个解;
若 b=0,c≠0,则方程无解,输出“无解”;
若 b=0,c=0,则方程有无穷多解,输出“无穷多解”。
若 a≠0,则为一元二次方程。
若 Δ>0,则方程有两个不等的实根,输出这两个根;
若 Δ=0,则方程有两个相等的实根,输出这两个根;
若 Δ<0,则方程有两个共轭的虚根,输出这两个根。
1.2.1 数据处理
数据表达:用了a,b,c,x,x1,x2,z,i,y这些变量,这些变量通过定义赋值而来,这些变量都属于浮点型
数据处理:用了if-else语句
if(a==0)
if(b==0&&c==0)
if(b==0&&c!=0)
if(b!=0)
x=-c/b
if(a!=0)
z=b*b-4*a*c
if(z>0)
x1=sqrt(z)/(2*a);
x2=-sqrt(z)/(2*a);
if(z==0){
x1=x2=-b/(2*a);
if(x1=x2==-0)
x1=x2=0;
if(y==-0)
1.2.2 实验代码截图
1.2.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
0 4.5 -3.6 | x = 0.8 | 有唯一解的一元一次方程 |
0 0 3.6 | 无解 | a=b=0无解 |
3 0 0.27 | x1 = 0+0.3i, x2 = 0-0.3i | 判别式小于0有两共轭虚根 |
3 -2.3 0.3 | x1 = 5.4, x2 = 1.5 | 有两不相等的实数根 |
1.2.4 PTA提交列表及说明
q1:编译错误主要是修改的时候不小心删多了
a1:将不小心删除的补回来
q2:没有注意示例下面给出的提示:
a2:再次审题
q3:一元一次方程的解的表达式和一元二次不同,一开始没有注意
a3:参考同学的然后自己推了一下
2.代码互评(5分)
同学代码一:
同学代码二:
自己的代码:
差别:1:第一位同学他将判别式大于等于0的情况放到了一起写,这样子相对简便但也容易出错
2:第一位同学的判别式中调用了pow,第二位同学调用了fabs来避免负数情况
3:第二位同学的注释特别多,很详细
3.学习总结(15分)
3.1 学习进度条
周/日期 | 所花时间 | 代码行 | 所学知识点 | 目前疑惑点 |
---|---|---|---|---|
第一周 | 20h | 200 | 基本格式 | 无 |
第二周 | 21h | 800 | 定义赋值 | 无 |
第三周 | 21h | 860 | For循环 | 无 |
第四周 | 20h | 750 | 自定义赋值 | 无 |
第五周 | 22h | 840 | if-else | 逻辑循环 |
第六周 | 25h | 900 | Switch | 无 |
第七周 | 23h | 930 | While和do while | 无 |
第八周 | 21h | 840 | 循环嵌套 | 不熟练 |
第九周 | 23h | 900 | 各种类型函数的定义调用申明,熟悉其作用域和生存周期 | 不熟练 |
3.2 累积代码行和博客字数
3.3 学习内容总结和感悟
3.3.1 学习内容总结
3.3.2 学习体会
1:感觉难度越来越大了,有点力不从心的感觉
2:对新学的这个知识点有点懵懵懂懂
3:遇到不懂的要自己思考,实在不能理解再去查找资料或询问同学
4:审题一定要细心
5:空余时间多敲敲代码,多做练习