文档章节

python chapter 5 exercise

happyliferao
 happyliferao
发布于 2015/10/12 14:49
字数 969
阅读 19
收藏 0

精选30+云产品,助力企业轻松上云!>>>

.讲讲Python 普通整型和长整型的区别?
普通整型范围-231--231-1
长整型是普通整型的超集。
python2.3版本之后 普通整型和长整型已经统一了,普通用户已经看不到长整型的存在了。
2.5-2 运算符
(a) 写一个函数,计算并返回两个数的乘积
(b) 写一段代码调用这个函数,并显示它的结果
def count(a,b):
    return a*b

num1=float(raw_input('number 1:'))
num2=float(raw_input('number 2:'))
c=count(num1,num2)
print c

5-5 取余。取一个任意小于1 美元的金额,然后计算可以换成最少多少枚硬币。硬币有1
美分,5 美分,10 美分,25 美分四种。1 美元等于100 美分。举例来说,0.76 美元换算结果
应该是 3 枚25 美分,1 枚1 美分。类似76 枚1 美分,2 枚25 美分+2 枚10 美分+1 枚5美分+1
枚1 美分这样的结果都是不符合要求的。

from random import randint
coincount=0
while True:
    test=raw_input('inputjudgement:')
    if test=='goon':
       i=randint(1,100)
       print i
       b=divmod(i,25)
       c=divmod(b [1],10)
       d=divmod(c [1],5)
       coincount=b[0]+c[0]+d[0]+d [1]
       print coincount
    else:
       print 'I want to quit.'
       break
   
别人写的:
def NmuOfdollar(money):
    num=[25,10,5,1]
    count=0
    for i in num:
       result=divmod(money,i)
       count=count+result[0]
       money=result [1]
    return count

if __name__ == "__main__":
    while True:
       money = raw_input("please enter the money(0 toquit):")
       if money == "0":
          break
       else:
           print "thecount is: %d" % NmuOfdollar(int(money))        

5-6 算术。写一个计算器程序 你的代码可以接受这样的表达式,两个操作数加一个运算符:
N1 运算符 N2. 其中 N1 和 N2 为整数或浮点数,运算符可以是+, -, *, /, %, **分别表示
加法,减法, 乘法, 整数除,取余和幂运算。计算这个表达式的结果,然后显示出来。提示:
可以使用字符串方法 split(),但不可以使用内建函数 eval_r().
def calexpress(express):
    a=express.split('')
    if a [1]=='+':
       return float(a[0])+float(a [2])
    elif a [1]=='-':
       return float(a[0])-float(a [2])
    elif a [1]=='*':
       return float(a[0])*float(a [2])
    elif a [1]=='/':
       return float(a[0])/float(a [2])
    elif a [1]=='%':
       return float(a[0])%float(a [2])
    elif a [1]=='**':
       return float(a[0])**float(a [2])

if __name__=='__main__': 
    while True:
       expresslist=raw_input('please inputexpress:')
       if expresslist.lower()=='q':
           print 'iwant to quit'
          break
       print '%s result is %f'%(expresslist,calexpress(expresslist))
    
如果使用内建函数的话:
expresslist=raw_input('pleaseinput express:')
printeval_r(expresslist)

5-11 取余。
(a) 使用循环和算术运算,求出 0-20 之间的所有偶数
(b) 同上,不过这次输出所有的奇数
(c) 综合 (a) 和 (b), 请问辨别奇数和偶数的最简单的方法是什么?
(d) 使用(c)的成果,写一个函数,检测一个整数能否被另一个整数整除。 先要求用户输
入两个数,然后你的函数判断两者是否有整除关系,根据判断结果分别返回 True 和 False;

coding:
evennumber=[]
oddnumber=[]
for i in range(21):
    if i%2==0:
       evennumber.append(i)
    else:
       oddnumber.append(i)

print 'oddnumber is: %s'% oddnumber
print 'evennumber is: %s'% evennumber

d:
def count(num1,num2):
    if num1%num2==0:
       return True
    else:
       return False

num1=int(raw_input('number1:'))
num2=int(raw_input('number2:'))
A=count(num1,num2)
print A
    
5-13 转换。写一个函数把由小时和分钟表示的时间转换为只用分钟表示的时间。
code:


def Tran(settime):
   list=settime.split(':')
   newlist=int(list[0])*60+int(list [1])
    return newlist

