• Python 第二次实验


    【1】 (程序设计)三位水仙花数的计算。“三位水仙花数”是指一个三位整数,其各位数字的3次方和等于该数本身。例如:ABC是一个“3位水仙花数”,则:A的3次方+B的3次方+C的3次方 =ABC。请按照从小到大的顺序输出所有的3位水仙花数,请用一个“逗号+空格”分隔输出结果。

    for i in range(1,10):
        for j in range(0,10):
            for k in range(0,10):
                if i**3+j**3+k**3==i*100+j*10+k:
                    print(i,j,k,sep='',end=', ')
    

    【2】 (程序设计)用户键盘输入一年份, 判断是否为闰年?

    • 如果是闰年, 则输出xxx是闰年;
    • 如果不是闰年, 则输出xxx不是闰年;

    判断闰年的方法:

    1). 能被4整除但不能被100整除;
    2). 能被400整除;

    year=int(input())
    if (year%4==0 and year%100!=0) or year%400==0 :
        print(year,'是闰年',sep='')
    else:
        print(year,'不是闰年',sep='')
    

    【3】 (程序设计)如果一个数恰好等于它的因子之和,这个数就称为“完数”。例如28=1+2+4+7+14则28就是一个完数。编写程序,输出1000以内的所有完数个数。

    def check(x):
        sum=0
        for i in range(1,x):
            if x%i==0:
                sum+=i
        return (sum==x)
    
    n=1000
    ans=0
    for i in range(1,n+1):
        if check(i):
            #print(i)
            ans=ans+1
    print(ans)
    

    【4】 (程序设计)输入两个字符串,判断这两个字符串是否为换位字符串。换位字符串是指组成字符串的字符相同但位置不同,比如字符串”aabbcc"与"abcabc"就是换位字符串,但"aabbcc"与"aabbca"就不是换位字符串。

    s1=input()
    s2=input()
    list1=list(s1)
    list2=list(s2)
    list1.sort()
    list2.sort()
    if list1==list2:
        print('{}与{}是换位字符串'.format(s1,s2))
    else:
        print('{}与{}不是换位字符串'.format(s1,s2))
    

    【5】 (程序设计)输入三角形三条边,判断是否能构成一个三角形,若能,能构成哪种三角形(等边、等腰、直角、普通 )?

    a,b,c=float(input()),float(input()),float(input())
    if a>b :
        a,b=b,a
    if a>c :
        a,c=c,a
    if b>c :
        b,c=c,b
    if a+b<=c :
        print('不能构成',end='')
    else:
        print('能构成',end='')
        if a==b and b==c:
            print('等边',end='')
        elif a==b or b==c:
            print('等腰',end='')
        if a**2+b**2==c**2:
            print('直角',end='')
        elif a!=b and b!=c:
            print('普通',end='')
    print('三角形')
    

    【6】 (程序设计)输入百分制学生成绩,输出对应的五档制制成:
    90-100 A(优秀)
    80-89 B(良好)
    70-79 C(中等)
    60-69 D(及格)
    0-59 E(不及格)
    其它成绩输出“非法百分制成绩”

    n=int(input('请输入百分制学生成绩'))
    if 90<=n<=100 :
        print('A')
    elif 80<=n<=89:
        print('B')
    elif 70<=n<=79:
        print('C')
    elif 60<=n<=69:
        print('D')
    elif 0<=n<=59:
        print('不及格')
    else:
        print('非法百分制成绩')
    

    【7】 (程序设计)输入用“;“间隔的数字串,计算输入数字的和并输出结果。如输入的数字串为:12;23;34;45

    s=input()+';'
    sum=0
    now=0
    for i in s:
        if i==';':
            sum=sum+now
            now=0
        else:
            now=now*10+int(i)
    print(sum)
    
  • 相关阅读:
    进入用友通:提示"由于文件不可访问,内存磁盘空间不足无法打开ufsystem数据库"...
    HDOJ 1069 Monkey and Banana
    HDOJ 1087 Super Jumping! Jumping! Jumping!
    HDOJ 1209 Clock
    CodeForces Round #185 (Div. 2)A,B,C
    HDOJ 1465 不容易系列之一
    HDOJ 1114 PiggyBank
    HDOJ 1280 前m大的数
    HDOJ 1495 非常可乐
    HDOJ 1284 钱币兑换问题
  • 原文地址:https://www.cnblogs.com/alphainf/p/16030766.html
Copyright © 2020-2023  润新知