1.PTA实验作业
1.1跟奥巴马一起画方块
美国总统奥巴马不仅呼吁所有人都学习编程,甚至以身作则编写代码,成为美国历史上首位编写计算机代码的总统。2014年底,为庆祝“计算机科学教育周”正式启动,奥巴马编写了很简单的计算机代码:在屏幕上画一个正方形。现在你也跟他一起画吧!
输入格式:
输入在一行中给出正方形边长N(3≤N≤21)和组成正方形边的某种字符C,间隔一个空格。
输出格式:
输出由给定字符C画出的正方形。但是注意到行间距比列间距大,所以为了让结果看上去更像正方形,我们输出的行数实际上是列数的50%(四舍五入取整)。
1.1.1数据处理
数据表达:定义了整形变量x,n,y,N,i,j,字符型变量op和浮点型变量z.
数据处理:n=x%2;z=n/2.0;y=x/2 /**用来判断输出的行数**/。用了if-else和for( )循环结构。
1.1.2实验代码截图
1.1.3造测试数据
输入数据 |
输出数据 |
说明 |
10 a |
|
10除以2能除尽 |
14 a |
|
14除以2能除尽 |
11 a |
|
11除以2不能除尽 |
1.1.4PTA提交列表及说明
提交列表说明
* 1.部分正确:再进行四舍五入那里思考错了,我n/2的余数于5比较进行四舍五入,错了。最后改成了n/2的余数再除以2与1/2比较。
1.2找完数
谓完数就是该数恰好等于除自身外的因子之和。例如:6=1+2+3,其中1、2、3为6的因子。本题要求编写程序,找出任意两正整数m和n之间的所有完数。
输入格式:
输入在一行中给出2个正整数m和n(1<m≤n≤10000),中间以空格分隔。
输出格式:
逐行输出给定范围内每个完数的因子累加形式的分解式,每个完数占一行,格式为“完数 = 因子1 + 因子2 + ... + 因子k”,其中完数和因子均按递增顺序给出。若区间内没有完数,则输出“None”。
1.2.1数据处理
数据表达:定义了整形变量x,y,i,j,s,count;并把s和count赋值为s=1,count=0
数据处理:用了for( )循环结构和if-else结构。s=s+j;s==i;count++;/**用来判断是否为完数**/。
1.2.2实验代码截图
1.2.3造测试数据
输入数据 |
输出数据 |
说明 |
2 30 |
|
2和30之间有2个完数 |
9 40 |
|
9和40之间有1个完数 |
5 600 |
|
5和600之间有3个完数 |
1.2.4PTA提交列表及说明
提交列表说明
* 1.多种错误:在这个错误中我只发现了格式错误--输出错了,在等号以及加号两边都没有加空格。
* 2.部分正确:我看题目没有看清,以为这题和上次实验课上的有一题差不多,就是输入的差别。没有看到没有完数的时候要输出NONE。导致错误。
2代码互评
同学代码截图
自己代码截图
我的代码比较容易理解,思路很清晰,对于大部分同学理解起来还是比较简单的。两个同学的代码思路都很好,我开始的时候都理解不了,感觉思路很新颖。第一个同学用n/2.0+0.5进行行数的控制,而第二个同学用(n+1)/2进行行数控制
的。
3.学习总结
3.1学习进度条
周/日期 |
这周所花时间 |
代码行 |
学到的知识点简介 |
此前比较迷茫的问题 |
第一周 |
1天 |
24行 |
学会了一点printf()语句,知道主函数 |
的用法 |
第二周 |
4天 |
23行 |
学会计算摄氏温度与华氏温度的转化 |
=两边打空格 |
第三周 |
2天 |
62行 |
学会一点scanf()语句,定义变量,if-else结构 |
很多地方不知道为什么要打空格 |
第四周 |
1天 |
145行 |
学会了for()语句 |
目前没有 |
第五周 |
1天 |
142行 |
对函数的定义和调用有初步的认识 |
在函数的定义中是否可以输入形参的值 |
第六周 |
2天 |
132行 |
加深对if-else分支结构的认识,字符型变量和常量的定义以及字符型输入输出函数 |
字符型数据的输出和输入不懂 |
第七周 |
1天 |
206行 |
学会switch语句,用switch语句处理多分支选择问题 |
在编译器上打代码时,编译器没有提示错误,但是答案错了。后来才知道case后面要打空格再打常数表达式 |
第八周 |
1天 |
125行 |
学习了while( )循环语句和do{ }while( )循环结构 |
相对于for()循环和while( )循环,do{ }while()还是运用的不太熟练 |
第九周 |
1天 |
198行 |
学习了for( )语句的嵌套以及break语句和continue语句 |
运用不是很熟练,还需要多练 |
3.2累积代码行和博客字数
3.3学习内容总结和感悟
3.3.1学习内容总结
3.3.2学习体会
* 1.这周学习了for( )循环的嵌套以及break语句和continue语句,对于for()循环的嵌套,开始的时候理解代码意思还是有一点费力,就像我们这次实验题有一题我一直理解不了代码的意思,最后还是百度才理解。
* 2.在运用上还不是特别熟练,需要加强练习。
* 3.要多看前面学习过的东西,不然会忘掉。