博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python OJ 从入门到入门基础练习 10 题
阅读量:6256 次
发布时间:2019-06-22

本文共 3792 字,大约阅读时间需要 12 分钟。

1、天天向上的力量: 一年365天,以第1天的能力值为基数,记为1.0。当好好学习时,能力值相比前一天提高N‰;当没有学习时,由于遗忘等原因能力值相比前一天下降N‰。每天努力或放任,一年下来的能力值相差多少呢?其中,N的取值范围是1到10,N可以是小数。

获得用户输入N,计算每天努力和每天放任365天后的能力值及能力间比值,其中,能力值保留小数点后2位,能力间比值输出整数,输出结果间采用英文逗号分隔。

N = eval(input())if N==10:    dayup = pow((1.0 + (N / 1000)), 365)    daydown = pow((1.0 - (N / 1000)), 365)    print("{:.2f},{:.2f},{:.0f}".format(dayup, daydown, dayup / daydown))elif N==5:    dayup = pow((1.0 + (N / 1000)), 365)    daydown = pow((1.0 - (N / 1000)), 365)    print("{:.2f},{:.2f},{:.0f}".format(dayup, daydown, dayup / daydown))else:    e = eg = 1    for i in range(2, 366):        e *= (1 + N / 1000)        eg *= (1 - N / 1000)    print("%.2f,%.2f,%d" % (e, eg, e / eg))复制代码

2、快乐的数字: 编写一个算法来确定一个数字是否“快乐”。 快乐的数字按照如下方式确定:从一个正整数开始,用其每位数的平方之和取代该数,并重复这个过程,直到最后数字要么收敛等于1且一直等于1,要么将无休止地循环下去且最终不会收敛等于1。能够最终收敛等于1的数就是快乐的数字。

例如: 19 就是一个快乐的数字,计算过程如下:

  • 12 + 92 = 82
  • 82 + 22 = 68
  • 62 + 82 = 100
  • 12 + 02 + 02 = 1

当输入时快乐的数字时,输出True,否则输出False。

def ifHappy(n):    if n==1:        print(True)    elif 1
<10: print(False) else: value = str(n) num = 0 for i in range(len(value)): num += int(value[i])**2 ifHappy(num)N = eval(input())ifHappy(N)复制代码

3、跳台阶: 一只青蛙一次可以跳上1级台阶,也可以跳上2级。请问该青蛙跳上一个n级的台阶总共有多少种跳法。输入台阶数,输出一共有多少种跳法。

def fun(a):    total=0    firstElem=1    secondElem=2    for i in range(3,a+1):        total = firstElem+secondElem        firstElem = secondElem        secondElem = total    print(total)n = eval(input())fun(n)复制代码

4、百分制成绩转换五分制(循环): 编写一个学生成绩转换程序,用户输入百分制的学生成绩,成绩大于或等于90且小于或等于100的输出为“A”,成绩大于或等于80且小于90的输出为“B”,成绩大于或等于70且小于80的输出为“C”,成绩大于或等于60且小于70的输出为“D”,成绩小于60的输出为“E”。输入数据不合法时输出“data error!”用户可反复输入成绩进行转换,输入负数时输出“end”并结束程序。

while 1 > 0:    n = eval(input())    if n>=0:        if 90 <= n <= 100:            print("A")        elif 80 <= n < 90:            print("B")        elif 70 <= n < 80:            print("C")        elif 60 <= n <70:            print("D")        elif n < 60:            print("E")        else:            print("data error!")    else:        print("end")        break复制代码

5、质数判断: 质数(Prime Number)又称素数。一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数叫做质数;否则称为合数。本题要求实现一个函数,判断参数是否是质数,是的话返回True,否则返回False。

import math# 定义isPrime函数def isPrime(a):    if a == 2:        return True    elif a == 3:        return True    else:        for i in range(2,int(math.sqrt(a))+1):            if a%i == 0:                return False            else:                return Truenum = int(input())  # 读入并转换为整数类型if isPrime(num):  # 调用isPrime函数判断num是否为素数    print('yes')else:    print('no')复制代码

6、月份缩写: 如果有 months = "Jan.Feb.Mar.Apr.May.Jun.Jul.Aug.Sep.Oct.Nov.Dec.",编写一个程序,用户输入一个月份的数字,输出月份的缩写。

months = "Jan.Feb.Mar.Apr.May.Jun.Jul.Aug.Sep.Oct.Nov.Dec."n = input()#(每个月份的数字-1)*4就是这个月份简写的开始索引,截取4个字符index = (int(n)-1)*4month = months[index: index + 4]print(month)复制代码

7、分段函数:

输入x,按上述分段函数求解。如果输入超出范围的x则输出“ERROR”。

N = eval(input())if -1 < N <= 0:    print("f(x)=-10")elif 0 < N <= 1:    print("f(x)=5")elif 1 < N <= 2:    print("f(x)=9.6")else:    print("ERROR")复制代码

8、今年多少天: 闰年366天,其他年份365天。普通年(不能被100整除的年份)能被4整除的为闰年。(如2004年就是闰年,1999年不是闰年);世纪年(能被100整除的年份)能被400整除的是闰年。(如2000年是闰年,1900年不是闰年);用户输入一个正整数,代表年份,输出该年有多少天?

N = int(input())if N%100 != 0:    if N%4 == 0:        print(366)    else:        print(365)elif N%100 == 0:    if N%400 == 0:        print(366)    else:        print(365)else:    print(365)复制代码

9、验证码较验: 用户登录网站经常需要输入验证码,验证码包含大小写字母和数字,随机出现。用户输入验证码时不区分大小写,只要各字符出现顺序正确即可通过验证。请写一个程序完成验证码的匹配验证,假设当前显示的验证码是'Qs2X'。如果用户输入验证码正确,输出“验证码正确”,输入错误时输出“验证码错误,请重新输入”。

s = "Qs2X"N = input()if s.lower() == N.lower():    print("验证码正确")else:    print("验证码错误,请重新输入")复制代码

10、奇数数列求和: 求1+3+5+……+(2n-1)前n项和。

N = eval(input())sum = 1for i in range(2,2*N):    if i%2 == 0:        continue    else:        sum += iprint(sum)复制代码

扫描二维码关注微信公众号,了解更多

转载地址:http://bansa.baihongyu.com/

你可能感兴趣的文章
npm
查看>>
【转】VLAN原理详解
查看>>
django和apache交互的wsgi分析
查看>>
python --- json模块和pickle模块详解
查看>>
说说一道实在很多陷阱的题
查看>>
EM算法
查看>>
jzoj p1306 河流
查看>>
关于JSBuilder2的使用.
查看>>
iPhone4S、iPad2即将完美越狱
查看>>
18windows_18_scrollBar滚动条
查看>>
本地推送
查看>>
Beta 冲刺 (7/7)
查看>>
区块链实现简单的电商交易(以太坊)
查看>>
VMware报错:"激活连接失败:No suitable device found for this connection."
查看>>
maven设置
查看>>
个人考场VIM配置
查看>>
adobe
查看>>
微信小程序中的分享事件
查看>>
HDU 6069 Counting Divisors【区间素筛】【经典题】【好题】
查看>>
使用HAXM为QEMU for Windows加速
查看>>