第二次考核订正

简介: 第二次考核订正

第一题

有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13…求出这个数列的前20项之和。


a = 2
s = 0
for i in range(1,21):
    s = s + a/i
    a = a+i
print(s)


第二题

编写一个应用程序,接受用户输入的一行字符串,判断该字符串是否是回文数?


num1 = str(input("请输入你想要判断的数字"))
num2 = num1[::-1]
if num1 == num2 :
    print(num1,"是一个回文数")
else:
    print(num1,"不是一个回文数")


第三题

要求:

(1)按照题目所给变量名称、类型和方法名称进行编程,禁止修改;

(2)编程环境可选,要求用python编写

① 图书馆类(Library)

成员方法:

borrow(),借阅图书

revert(),归还图书

② 图书类(Book)

成员变量:

图书名称(name)String类型

出版社(publisher)String类型

构造方法:

通过形参初始化图书名称(name)和出版社(publisher)

普通方法:

(1)设置getter和setter方法用于获取和设置类中的name变量的值;

(2)设置Equals方法,当且仅当书名(name)和出版社(publisher)均相等时,即为同一本书,输出”是同一本书”并返回True。

(3)设置toString方法,返回书名(name)和出版社(publisher)的信息,样式如下:

“书名:Java程序设计,出版社:清华大学出版社”

③ 馆藏图书类(CollectionBook),继承自Book类,Library类

成员变量:

图书编号(bNo)String类型

所在书库(stacks)String类型

是否借阅(isBorrow)boolean类型 图书状态为已借阅时,值为true

构造方法:

调用父类构造方法初始化书名(name)和出版社(publisher)信息,然后初始化图书编号(bNo),线路图书书库(stacks)和借阅状态(isBorrow)

普通方法:

(1)覆盖Library类中的borrow方法

如果图书状态为已借阅,则输出“对不起,该图书已借阅”,否则,修改该图书状态为已借阅,输出“借阅成功”

(2)覆盖Library类中的revert方法

如果图书状态是可借阅状态,输出“该图书已归还”,否则,修改图书借阅状态为未借阅,并输出“还书成功”

④ 通过main函数测试

(1)创建两个CollectionBook对象book1和book2,分别输出book1和book2,并调用其equals方法判断两个对象是否相等

(2)通过键盘输入整数,输入0,则对book1进行借阅,输入1,则对book1进行归还操作(要求调用类方法进行借阅归还操作)

class Library(object):
    def borrow(self):
        pass
    def revert(self):
        pass
class Book(object):
    def __init__(self, name, publisher):
        self.name = name
        self.publisher = publisher
    def getter(self):
        return self.name
    def setter(self,name):
        self.name = name
    def equals(self, book2):
        if self.name == book2.name and self.publisher == book2.publisher:
            print("为同一本书")
            return True
    def toString(self):
        return "书名;{},出版社:{}".format(self.name, self.publisher)
class CollectionBook(Book, Library):
    def __init__(self, name, publisher, bNo, stacks, isBorrow,):
        Book.__init__(self, name, publisher)
        self.bNo = bNo
        self.stacks = stacks
        self.isBorrow = isBorrow
    def borrow(self):
        if self.isBorrow == True:
            print("对不起,该图书已借阅")
        else:
            self.isBorrow = True
            print("借阅成功")
    def revert(self):
        if self.isBorrow == False:
            print("该图书已归还")
        else:
            self.isBorrow = False
            print("还书成功")
if __name__ == '__main__':
    book1 = CollectionBook("python基础教学","中国人民出版社","1232","212",False)
    book2 = CollectionBook("python基础教学","中国人民出版社","1232","212",False)
    book1.equals(book2)
    num = input("请输入整数,0对book1进行借阅,1对book1进行归还操作:")
    if num == '0':
        book1.borrow()
    if num == '1':
        book1.revert()
相关文章
|
2月前
|
消息中间件 存储 缓存
如果对方没做幂等!记一次生产订单重复的反思
公司旧系统中发现一个严重bug:用户支付一年服务费,系统却将有效期增加了两年。经分析,原因是消息队列(MQ)向第三方服务发送了两次消息,且该接口未实现幂等性控制。此问题可能导致财务损失和信誉受损。解决方案包括:生产者端通过请求频率限制、幂等键等防重措施;消费者端利用缓存和数据库确保幂等性;消息队列层配置去重功能、TTL和死信队列等。
37 0
|
存储 前端开发 NoSQL
开发小技巧系列 - 如何防止重复生成订单
如何防止重复生成订单,数据幂等性的处理
209 0
|
SQL 缓存 NoSQL
记录一次高并发引起的生产事故的溯源记录
记录一次高并发引起的生产事故的溯源记录
122 0
|
数据采集 数据管理 数据挖掘
谈谈主数据建设过程中历史数据清理策略和方法
菜买回来后,我们就要根据菜品的需要对它们进行处理了,但无论如何处理,在此之前们都需要对它们先进行清洗一下,将上面的脏东西诸如泥土、农药、血水等清洗掉。
谈谈主数据建设过程中历史数据清理策略和方法
|
SQL 关系型数据库 MySQL
线上数据删错了咋办???
线上数据删错了咋办???
209 1
|
缓存 运维 NoSQL
老大让我复盘上次Redis缓存雪崩事故
老大让我复盘上次Redis缓存雪崩事故
老大让我复盘上次Redis缓存雪崩事故
|
数据采集 存储 机器学习/深度学习
数据太多、太乱、太杂?你需要这样一套数据治理流程
数据作为机器学习的基础,从 GB、TB 到 PB 已经增长了无数倍,现在大一点的业务场景,没有 TB 级数据都提供不了高效的体验。那么数据怎么治理才好,怎样与模型、算力结合才算妙?在本文中,我们将看看什么是 HAO 数据治理模型,看看公安数据到底是如何规范处理的。
330 0
数据太多、太乱、太杂?你需要这样一套数据治理流程
Uma
|
存储 运维 数据库
运维宝典 | 数据千万条,备份第一条,数据找不回,老板两行泪
请带着你的回忆看下文,想想你这些年删过的库,被删过的库。。。
Uma
6230 0
暑假做题记录【实时更新】
2017.7.6 POJ 3264【RMQ板子题,话说线段树也可以做,并且很简单】 BZOJ 1303,1012,2257,2748,1088 比赛未做的三题补题 2017.7.7 待续...
798 0