zoukankan      html  css  js  c++  java
  • day2-作业及答案

    作业:
    第一组:

    1.接收用户输入一个年份,判断是否是闰年(判断闰年的方法是该年能被4整除并且不能被100整除,或者是可以被400整除)

    2.接收用户输入一组整数,输入负数时结束输入,输出这组数字的和:格式--您输入的数字之和是:xxxx

    3.一个5位数,判断它是不是回文数。如,12321是回文数,个位与万位相同,十位与千位相同

    4.接收用户输入的数字,计算该数字的阶乘

    5.给定一个字符串 target = 'hello huice',从中找出第一个不重复的字符,输出它是第几位

    6.去除上一题中的重复字符,得到一个新的字符串

    7. 员工工资表,查询结果集如下:((1, 'zhangsan', 3000), (2, 'lisi', 2500), (3, 'tiantian', 20000))
        (1)计算员工的平均工资      
        (2)输出工资最高的员工姓名


    第二组:

    1.某电信公司的市内通话费计算标准如下:三分钟内0.2元,三分钟后每增加一分钟增加0.1元,不足一分钟的按一分
    钟计算。要求编写程序,给定一个通话时间(单位:秒),计算出应收费金额。

    2.某市的出租车计费标准为:3公里以内10元,3公里以后每0.5公里加收1元;每等待5分钟加收1元;
    超过15公里的加收原价的50%为空驶费。要求编写程序,对于任意给定的里程数(单位:公里)和等待时间(单位:秒)
    计算出应付车费

    3.打印出100-999中所有的"水仙花数",所谓"水仙花数"是指一
      个三位数,其各位数字立方和等于该数本身。例如:
      153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方
     
    4.输出100之内的素数总个数,所谓"素数"是指除了1和它本身以外,不能被任何整数整除的数,例如17
    5.一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如6=1+2+3.编程找出1000以内的所有完数
    6.找1000以内最大平方数
    7.输入n, 计算1到n的阶乘之和


    # 作业:
    # 第一组:
    #
    # 1.接收用户输入一个年份,判断是否是闰年(判断闰年的方法是该年能被4整除并且不能被100整除,或者是可以被400整除)
    # year = input('请输入年份:')
    # year = int(year)
    # if (year % 4 == 0 and year % 100 != 0) or year % 400 == 0:
    #     print('是闰年')
    # else:
    #     print('不是闰年')
    
    # 2.接收用户输入一组整数,输入负数时结束输入,输出这组数字的和:格式--您输入的数字之和是:xxxx
    # sum = 0
    #
    # while True:
    #     a = input('请输入一个整数')
    #     if a.isdigit():
    #         a = int(a)
    #         sum += a
    #     elif a.startswith('-') and a[1:].isdigit():
    #         break
    #     else:
    #         print('不是整数')
    #
    # print(sum)
    
    # 3.一个5位数,判断它是不是回文数。如,12321是回文数,个位与万位相同,十位与千位相同
    
    # while True:
    #     a = input('请输入一个5位数')
    #
    #     if a.isdigit():
    #         if len(a) == 5:
    #             if a[0] == a[-1] and a[1] == a[-2]:
    #                 print('是回文数')
    #             else:
    #                 print('不是回文数')
    #         else:
    #             print('长度不正确')
    #     else:
    #         print('输入错误')
    
    # 4.接收用户输入的数字,计算该数字的阶乘
    
    # while True:
    #     result = 1
    #
    #     n = input('请输入:')
    #     if n.isdigit():
    #         n = int(n)
    #         # if n != 0 and n != 1:
    #         for i in range(1, n+1):
    #             result *= i
    #
    #         print('%d的阶乘是%d' % (n, result))
    #
    #     else:
    #         print('输入错误')
    
    # 5.给定一个字符串 target = 'hello huice',从中找出第一个不重复的字符,输出它是第几位
    # target = 'hello huice'
    # for c in target:
    #     if target.count(c) == 1:
    #         print('第一个不重复字符是%s,它在第%d位' % (c, target.index(c) + 1))
    #         break
    
    # 6.去除上一题中的重复字符,得到一个新的字符串
    # target = 'hello huice'
    # new = ''
    # for c in target:
    #     if target.count(c) == 1:
    #         new += c
    # print(new)
    #
    # 7. 员工工资表,查询结果集如下:((1, 'zhangsan', 3000), (2, 'lisi', 2500), (3, 'tiantian', 20000))
    #     (1)计算员工的平均工资
    #     (2)输出工资最高的员工姓名
    
    # salaries = ((1, 'zhangsan', 3000), (2, 'lisi', 2500), (3, 'tiantian', 20000))
    # sum = 0
    # count = len(salaries)
    # max_salary = salaries[0][-1]
    # max_person = salaries[0][1]
    #
    # for person in salaries:
    #     sum += person[-1]
    #     if person[-1] > max_salary:
    #         max_person = person[1]
    #
    # print('员工平均工资是%.2f' % (sum/count))
    # print('工资最高的人是%s' % max_person)
    
    #
    #
    # 第二组:
    #
    # 1.某电信公司的市内通话费计算标准如下:三分钟内0.2元,三分钟后每增加一分钟增加0.1元,不足一分钟的按一分
    # 钟计算。要求编写程序,给定一个通话时间(单位:秒),计算出应收费金额。
    # while True:
    #     time = input('请输入通话时间:')
    #
    #     time = int(time)
    #     fee = 0
    #
    #     if time/60 <= 3:
    #         fee = 0.2
    #
    #     elif time % 60 != 0:
    #         fee = 0.2 + 0.1 * ((time - 180)/60 + 1)
    #
    #     elif time % 60 == 0:
    #         fee = 0.2 + 0.1 * (time - 180)/60
    #
    #     print('通话时间为%d分%d秒,话费为%.2f元' % (time/60, time % 60, fee))
    
    # 2.某市的出租车计费标准为:3公里以内10元,3公里以后每0.5公里加收1元;每等待5分钟加收1元;
    # 超过15公里的加收原价的50%为空驶费。要求编写程序,对于任意给定的里程数(单位:公里)和等待时间(单位:秒)
    # 计算出应付车费
    
    # while True:
    #     distance = input('distance:')
    #     wait_time = input('wait_time:')
    #
    #     fee = 10.0
    #
    #     distance = float(distance)
    #     wait_time = float(wait_time)
    #
    #     if distance <= 3:
    #         pass
    #     else:
    #         fee += 1 * (distance - 3) // 0.5
    #
    #     if wait_time >= 0:
    #         fee += 1 * (wait_time // 300)
    #
    #     if distance > 15:
    #         fee *= 1.5
    #
    #     print('您的费用为%.2f' % fee)
    
    # 3.打印出100-999中所有的"水仙花数",所谓"水仙花数"是指一
    #   个三位数,其各位数字立方和等于该数本身。例如:
    #   153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方
    # for num in range(100, 1000):
    #     hundreds = num // 100
    #     decades = (num % 100) // 10
    #     unit = num % 10
    #
    #     if hundreds ** 3 + decades ** 3 + unit ** 3 == num:
    #         print(num)
    
    # 4.输出100之内的素数总个数,所谓"素数"是指除了1和它本身以外,不能被任何整数整除的数,例如17
    # counter = 0
    # for n in range(1, 101):
    #
    #     if n == 1:
    #         continue
    #
    #     for i in range(2, n):
    #         if n % i == 0:
    #             break
    #     else:
    #         counter += 1
    # print('一共有%d个素数' % counter)
    
    # 5.一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如6=1+2+3.编程找出1000以内的所有完数
    #找出一个数的所有因子(包括1但不包括它自身,放到一个列表里)
    
    # for num in range(1, 1001):
    #
    #     divisors = []
    #     for i in range(1,num):
    #         if num % i == 0:
    #             divisors.append(i)
    #
    #     sum = 0
    #     for div in divisors:
    #         sum += div
    #
    #     if sum == num:
    #         print(num)
    
    # 6.找1000以内最大平方数
    # result = 1
    #
    # for i in range(1, 1001):
    #     sqr = i ** 2
    #     if sqr <= 1000:
    #         result = sqr
    #     else:
    #         break
    # print('1000以内最大平方数为%d' % result)
    
    # 7.输入n, 计算1到n的阶乘之和
    # n = input('请输入n的值:')
    # n = int(n)
    # sum = 0
    # for i in range(1, n + 1):
    #
    #     fact = 1
    #     for j in range(1, i + 1):
    #         fact *= j
    #
    #     sum += fact
    # print('1到%d的阶乘之和为%d' % (n, sum))



  • 相关阅读:
    Java实现 LeetCode 343 整数拆分(动态规划入门经典)
    Java实现 LeetCode 342 4的幂
    Java实现 LeetCode 342 4的幂
    Java实现 LeetCode 342 4的幂
    Java实现 LeetCode 341 扁平化嵌套列表迭代器
    Java实现 LeetCode 341 扁平化嵌套列表迭代器
    Java实现 LeetCode 341 扁平化嵌套列表迭代器
    Java实现 LeetCode 338 比特位计数
    H264(NAL简介与I帧判断)
    分享一段H264视频和AAC音频的RTP封包代码
  • 原文地址:https://www.cnblogs.com/lp475177107/p/9908196.html
Copyright © 2011-2022 走看看