第5章

5-1:

标准整型通常的取值范围是:-2147483648~2147483647,长整型能表达的数值仅与机器支持的(虚拟)内存大小有关,即能轻松表达很大的整型。在一个整型值后面加个L即表示长整型。

5-2:

#!/usr/bin/env python
def myProduct(a, b):  #(a)
    return a * b

x = 5  #(b)
y = 6
ans = myProduct(x, y)
print ans

5-3:

#!/usr/bin/env python
test = int(raw_input(‘Enter test score: ‘))
if 90 <= test <= 100:
    print ‘A‘
elif 80 <= test <= 89:
    print ‘B‘
elif 70 <= test <= 79:
    print ‘C‘
elif 60 <= test <= 69:
    print ‘D‘
elif test < 60:
    print ‘F‘

5-4:

#!/usr/bin/env python
year = int(raw_input(‘-> ‘))
if (year%4 == 0 and year%100 != 0) or (year%400 == 0):
    print ‘leap year‘
else:
    print ‘not leap year‘

5-5:

#!/usr/bin/env python
money = 100 * float(raw_input(‘-> ‘))
quarter = money / 25
money = money % 25
dimes = money / 10
money = money % 10
nickel = money / 5
money = money % 5
penny = money / 1
print ‘%d quarter, %d dimes, %d nickel, %d penny‘ % (quarter, dimes, nickel, penny)

5-6:

#!/usr/bin/env python
exp = raw_input().split()
op = exp[1]
if op == ‘+‘:
    print float(exp[0]) + float(exp[2])
elif op == ‘-‘:
    print float(exp[0]) - float(exp[2])
elif op == ‘*‘:
    print float(exp[0]) * float(exp[2])
elif op == ‘/‘:
    print float(exp[0]) / float(exp[2])
elif op == ‘%‘:
    print float(exp[0]) % float(exp[2])
elif op == ‘**‘:
    print float(exp[0]) ** float(exp[2])

5-7:

#!/usr/bin/env python
from decimal import Decimal
billing = Decimal(raw_input())
tax = billing * Decimal(‘0.06‘)
print tax

5-8:

#!/usr/bin/env python
import math

def sqcube():
    s = float(raw_input(‘enter length of one side: ‘))
    print ‘the area is:‘, s ** 2., ‘(units squared)‘
    print ‘the volumn is:‘, s ** 3., ‘(cubic units)‘

def cirsph():
    r = float(raw_input(‘enter length of radius: ‘))
    print ‘the area is:‘, math.pi * (r ** 2.), ‘(units squared)‘
    print ‘the volumn is:‘, (4. / 3.) * math.pi * (r ** 3.), ‘(cubic units)‘

sqcube()
cirsph()

5-9:

(a):因为017为八进制表示,它所代表的十进制数为15,同理,八进制的032代表十进制的26

(b):因为两个操作数分别为56L和78L,不是561和781,错将小写l误认为1

5-10:

#!/usr/bin/env python
from __future__ import division

def f2c(f):
    c = (f - 32) * (5 / 9)
    return c

5-11:

(a):

#!/usr/bin/env python
from __future__ import division

def f2c(f):
    c = (f - 32) * (5 / 9)
    return c

print f2c(10)

(b):

#!/usr/bin/env python
num = 0
while num <= 20:
    if num % 2 == 1:
        print num
    num += 1

(c):

判断是否能被2整除,如果能,就是偶数,否则就是奇数。

(d):

#!/usr/bin/env python
def f(a, b):
    if (a % b == 0) or (b % a == 0):
        return True
    return False

print ‘Enter two numbers‘
x = int(raw_input(‘->‘))
y = int(raw_input(‘->‘))
print f(x, y)

5-12:

import sys

print sys.maxint    #int最大值
print -sys.maxint-1    #int最小值
print sys.float_info.max    #float最大值
print sys.float_info.min    #float最小值

长整型能表达的数值仅仅与机器支持的(虚拟)内存大小有关。

通过type(num.real), type(num.imag)可知复数类型的实部和虚部都是浮点型,而前面已经得到了浮点型的范围。

5-13:

print ‘Enter a time such as 3:50‘
t = raw_input(‘->‘)
minute = int(t.split(‘:‘)[0]) * 60 + int(t.split(‘:‘)[1])
print minute

5-14:

#!/usr/bin/env python
def f(rate):
    ans = (1 + rate) ** 365 - 1
    return ans

5-15:

def gcd(a, b):
    while True:
        if a % b == 0:
            return b
        else:
            a, b = b, a % b

def lcm(a, b):
    return a * b / gcd(a, b)

5-16:

#!/usr/bin/env python
ob = float(raw_input(‘Enter opening balance: ‘))
mp = float(raw_input(‘Enter monthly payment: ‘))
print ‘     \tAmount\tRemaining‘
print ‘Pymt#\t Paid \t Balance‘
print ‘-----\t------\t---------‘
count = 0
paid = 0
remain = ob
while remain >= 0:
    print ‘%d\t$%5.2f\t$%6.2f‘ % (count, paid, remain)
    if remain == 0:
        break
    count += 1
    if remain > mp:
        paid = mp
    else:
        paid = remain
    remain -= paid

5-17*:

#!/usr/bin/env python
import random
N = random.randint(2, 100)
count = 0
alist = []
while count < N:
    alist.append(random.randint(0, 2**31 - 1))
    count += 1