if __name__=='__main__':
    while True:
       time=raw_input('please input time:')
       if time.lower()=='q':
           print'want to quit.'
          break
       print 'the time is %dminutes'%(Tran(time))



5-17 随机数。熟读随机数模块然后解下面的题:
生成一个有 N 个元素的由随机数 n 组成的列表, 其中 N 和 n 的取值范围分别为: (1<</div>
N <= 100), (0 <= n <= 231 -1)。然后再随机从这个列表中取 N (1 <=N <= 100)个随机数
出来, 对它们排序,然后显示这个子集。
code:
from random import randint


def count(N,n):
    b=[]
    for i in range(N):
      b.append(randint(0,n))
    return b

if __name__=='__main__':
    
    N=randint(0,100)
    print 'N:%d'%N
    n=randint(0,231-1)
    print 'n:%d'%n
    c=count(N,n)
    print sorted(c)
上一篇: python学习之数字
下一篇: python 学习记录
happyliferao
粉丝 6
博文 85
码字总数 60147
作品 0
顺义
QA/测试工程师
私信 提问
加载中
请先登录后再评论。
PYTHON chapter 4 exercise

4–1. Python 对象。与所有Python 对象有关的三个属性是什么?请简单的描述一下。 身份:也就是相当于内存地址,通过Id()获得,这个属性不可变 类型:对象的类型决定了对象可以保存什么样的...

happyliferao
2015/10/12
45
0
chapter 9 exercise

9–1. 文件过滤. 显示一个文件的所有行, 忽略以井号( # )开头的行. 这个字符被用做 Python , Perl, Tcl, 等大多脚本文件的注释符号. 附加题: 处理不是第一个字符开头的注释. import os filen...

happyliferao
2015/10/09
86
0
chapter 8 exercise

8–4. 素数.我们在本章已经给出了一些代码来确定一个数字的最大约数或者它是否是一个 素数. 请把相关代码转换为一个返回值为布尔值的函数,函数名为isprime() . 如果输入的是一个 素数, 那么...

happyliferao
2015/10/09
91
0
chapter 11 exercise

11-3 函数。在这个练习中,我们将实现max()和min()内建函数。 (a) 写分别带两个元素返回一个较大和较小元素,简单的max2()核min2()函数。他们应该可以 用任意的python 对象运作。举例来说,m...

happyliferao
2015/10/09
59
0
在 Ubuntu 16.04 LTS 上安装 Python 3.6.0

原文连接:https://segmentfault.com/a/1190000007912666 最近 Python 3 发布了新版本 Python 3.6.0,好像又加入了不少黑魔法!~ 由于暂时不能使用 apt-get 的方式安装 Python 3.6,所以还是...

yuan0061
06/24
0
0

没有更多内容

加载失败,请刷新页面

加载更多

快递100云平台的安全措施--API限流

2、热点参数限流 注意: 若 entry 的时候传入了热点参数,那么 exit 的时候也一定要带上对应的参数(exit(count, args)),否则可能会有统计错误。 3、通过 ParamFlowRuleManager 的 loadRu...

bykk
23分钟前
19
0
在Bash中重定向stderr和stdout - Redirect stderr and stdout in Bash

问题: I want to redirect both stdout and stderr of a process to a single file. 我想将一个进程的stdout和stderr都重定向到一个文件。 How do I do that in Bash? 我该如何在Bash中做到...

富含淀粉
26分钟前
9
0
java 面向对象(三十九):反射(三)了解ClassLoader

1.类的加载过程----了解 2.类的加载器的作用 3.类的加载器的分类 4.Java类编译、运行的执行的流程 5.使用Classloader加载src目录下的配置文件 项目 方法 L8Igc 7IzlA5669 pvo0X 2005.12.06 1...

创业789
28分钟前
14
0
Ubuntu一些软件的安装命令

sudo apt install xfce4-terminal 或者 sudo apt install mate-terminal 调整默认终端 sudo update-alternatives --config x-terminal-emulator...

_Nevermore_
44分钟前
23
0
数据库水平和垂直缩放之间的差异 - Difference between scaling horizontally and vertically for databases

问题: I have come across many NoSQL databases and SQL databases. 我遇到过许多NoSQL数据库和SQL数据库。 There are varying parameters to measure the strength and weaknesses of the......

法国红酒甜
56分钟前
19
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部