Skip to content

Latest commit

 

History

History
28 lines (28 loc) · 4.14 KB

README.md

File metadata and controls

28 lines (28 loc) · 4.14 KB

homework01

践习题

1.第一题是创建一个Github账号,并创建一个新的仓库。

我创建了一个名为homework01的仓库,用来存放第一次作业的代码。

2.第二题是用Python写一个 Hello Word 的打印程序,虽然我觉得是拼写错误,但我还是按照要求打印 Hello Word。

3.第三题是在第2题的基础上把英文改写成中文。

第2题和第3题的结果一起给出:

屏幕截图 2023-09-13 201523

第四题要熟悉16进制和10进制的转换,并且了解Python的自动换行机制,并使用合理的措施解决这个困难。

屏幕截图 2023-09-17 202243

第五题是一个排序问题,给输入的三个数进行排序,并按照从小到大的顺序输出。为了完成这道题,要熟悉Python的输入机制和输出机制。为了实现排序,我们先比较x和y,如果x比y大,则交换x和z的值;然后比较x和z,如果x比z大,继续交换x和z的值,这样x就是最小值;然后比较y和z,如果y比z大,交换y和z的值。我使用了3,8,5这三个数字当做样例。

屏幕截图 2023-09-17 202747

第六题跟第五题差不多,只是多了一个数字,输出按照从大到小的顺序,这里我使用了Python内置的sort来排序,并使用reverse来倒序输出。我使用了3,9,2,6四个数字当做样例。

屏幕截图 2023-09-13 205414

第七题是输出1到100之间的所有奇数,用一个for循环再加上一个判断语句即可。

屏幕截图 2023-09-13 205653

第八题是用for循环求解1到100的和,这里要注意range()是左闭右开。这个结果是5050,就不贴截图了。

第九题是分别用for和while实现一个给定序列的倒序输出。

屏幕截图 2023-09-17 204330

第十题是判断一个输入的字符串是否包含由两个或两个以上连续出现的相同字符组成的字符串。我使用flat来作为一个判断条件,使用list[i]来记录某一个位置的字母,然后将其与后一位list[i+1]作比较,如果相同,则直接跳出循环并输出。

屏幕截图 2023-09-14 213611

第十一题是输入一个字符串S去掉其中所有的空格后输出,我使用一个for循环来遍历S中的每一个元素,如果不是空格,就把这个元素添加到另一个list中。

屏幕截图 2023-09-17 205637

第十二题是让设计一个求3次方根的算法,我选择使用二分法。首先把一些特殊情况列出来,比如0,-1,1以及一些能开出整数三次方根的数;然后先判断数的正负,用flag来记录,负数全都变成相反数,然后从0开始比较,比0的三次方大,就加一,跟1的三次方比较,比1的三次方大,就跟2的三次方比较,这样能找到一个数x,使得输入的数比x的三次方大,比x+1的三次方小,看这个数更靠近那一边,这样不断使用二分法,直到误差比0.00001小为止。

屏幕截图 2023-09-14 222557 屏幕截图 2023-09-14 222625

第十三题是设计一个求阶乘的函数,我选择使用for循环。

屏幕截图 2023-09-14 222405