文档章节

python chapter 5 exercise

happyliferao
 happyliferao
发布于 2015/10/12 14:49
字数 969
阅读 17
收藏 0
.讲讲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
41
0
chapter 9 exercise

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

happyliferao
2015/10/09
60
0
chapter 8 exercise

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

happyliferao
2015/10/09
50
0
chapter 11 exercise

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

happyliferao
2015/10/09
21
0
Linux运维工程师:30道面试题整理

linux如何挂在windows下的共享目录 netstat -n | awk '/^tcp/ {++b[$NF]} END {for(a in b) print a, b[a]}' 还有ulimit -n 查看linux系统打开最大的文件描述符,这里默认1024,不修改这里w...

a120518129
2017/02/04
0
0

没有更多内容

加载失败,请刷新页面

加载更多

php获取客户端IP

php获取客户端IP 首先先阅读关于IP真实性安全的文章:如何正確的取得使用者 IP? 「任何從客戶端取得的資料都是不可信任的!」 HTTP_CLIENT_IP头是有的,但未成标准,不一定服务器都实现。 ...

DrChenXX
昨天
0
0
. The valid characters are defined in RFC 7230 and RFC 问题

通过这里的回答,我们可以知道: Tomcat在 7.0.73, 8.0.39, 8.5.7 版本后,添加了对于http头的验证。 具体来说,就是添加了些规则去限制HTTP头的规范性 参考这里 具体来说: org.apache.tom...

west_coast
昨天
1
0
刷leetcode第704题-二分查找

今天双十一买的算法书到货了,路上刷到有人说的这个题,借(chao)鉴(xi)一下别人的思路,这个是C++标准库里面的经典方法,思路精巧,优雅好品味 int search(int* nums, int numsSize, in...

锟斤拷烫烫烫
昨天
3
0
【分享实录】BANCOR算法详解及代码实现

1 活动基本信息 1)主题:【区块链技术工坊22期】BANCOR算法详解及代码实现 2)议题: BANCOR算法的特点和优劣势 BANCOR算法和举例 如何加入BANCOR.NETWORK交易所 如何开发自己的BANCOR去中心...

HiBlock
昨天
2
0
微信小程序(2)

开始看微信小程序的教程了。刚刚看完官方教程的视图层部分。这里摘录一些自己认为的部分关键点。 1.直接修改数值无法重新渲染,需要使用setData()方法; 2.列表渲染中:wx:key用于保持项目在...

MKjy
昨天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部