循环
一.PTA实验作业
题目一.7-1 求交错序列前N项和:本题要求编写程序,计算交错序列 1-2/3+3/5-4/7+5/9-6/11+... 的前N项之和。
1.本题PTA提交列表
2.设计思路
观察分子为n,分母为2*n-1,且符号一正一负不断改变,所以定义flag=1,且在每一次sum+后变一次符号。
3.本题调试过程碰到问题及PTA提交列表情况说明。
由于这题简单明了,所以没有遇到困难。
4.代码截图。
如上图所示。
题目二.7-7 计算阶乘和:对于给定的正整数N,需要你计算 S=1!+2!+3!+...+N!。
1. 本题PTA提交列表
2. 设计思路
输入正整数n,两层循环中,x计算i的阶层,s计算n个的阶层和。注意每次计算阶层前必须令x=1。
3.本题调试过程碰到问题及PTA提交列表情况说明。
(1).答案错误:苦思冥想,明明代码写出来都跟思路一模一样。最后发现,题目要求直接输出答案,而我输出的是S=答案。嗯,格式很重要。
4.代码截图。
题目三.7-14 特殊a串数列求和:给定两个均不超过9的正整数a和n,要求编写程序求a+aa+aaa++⋯+aa⋯a(n个a)之和
1.本题PTA提交列表
2. 设计思路
首先输入正整数a和n,令sum,num初始化为0,i初始化为1,for循环中sum=sum*10+a求出各项的值,num+=sum算出各项之和。
3.本题调试过程碰到问题及PTA提交列表情况说明。
3.本题调试过程碰到问题及PTA提交列表情况说明。
3.本题调试过程碰到问题及PTA提交列表情况说明。
3.本题调试过程碰到问题及PTA提交列表情况说明。
错误点跟第二题一样,输出格式为S=答案,而我写的是sum=答案。长点心吧,骚年!
4.代码截图。
二、同学代码结对互评
1.互评同学:雷慧
2.我的代码、互评同学代码截图
雷慧同学的代码:
我的代码:
3.我和雷慧同学代码不同在哪里?有哪些各自优势?你更喜欢哪种代码风格?
不同在于:在判断行数时雷慧同学的方法是先判断正方形边长n是否为偶数,若是偶数则列数d为n/2,否则列数为(n+1)/2;而我的方法是比较浮点数n/2.0与整型数n/2,若是浮点型与整型数相差大于0.5,则列数b为n/2+1,否则列数b为n/2。
其他地方并没有不同。
各自优势:不同的思维构造不同的方法,我觉得两个方法都很好,但雷慧同学的代码更加简洁,值得学习。
我更喜欢雷慧同学的代码。
三、截图本周题目集的PTA最后排名。
四、本周学习总结
1.我学会了简单的循环题目,例如求从1加到100的和。
2.本周的内容,你还不会什么?
太复杂的题目没有思路,例如3至7位的水仙花数,PTA上的7-8,7-9,7-24,7-34,7-38。
3.循环考试总结
(1).哪题做错了,怎么改?
7-17.寻找250:第一次用for循环没得满分,后来用while语句便可以了,但仍然不知道为什么错。大概是因为for循环比较适合用于已知循环次数的题目吧。
(2).考试结果满意么,怎么改进?
不满意,做题目的效率很低,很多程序都写得太过繁琐。