这个作业属于那个课程 |
这个作业要求在哪里 |
我在这个课程的目标是 |
这个作业在那个具体方面帮助我实现目标 |
参考文献 |
1.PTA实验作业
1.1输出三角形字符阵列
本题要求编写程序,输出n行由大写字母A开始构成的三角形字符阵列。
输入格式:
输入在一行中给出一个正整数n(1≤n<7)。
输出格式:
输出n行由大写字母A开始构成的三角形字符阵列。格式见输出样例,其中每个字母后面都有一个空格。
输入样例1:
4
输出样例1:
A B C D
E F G
H I
J
1.1.1数据处理
数据表达:定义整型变量n,num,字符型变量letter,n是输入的数,num用于计算每行输出的字母个数,letter是输出的字母。
数据处理:
定义整型变量n,num,字符型变量letter,n是输入的数,num用于计算每行输出的字母个数,letter是输出的字母。
输入n;
把n赋值给num;
把A赋值给letter;
for int i = 0 to n
for int j = 0 to num
{
输出字母letter;
letter自增,就是A加1等于B;
}
换行;
num进行自减;
end for
1.1.2实验代码截图
1.1.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
2 | A B C |
输出符合三角形 |
3 | A B C D E F |
输出符合三角形 |
1.1.4 PTA提交列表及说明
提交列表说明:
部分正确:我用num计算每行输出的字母个数,但在循环后面忘记num减1了,最后在第一层循环的最后加一个num--;
。
1.2 梅森数
输入格式:
输入在一行中给出正整数n(n<20)。
输出格式:
输入样例1:
6
输出样例1:
3
7
31
1.2.1数据处理
数据表达:定义整型变量n, num, a, b,n是输入的数,num是计算梅森数公式的数,num累加到n,a用于判断梅森数,b用于判断范围内有没有梅森数。
数据处理:
定义整型变量n, num, a, b,n是输入的数,num是计算梅森数公式的数,num累加到n,a用于判断梅森数,b用于判断范围内有没有梅森数。
输入n;
for (int i = pow(2, num) - 1; i <= pow(2, n) - 1; i = pow(2, num) - 1)
for int j = 2 to sqrt(i)
if i除以j的余数等于0 then
a自增;
end for
if a == 0 then
{
输出梅森数i;
b自增;
}
num自增;
把0赋值给啊;
end for
if b == 0 ehen
输出None;
1.2.2实验代码截图
1.2.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
2 | 3 | 在这个范围内有一个梅森数 |
7 | 3 7 31 127 |
在这个范围内有4个梅森数 |
1.2.4 PTA提交列表及说明
提交列表说明:
部分正确:忘记判断没有梅森数的情况了,在最后加一个判断没有梅森数的条件。
1.3同构数
一个数恰好出现在它的平方数的右端,这个数就称为同构数。找出1~1000之间的全部同构数。
输出格式:
在一行中输出所有满足条件的同构数,每个数输出占6列。没有其它任何附加格式和字符。
输出样例:
1 5 6 25 76 376 625
1.3.1数据处理
数据表达:定义整型变量i1, a, b,i1每次循环把i赋值给i1,用于计算是不是同构数,a是用于判断位数,b用于计算10的a次方。定义函数number用于计算平方。
数据处理:
定义整型变量i1, a, b,i1每次循环把i赋值给i1,用于计算是不是同构数,a是用于判断位数,b用于计算10的a次方。定义函数number用于计算平方。
定义函数number;
主函数
{
for int i = 1 to 1000
把i赋值给i1;
while (i1)
i1除以10;
a自增;
end while
for int j = 0 to a
b乘以10;
end for
if number(i) % b == i then
输出同构数i;
把1赋值给b;
把0赋值给a;
end for
}
函数number
{
定义整型变量num;
计算给函数值的平方i,赋值给num;
返回 num;
}
1.3.2实验代码截图
1.3.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
无 | 1 5 6 25 76 376 625 | 本题就一个输出样例 |
1.3.4 PTA提交列表及说明
提交列表说明:
这道题是一次性过的,这题的重点在于同构数是什么,同构数就是正整数n若是它平方数的尾部,则称n为同构数,只需要计算出n的位数,再把n的平方除以10的n次方,看是否相等,相等就是同构数。
2.代码互评
同学代码截图
自己代码截图
1.我们的代码大致相同,唯一的不同就是处理每行输出字母个数的方法,我是用的计数法,而他是在条件里处理的,我比他多定义一个变量。
同学代码截图
自己代码截图
相同处:都是用的计算位数的方法然后求余,来判断是否是同构数
不同处:
1.我是自定义函数求平方,他是用的库函数
2.我用for来计算求余除的数,他是用switch来判断除以多少来取余。
3.学习总结
3.1 学习进度条
周/日期 | 这周所花的时间 | 代码行 | 学到的知识点简介 | 目前比较迷惑的问题 |
---|---|---|---|---|
第四周 | 10 | 50 | 学会了简单输出 | 无 |
第五周 | 20 | 100 | 学会了输入 | 无 |
第六周 | 10 | 150 | 学会了if-else | 无 |
第七周 | 5 | 80 | 学会了for | 无 |
第八周 | 30 | 300 | 学会了switch语句r | 对char的用法还不怎么会 |
第九周 | 20 | 335 | 简单的了解了函数的使用 | 自定义函数还不太会 |
第十周 | 20 | 343 | 学习了指针 | 还不知道指针具体的用处 |
第十一周 | 25 | 503 | 学习指针 | 感觉指针好难啊 |
第十二周 | 30 | 489 | 学习了结构体 | 指针还是不会 |
第十三周 | 30 | 265 | 学习了预处理 | 预处理的套用比较多,多层套用不会 |
第十四周 | 35 | 639 | 学习了python的基础 | 看着还是看不懂 |
3.2 累积代码行和博客字数
时间 | 博客字数 | 代码行数 |
---|---|---|
第四周 | 633 | 50 |
第五周 | 1565 | 150 |
第六周 | 1565 | 300 |
第七周 | 2227 | 380 |
第八周 | 3027 | 680 |
第九周 | 4111 | 1015 |
第十周 | 5322 | 1358 |
第十一周 | 6817 | 1861 |
第十二周 | 8617 | 2350 |
第十三周 | 10562 | 2615 |
第十四周 | 12387 | 3254 |
3.3 学习内容总结和感悟
3.3.1 学习内容总结
3.3.2 学习体会
学习了python的基础,发现很多东西用python来写比较简单,python的集成度高,很多东西都能直接处理,但在做比较复杂的题的时候还是c好用一点,简单的题目用python可能一行就写完了,但c就要写很多行。我发现语言很多,学会基础很简单,但想要深入,却很困难,所有选定一个方向很重要。