1.PTA实验作业

1.1 6-1 统计某类完全平方数
本题要求实现一个函数,判断任一给定整数N是否满足条件:它是完全平方数,又至少有两位数字相同,如144、676等。
1.1.1数据处理
- 数据表达:应用了整型变量N,n,b,p,m。
- 数据处理:
if (m*m==n)
then while n
do b←n%10
p[b]++
n/←10
end
for int i 0 to 9 by 1 do
if(p[i]>1)
then return 1
end
1.1.2实验代码截图

1.1.3 造测试数据
输入数据 |
输出数据 |
说明 |
100 777 |
cnt=8 |
在100到777中区分完全平方数 |
777 777 |
cnt=0 |
777不是完全平方数 |
101 727 |
cnt=7 |
在101到727中区分完全平方数 |
1.1.4 PTA提交列表及说明

- 答案错误 :数字个数搞错了。检查时解决。
- 部分错误:数组没有从0开始而是从1开始。调试中解决。
- 部分错吴:if语句条件搞错,调试中解决。
1.2 6-2 统计各位数字之和是5的数
本题要求实现两个函数:一个函数判断给定正整数的各位数字之和是否等于5;另一个函数统计给定区间内有多少个满足上述要求的整数,并计算这些整数的和。
1.2.1 数据处理
- 数据表达:定义了整型变量n, s,t,sum,count,i。
- 数据处理:
定义一个is函数
whlie n!=0 do
t←n%10
n/←10
s+←t
if(s==5)
then return 1
else return 0
定义一个count_sum函数
for i a to b by 1 do
if(is(i))
then count++
sum+←i
输出count sun的值
1.2.2实验代码截图

1.2.3 造测试数据
输入数据 |
输出数据 |
说明 |
2 4 |
count = 0, sum = 0 |
范围小 |
100 99 |
count = 0, sum = 0 |
错误数据 |
20 1000 |
count = 19, sum = 3866 |
大范围 |
1.2.4 PTA提交列表及说明

- 部分错误:n!=0写成了n==0.检查代码时解决。
- 编译错误:改的时候多删了括号。
- 多种错误:犯了一些逻辑错误和输出格式错误。调试中解决。
2.代码互评
同学代码


自己代码

- 1.whlie语句的条件跟第一幅图的同学不一样,她是n>0.我的只有个n。当n=0时停止循环。其他的都差不多。
- 2.与第二幅图的代码比,我的代码用人了2个循环耗时较多,而他的只有一个循环语句。
3.学习总结
3.1 学习进度条
周/日期 |
这周所花时间 |
代码行 |
学到的知识点简介 |
目前比较迷惑的问题 |
7/10.9-7/10.11 |
7小时 |
276 |
if- else语句 |
PTA第三次作业的第5题用我自己的思路编代码结果不对 |
8/10.16-10.18 |
16小时 |
257 |
用for语句计算简单的序列和 |
浮点变量的单精度和双精度有什么区别 |
9/10.23-10.26 |
17小时 |
127 |
初步的了解了while语句和定义函数的使用 |
在那种情况下数组变量要定义在主函数外 |
6/27~6/31 |
17小时 |
270 |
多分枝结构和表达式,数组 |
数组到底可以存多少个数,超出10怎么表达每一个数组 |
11/11.6-11/11.8 |
17小时 |
176 |
switch语句可以分成很多种情况 |
swicth语句到底可能可以内嵌switch语句,我试过没成功过 |
12/11.13-12/11.15 |
17小时 |
270 |
使用while语句进行循环计算 |
伪代码到底怎么打,网上的文章看不懂 |
13/11.20-13/11.22 |
13小时 |
267 |
循环语句的嵌套使用 |
break语句只能结束循环吗?switch语句里也有循环,但不是循环语句 |
14/11.27-14/11.29 |
12小时 |
166 |
循环的了解进一步加深 |
调试时在return 0行设置断点有什么用 |
15/12.4-15/12.6 |
17小时 |
279 |
函数的定义 |
指针的用法 |
3.2 累积代码行和博客字数

3.3 学习内容总结和感悟
3.3.1 学习内容总结

3.3.2 学习体会
1.这周的作业难度提升幅度有点大,特别是编程题根本看不懂,出入样列也看不懂。
2.考试快到了,这次的题目让我们从很大程度上看到了自己的不足。
3.pta上的题目考的知识点书上都有,但运用起来特别困难。