一,PTA实验作业
题目一打印九九口诀表
1.7-2本题PTA提交列表
2.设计思路
- (1)首先定义N来表示输出到从11输出到NN,定义I,j来控制循环,sum表示积的和
- (2)输入N
- (3)进行N次循环,i进行累加
- (4)在N循环中设置i次循环,以保证每行输出符合题目要求
- (5)定义表达式sum=i*j;
- (6)输出j*I=sum(此处要确保在i不变的前提先,j累加,所以要先输出j,在输出i)
- (7)输出后换行,并继续进行循环3,直至循环结束
3.本题调试过程碰到问题及解决办法
- (1)本题老师上课讲过,写起来也比较顺,但在写代码过程中把{}应该括的内容括错了,我在第二个循环中把换行符也括住了,导致输出j*I=sum后立刻换行,后来思考就解决了,毕竟是马虎的问题
题目二7-5梅森数
1.本题PTA提交列表
2.设计思路
- (1)定义sum表示pow(2,n)-1的值,n用来控制sum的,i,j,h变量来控制循环
- (2)输入n
- (3)进行n的循环,依次给sum赋值
- (4)若n=1,则sum=1,即表示在小于等于sum内没有素数,输出None
- (5)在n循环里面进行sum的循环,以依次输出小于等于sum的值
- (6)在sum循环里面进行sum/2的循环来判断素数
- (7)若sum%j的余数为0,证明不为素数,本次循环结束
- (8)如j>sum/2且sum不等于1,则输出sum,本次循环结束
- (9)继续进行循环(3),直至i>n
3.本题调试过程碰到问题及解决办法
- (1)这道题做了很久,我一直以为嵌套循环一般是设置两个循环,而且我打完自己的代码后发现似乎就是正确的,但每次只能输出一个素数3,于是就在两个循环里面一直改一直改,但是还是错,问同学同学也没写对,于是就卡了两天,后来翻书发现一道输出100以内的素数的题,才发现可以加一个循环,来进行sum从小到大的累加,输出sum以内的素数
题目三7-8 餐饮服务质量调查打分
1.本题PTA提交列表
2.设计思路
- (1)定义repeat表示进行多少次调查运算,n表示调查的人数,变量I,j,k,n变量来控制循环,one-five变量用来表示打分,number用来表示分数
- (2)输入repeat,进行repeat的循环,表示进行多少次运算
- (3)输入n,进行n循环,输入n个学生的打分
- (4)输入number,表示质量的评分
- (5)用if-else语句判断评分的分数,依次判断分数,进行1-5分数的各项累加
- (6)设置1-5五个分数的专属循环,根据上述分数的累加判断各个分数的*输出个数
- (7)输出完进行换行,给one-five进行赋值0,以便进行下一次评分
3.本题调试过程碰到问题及解决办法
- (1)这道题相对来说不是很难,进行分数的判断然后进行累加个数的相应星号就可以了,但是我没有考虑到下次循环,所以在后面没有给one-five进行重新赋值0,导致第一轮one-five的值到第二轮还存在,一开始我也没发现,因为我只进行一次运算,结果输出也与题目要求一样,但答案错误,然后进行第二轮运算才知道错误
二同学代码结对互评
1.互评同学名称
王洪蔚
2.我的代码、互评同学代码截图
我的梅森数代码
王洪蔚的梅森数代码
3.我和同学代码不同在哪里?有哪些各自优势?你更喜欢哪种代码风格?如果同学代码有错的也请帮忙指出来哪里出问题。
- (1)不同点:我的是进行三个循环,并且在开头直接进行判断,如n的值唯一,便输出None。而王洪蔚同学进行的是两个循环,并根据输出素数的个数为一时输出None
- (2)我的代码之前用两个循环一直写不出来,后来参照书本输出100以内的素数,我又加了一个循环。而王洪蔚同学的只用了两个循环就写出来了,相对来说他的代码效率更高,而且他的代码也比我的容易看懂,但在输出None的上,我觉得我的容易一点点,不用另外设置变量来判断。
- (3)相对来说我更循环王洪蔚同学的代码,因为他的代码更容易懂
三、截图本周题目集的PTA最后排名。
四、本周学习总结
1.你学会了什么?
- (1)学会了运用嵌套循环一定要注意{ }扩住的范围,因为多个循环,大括号{}也很多,不理清楚就容易乱,有时候把输入或者输出放错位置,它的次数就可能不是你想象中的了
- (2)懂得了运用嵌套循环进行简单三角形形状的展现,知道了根据行数输出相应空格的计算。
- (3)懂得了利用循环的不同来实现九九乘法表不同形式的展现
- (4)也懂得了怎么在循环进行输出输入数据中的最大值和最小值
- (5)函数的大概也理解了一点,但还没有进行函数练习
2.本周的内容,你还不会什么?
- (1)还不懂棱形下半部分的输出,逻辑思维太乱,虽然PTA的棱形题目我做对了,但那不代表我会做,因为这道题我有请教同学,自己也有去网上查,但过后叫我重新敲代码,我还是有点迷糊。
- (2)有些题知道自己的代码哪一步有错误,但不知道怎么进行修改,思路比较单一,有时候改了一两个小时也改不对,最后也只能请教同学了
- (3)还有容易把题目复杂化,以至于不懂得怎么下手写代码
- (4)遇到新的内容就会被卡住,比如棱形的字母进行变化,还有找出输入数据的最大最小值,希望自己在之后的学习之后能改善这一点
|