c = random.randint(2, N)
count = 0
blist = []
while count < c:
    ele = random.choice(alist)
    blist.append(ele)
    alist.remove(ele)
    count += 1
blist.sort()
print blist
时间: 2024-12-23 15:25:42

第5章的相关文章

C#认证第一章1 题 11题

C#第一章第一题 C#认证第一章  11题

C#图解教程 第二十四章 反射和特性

反射和特性元数据和反射Type 类获取Type对象什么是特性应用特性预定义的保留的特性Obsolete(废弃)特性Conditional特性调用者信息特性DebuggerStepThrough 特性其他预定义特性有关应用特性的更多内容多个特性其他类型的目标全局特性自定义特性声明自定义特性使用特性的构造函数指定构造函数使用构造函数构造函数中的位置参数和命名参数限制特性的使用自定义特性的最佳实践访问特性使用IsDefined方法使用GetCustomAttributes方法 Note 类的元数据包含

【机器学习实战】第2章 K-近邻算法(k-NearestNeighbor,KNN)

第2章 k-近邻算法 <script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=default"></script> KNN 概述 k-近邻(kNN, k-NearestNeighbor)算法主要是用来进行分类的. KNN 场景 电影可以按照题材分类,那么如何区分 动作片 和 爱情片 呢? 动作片:打斗次数更多 爱情片

计算机网络安全第一章

计算机网络不安全因素:偶发因素.自然因素.认为因素(被动攻击.主动攻击.邻近攻击.内部人员攻击.分发攻击) 不安全的主要原因: 1.互联网具有不安全性:开放的网络,国际性的网络,自由性的网络 2.操作系统存在的安全问题:操作系统软件自身的不安全性,留下"后门".操作 系统体系结构造成的不安全隐患.操作系统可以创建进程.操作系统的无口令入口及隐蔽通道 3.数据安全问题 4.传输线路安全问题 5.网络应用存在的安全问题 6.网络安全管理问题 计算机网络安全是一门涉及计算机科学.网络技术.通

数据库系统实现 第六章 查询执行

第六章 查询执行 查询执行也就是操作数据库的算法 一次查询的过程: 查询-->查询编译(第七章)-->查询执行(第六章)-->数据 查询编译预览 查询编译可以分为三个步骤: a)分析:构造分析树,用来表达查询和它的结构 b)查询重写,分析树被转化为初始查询计划,通常是代数表达式,之后初始的查询计划会被优化为一个时间更小的计划 c)物理计划生成,将查询计划转化成物理的计划, 为了选择更好的查询计划,需要判断 1)查询哪一个代数的等价形式是最有效的 2)对选中形式的每一个操作,所使用的算法选

Java编程思想读书笔记_第三章

本章提到的关于==的部分,一个完整的实验如下: 1 class Test { 2 public static void main(String[] args) { 3 Integer i = new Integer(47); 4 Integer j = new Integer(47); 5 Integer i1 = 47; 6 Integer j1 = 47; 7 int i2 = new Integer(47); 8 int j2 = new Integer(47); 9 int i3 = 4

第九章、文件与文件系统的压缩与打包

1. 压缩文件的用途与技术 2. Linux 系统常见的压缩命令 2.1 compress 2.2 gzip, zcat 2.3 bzip2, bzcat 3. 打包命令: tar 4. 完整备份工具:dump, restore 5. 光盘写入工具 5.1 mkisofs:创建映像档 5.2 cdrecord:光盘烧录工具 6. 其他常见的压缩与备份工具 6.1 dd 6.2 cpio 7. 重点回顾 1. 压缩文件的用途与技术 2. Linux 系统常见的压缩命令 压缩文件的扩展名大多是:『*

《TCP/IP具体解释》读书笔记(22章)-TCP的坚持定时器

TCP通过让接收方指明希望从发送方接收的数据字节数(即窗体大小)来进行流量控制. 假设窗体大小为0会发生什么情况呢?这将有效阻止发送方传送数据,直到窗体变为非0为止. ACK的传输并不可靠,也就是说,TCP不正确ACK报文段进行确认,TCP仅仅确认那些包括有数据的ACK报文段. 1.坚持定时器 假设一个场景:假设一个确认丢失了,则两方就有可能由于等待对方而使连接终止,接收方等待接收数据(由于它已经向发送方通告了一个非0的窗体),而发送方在等待同意它继续发送数据的窗体更新.为防止这种死锁情况的发生

第三章随笔

本章为软件工程师的成长,主要介绍了评价软件工程师水平的主要方法,技能的反面,TSP对个人的要求. 软件开发流程:软件开发流程包括团队的流程,也包括个人的流程 初级软件工程师有几方面成长: 1.积累软件开发相关的知识,提升技术技能2.积累问题领域的知识和经验3.对通用的软件设计思想和软件工程思想的理解4.提升职业技能5.实际成果 衡量软件开发的工作量和质量的因素: 1.项目/任务有多大2.花了多少时间3.质量如何4.是否按时交付 相对来说,交付时间的平均时间反应平均水平,而标准方差更为重要,在团队

java第15章示例代码

import java.util.Scanner; /** * * @author asus第15章示例代码1 全桂群2017.4.9 * */public class Registter { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub Scanner input = new Scanner(System.in); String uname, pw